// Input: testdnd.exe // Image type: EXE // Native code present: No // 32-bit only: No // Length of IL data: 20992 // VS_VERSION_INFO: // dwStrucVersion : 1.0 // dwFileVersion : 0.0.0.0 // dwProductVersion : 0.0.0.0 // dwFileFlagsMask : 0x0000003F // dwFileFlags : 0x00000000 // dwFileOS : 0x00000004 // dwFileType : 0x00000002 // dwFileSubtype : 0x00000000 // dwFileDate : 0x0000000000000000 // Translation : 0x04B0007F // ProductVersion : " " // CompanyName : " " // ProductName : " " // LegalCopyright : " " // InternalName : "testdnd" // FileDescription : " " // Comments : " " // FileVersion : " " // OriginalFilename : "testdnd.exe" // LegalTrademarks : " " .assembly extern mscorlib { .ver 1:0:5000:0 .publickeytoken = (B7 7A 5C 56 19 34 E0 89) // .z\V.4.. } .assembly extern 'gtk-sharp' { .ver 2:4:0:0 .publickeytoken = (35 E1 01 95 DA B3 C9 9F) // 5....... } .assembly extern 'gdk-sharp' { .ver 2:4:0:0 .publickeytoken = (35 E1 01 95 DA B3 C9 9F) // 5....... } .assembly extern 'glib-sharp' { .ver 2:4:0:0 .publickeytoken = (35 E1 01 95 DA B3 C9 9F) // 5....... } .assembly testdnd { .hash algorithm 0x00008004 .ver 0:0:0:0 } .module testdnd.exe // MVID: {6A2EA39F-523F-4CEF-B11C-6B1566BE7CDE} .custom instance void [mscorlib]System.Security.UnverifiableCodeAttribute::.ctor() = (01 00 00 00) // .... // UnverifiableCode() .class public auto ansi beforefieldinit TestDnd extends [mscorlib]System.Object { .class nested private auto sealed ansi TargetType extends [mscorlib]System.Enum { .field public specialname rtspecialname int32 value__ .field public static literal valuetype TestDnd/TargetType RootWindow = int32(0x00000001) .field public static literal valuetype TestDnd/TargetType String = int32(0x00000000) } .field private static initonly class System.String[] drag_icon_xpm .field private static initonly class System.String[] trashcan_closed_xpm .field private static initonly class System.String[] trashcan_open_xpm .field private static class ['gdk-sharp']Gdk.Pixbuf trashcan_open_pixbuf .field private static class ['gdk-sharp']Gdk.Pixbuf trashcan_closed_pixbuf .field private static bool have_drag .field private static valuetype ['gtk-sharp']Gtk.TargetEntry[] target_table .field private static class ['gtk-sharp']Gtk.Window popup_window .field private static bool popped_up .field private static bool in_popup .field private static unsigned int32 popdown_timer .field private static unsigned int32 popup_timer .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Start of method header: 20ec .maxstack 8 ?L20ed: ldarg.0 call instance void [mscorlib]System.Object::.ctor() ret } .method private static specialname rtspecialname void .cctor() cil managed { // Start of method header: 20f4 .maxstack 11 .locals init (valuetype ['gtk-sharp']Gtk.TargetEntry, valuetype ['gtk-sharp']Gtk.TargetEntry, valuetype ['gtk-sharp']Gtk.TargetEntry) ?L2100: ldc.i4.s 58 newarr class [mscorlib]System.String dup ldc.i4.0 ldstr "36 48 9 1" stelem.ref dup ldc.i4.1 ldstr " \tc None" stelem.ref dup ldc.i4.2 ldstr ".\tc #020204" stelem.ref dup ldc.i4.3 ldstr "+\tc #8F8F90" stelem.ref dup ldc.i4.4 ldstr "@\tc #D3D3D2" stelem.ref dup ldc.i4.5 ldstr "#\tc #AEAEAC" stelem.ref dup ldc.i4.6 ldstr "$\tc #ECECEC" stelem.ref dup ldc.i4.7 ldstr "%\tc #A2A2A4" stelem.ref dup ldc.i4.8 ldstr "&\tc #FEFEFC" stelem.ref dup ldc.i4.s 9 ldstr "*\tc #BEBEBC" stelem.ref dup ldc.i4.s 10 ldstr " ....................." stelem.ref dup ldc.i4.s 11 ldstr " ..&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 12 ldstr " ...&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 13 ldstr " ..&.&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 14 ldstr " ..&&.&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 15 ldstr " ..&&&.&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 16 ldstr " ..&&&&.&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 17 ldstr " ..&&&&&.&&&@&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 18 ldstr " ..&&&&&&.*$%$+$&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 19 ldstr " ..&&&&&&&.%$%$+&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 20 ldstr " ..&&&&&&&&.#&#@$&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 21 ldstr " ..&&&&&&&&&.#$**#$&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 22 ldstr " ..&&&&&&&&&&.&@%&%$&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 23 ldstr " ..&&&&&&&&&&&.&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 24 ldstr " ..&&&&&&&&&&&&.&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 25 ldstr "................&$@&&&@&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 26 ldstr ".&&&&&&&+&&#@%#+@#@*$%$+$&&&&&&&&&&." stelem.ref dup ldc.i4.s 27 ldstr ".&&&&&&&+&&#@#@&&@*%$%$+&&&&&&&&&&&." stelem.ref dup ldc.i4.s 28 ldstr ".&&&&&&&+&$%&#@&#@@#&#@$&&&&&&&&&&&." stelem.ref dup ldc.i4.s 29 ldstr ".&&&&&&@#@@$&*@&@#@#$**#$&&&&&&&&&&." stelem.ref dup ldc.i4.s 30 ldstr ".&&&&&&&&&&&&&&&&&&&@%&%$&&&&&&&&&&." stelem.ref dup ldc.i4.s 31 ldstr ".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 32 ldstr ".&&&&&&&&$#@@$&&&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 33 ldstr ".&&&&&&&&&+&$+&$&@&$@&&$@&&&&&&&&&&." stelem.ref dup ldc.i4.s 34 ldstr ".&&&&&&&&&+&&#@%#+@#@*$%&+$&&&&&&&&." stelem.ref dup ldc.i4.s 35 ldstr ".&&&&&&&&&+&&#@#@&&@*%$%$+&&&&&&&&&." stelem.ref dup ldc.i4.s 36 ldstr ".&&&&&&&&&+&$%&#@&#@@#&#@$&&&&&&&&&." stelem.ref dup ldc.i4.s 37 ldstr ".&&&&&&&&@#@@$&*@&@#@#$#*#$&&&&&&&&." stelem.ref dup ldc.i4.s 38 ldstr ".&&&&&&&&&&&&&&&&&&&&&$%&%$&&&&&&&&." stelem.ref dup ldc.i4.s 39 ldstr ".&&&&&&&&&&$#@@$&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 40 ldstr ".&&&&&&&&&&&+&$%&$$@&$@&&$@&&&&&&&&." stelem.ref dup ldc.i4.s 41 ldstr ".&&&&&&&&&&&+&&#@%#+@#@*$%$+$&&&&&&." stelem.ref dup ldc.i4.s 42 ldstr ".&&&&&&&&&&&+&&#@#@&&@*#$%$+&&&&&&&." stelem.ref dup ldc.i4.s 43 ldstr ".&&&&&&&&&&&+&$+&*@&#@@#&#@$&&&&&&&." stelem.ref dup ldc.i4.s 44 ldstr ".&&&&&&&&&&$%@@&&*@&@#@#$#*#&&&&&&&." stelem.ref dup ldc.i4.s 45 ldstr ".&&&&&&&&&&&&&&&&&&&&&&&$%&%$&&&&&&." stelem.ref dup ldc.i4.s 46 ldstr ".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 47 ldstr ".&&&&&&&&&&&&&&$#@@$&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 48 ldstr ".&&&&&&&&&&&&&&&+&$%&$$@&$@&&$@&&&&." stelem.ref dup ldc.i4.s 49 ldstr ".&&&&&&&&&&&&&&&+&&#@%#+@#@*$%$+$&&." stelem.ref dup ldc.i4.s 50 ldstr ".&&&&&&&&&&&&&&&+&&#@#@&&@*#$%$+&&&." stelem.ref dup ldc.i4.s 51 ldstr ".&&&&&&&&&&&&&&&+&$+&*@&#@@#&#@$&&&." stelem.ref dup ldc.i4.s 52 ldstr ".&&&&&&&&&&&&&&$%@@&&*@&@#@#$#*#&&&." stelem.ref dup ldc.i4.s 53 ldstr ".&&&&&&&&&&&&&&&&&&&&&&&&&&&$%&%$&&." stelem.ref dup ldc.i4.s 54 ldstr ".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 55 ldstr ".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 56 ldstr ".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&." stelem.ref dup ldc.i4.s 57 ldstr "...................................." stelem.ref stsfld class System.String[] TestDnd::drag_icon_xpm ldc.i4.s 98 newarr class [mscorlib]System.String dup ldc.i4.0 ldstr "64 80 17 1" stelem.ref dup ldc.i4.1 ldstr " \tc None" stelem.ref dup ldc.i4.2 ldstr ".\tc #030304" stelem.ref dup ldc.i4.3 ldstr "+\tc #5A5A5C" stelem.ref dup ldc.i4.4 ldstr "@\tc #323231" stelem.ref dup ldc.i4.5 ldstr "#\tc #888888" stelem.ref dup ldc.i4.6 ldstr "$\tc #1E1E1F" stelem.ref dup ldc.i4.7 ldstr "%\tc #767677" stelem.ref dup ldc.i4.8 ldstr "&\tc #494949" stelem.ref dup ldc.i4.s 9 ldstr "*\tc #9E9E9C" stelem.ref dup ldc.i4.s 10 ldstr "=\tc #111111" stelem.ref dup ldc.i4.s 11 ldstr "-\tc #3C3C3D" stelem.ref dup ldc.i4.s 12 ldstr ";\tc #6B6B6B" stelem.ref dup ldc.i4.s 13 ldstr ">\tc #949494" stelem.ref dup ldc.i4.s 14 ldstr ",\tc #282828" stelem.ref dup ldc.i4.s 15 ldstr "'\tc #808080" stelem.ref dup ldc.i4.s 16 ldstr ")\tc #545454" stelem.ref dup ldc.i4.s 17 ldstr "!\tc #AEAEAC" stelem.ref dup ldc.i4.s 18 ldstr " " stelem.ref dup ldc.i4.s 19 ldstr " " stelem.ref dup ldc.i4.s 20 ldstr " " stelem.ref dup ldc.i4.s 21 ldstr " " stelem.ref dup ldc.i4.s 22 ldstr " " stelem.ref dup ldc.i4.s 23 ldstr " " stelem.ref dup ldc.i4.s 24 ldstr " " stelem.ref dup ldc.i4.s 25 ldstr " " stelem.ref dup ldc.i4.s 26 ldstr " " stelem.ref dup ldc.i4.s 27 ldstr " " stelem.ref dup ldc.i4.s 28 ldstr " " stelem.ref dup ldc.i4.s 29 ldstr " " stelem.ref dup ldc.i4.s 30 ldstr " " stelem.ref dup ldc.i4.s 31 ldstr " " stelem.ref dup ldc.i4.s 32 ldstr " " stelem.ref dup ldc.i4.s 33 ldstr " " stelem.ref dup ldc.i4.s 34 ldstr " " stelem.ref dup ldc.i4.s 35 ldstr " " stelem.ref dup ldc.i4.s 36 ldstr " " stelem.ref dup ldc.i4.s 37 ldstr " " stelem.ref dup ldc.i4.s 38 ldstr " " stelem.ref dup ldc.i4.s 39 ldstr " " stelem.ref dup ldc.i4.s 40 ldstr " ==......=$$...=== " stelem.ref dup ldc.i4.s 41 ldstr " ..$------)+++++++++++++@$$... " stelem.ref dup ldc.i4.s 42 ldstr " ..=@@-------&+++++++++++++++++++-.... " stelem.ref dup ldc.i4.s 43 ldstr " =.$$@@@-&&)++++)-,$$$$=@@&+++++++++++++,..$ " stelem.ref dup ldc.i4.s 44 ldstr " .$$$$@@&+++++++&$$$@@@@-&,$,-++++++++++;;;&.. " stelem.ref dup ldc.i4.s 45 ldstr " $$$$,@--&++++++&$$)++++++++-,$&++++++;%%'%%;;$@ " stelem.ref dup ldc.i4.s 46 ldstr " .-@@-@-&++++++++-@++++++++++++,-++++++;''%;;;%*-$ " stelem.ref dup ldc.i4.s 47 ldstr " +------++++++++++++++++++++++++++++++;;%%%;;##*!. " stelem.ref dup ldc.i4.s 48 ldstr " =+----+++++++++++++++++++++++;;;;;;;;;;;;%'>>). " stelem.ref dup ldc.i4.s 49 ldstr " .=)&+++++++++++++++++;;;;;;;;;;;;;;%''>>#>#@. " stelem.ref dup ldc.i4.s 50 ldstr " =..=&++++++++++++;;;;;;;;;;;;;%###>>###+%== " stelem.ref dup ldc.i4.s 51 ldstr " .&....=-+++++%;;####''''''''''##'%%%)..#. " stelem.ref dup ldc.i4.s 52 ldstr " .+-++@....=,+%#####'%%%%%%%%%;@$-@-@*++!. " stelem.ref dup ldc.i4.s 53 ldstr " .+-++-+++-&-@$$=$=......$,,,@;&)+!++!++!. " stelem.ref dup ldc.i4.s 54 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 55 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 56 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 57 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 58 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 59 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 60 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 61 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 62 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 63 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 64 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 65 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 66 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 67 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 68 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 69 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 70 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 71 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 72 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 73 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 74 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 75 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 76 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 77 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 78 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 79 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 80 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 81 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 82 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 83 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 84 ldstr " =+-++-+++-+++++++++!++++!++++!+++!++!+++= " stelem.ref dup ldc.i4.s 85 ldstr " $.++-+++-+++++++++!++++!++++!+++!++!+.$ " stelem.ref dup ldc.i4.s 86 ldstr " =.++++++++++++++!++++!++++!+++!++.= " stelem.ref dup ldc.i4.s 87 ldstr " $..+++++++++++++++!++++++...$ " stelem.ref dup ldc.i4.s 88 ldstr " $$=.............=$$ " stelem.ref dup ldc.i4.s 89 ldstr " " stelem.ref dup ldc.i4.s 90 ldstr " " stelem.ref dup ldc.i4.s 91 ldstr " " stelem.ref dup ldc.i4.s 92 ldstr " " stelem.ref dup ldc.i4.s 93 ldstr " " stelem.ref dup ldc.i4.s 94 ldstr " " stelem.ref dup ldc.i4.s 95 ldstr " " stelem.ref dup ldc.i4.s 96 ldstr " " stelem.ref dup ldc.i4.s 97 ldstr " " stelem.ref stsfld class System.String[] TestDnd::trashcan_closed_xpm ldc.i4.s 98 newarr class [mscorlib]System.String dup ldc.i4.0 ldstr "64 80 17 1" stelem.ref dup ldc.i4.1 ldstr " \tc None" stelem.ref dup ldc.i4.2 ldstr ".\tc #030304" stelem.ref dup ldc.i4.3 ldstr "+\tc #5A5A5C" stelem.ref dup ldc.i4.4 ldstr "@\tc #323231" stelem.ref dup ldc.i4.5 ldstr "#\tc #888888" stelem.ref dup ldc.i4.6 ldstr "$\tc #1E1E1F" stelem.ref dup ldc.i4.7 ldstr "%\tc #767677" stelem.ref dup ldc.i4.8 ldstr "&\tc #494949" stelem.ref dup ldc.i4.s 9 ldstr "*\tc #9E9E9C" stelem.ref dup ldc.i4.s 10 ldstr "=\tc #111111" stelem.ref dup ldc.i4.s 11 ldstr "-\tc #3C3C3D" stelem.ref dup ldc.i4.s 12 ldstr ";\tc #6B6B6B" stelem.ref dup ldc.i4.s 13 ldstr ">\tc #949494" stelem.ref dup ldc.i4.s 14 ldstr ",\tc #282828" stelem.ref dup ldc.i4.s 15 ldstr "'\tc #808080" stelem.ref dup ldc.i4.s 16 ldstr ")\tc #545454" stelem.ref dup ldc.i4.s 17 ldstr "!\tc #AEAEAC" stelem.ref dup ldc.i4.s 18 ldstr " " stelem.ref dup ldc.i4.s 19 ldstr " " stelem.ref dup ldc.i4.s 20 ldstr " " stelem.ref dup ldc.i4.s 21 ldstr " " stelem.ref dup ldc.i4.s 22 ldstr " " stelem.ref dup ldc.i4.s 23 ldstr " " stelem.ref dup ldc.i4.s 24 ldstr " .=.==.,@ " stelem.ref dup ldc.i4.s 25 ldstr " ==.,@-&&&)-= " stelem.ref dup ldc.i4.s 26 ldstr " .$@,&++;;;%>*- " stelem.ref dup ldc.i4.s 27 ldstr " $,-+)+++%%;;'#+. " stelem.ref dup ldc.i4.s 28 ldstr " =---+++++;%%%;%##@. " stelem.ref dup ldc.i4.s 29 ldstr " @)++++++++;%%%%'#%$ " stelem.ref dup ldc.i4.s 30 ldstr " $&++++++++++;%%;%##@= " stelem.ref dup ldc.i4.s 31 ldstr " ,-++++)+++++++;;;'#%) " stelem.ref dup ldc.i4.s 32 ldstr " @+++&&--&)++++;;%'#'-. " stelem.ref dup ldc.i4.s 33 ldstr " ,&++-@@,,,,-)++;;;'>'+, " stelem.ref dup ldc.i4.s 34 ldstr " =-++&@$@&&&&-&+;;;%##%+@ " stelem.ref dup ldc.i4.s 35 ldstr " =,)+)-,@@&+++++;;;;%##%&@ " stelem.ref dup ldc.i4.s 36 ldstr " @--&&,,@&)++++++;;;;'#)@ " stelem.ref dup ldc.i4.s 37 ldstr " ---&)-,@)+++++++;;;%''+, " stelem.ref dup ldc.i4.s 38 ldstr " $--&)+&$-+++++++;;;%%'';- " stelem.ref dup ldc.i4.s 39 ldstr " .,-&+++-$&++++++;;;%''%&= " stelem.ref dup ldc.i4.s 40 ldstr " $,-&)++)-@++++++;;%''%), " stelem.ref dup ldc.i4.s 41 ldstr " =,@&)++++&&+++++;%'''+$@&++++++ " stelem.ref dup ldc.i4.s 42 ldstr " .$@-++++++++++++;'#';,........=$@&++++ " stelem.ref dup ldc.i4.s 43 ldstr " =$@@&)+++++++++++'##-.................=&++ " stelem.ref dup ldc.i4.s 44 ldstr " .$$@-&)+++++++++;%#+$.....................=)+ " stelem.ref dup ldc.i4.s 45 ldstr " $$,@-)+++++++++;%;@=........................,+ " stelem.ref dup ldc.i4.s 46 ldstr " .$$@@-++++++++)-)@=............................ " stelem.ref dup ldc.i4.s 47 ldstr " $,@---)++++&)@===............................,. " stelem.ref dup ldc.i4.s 48 ldstr " $-@---&)))-$$=..............................=)!. " stelem.ref dup ldc.i4.s 49 ldstr " --&-&&,,$=,==...........................=&+++!. " stelem.ref dup ldc.i4.s 50 ldstr " =,=$..=$+)+++++&@$=.............=$@&+++++!++!. " stelem.ref dup ldc.i4.s 51 ldstr " .)-++-+++++++++++++++++++++++++++!++!++!. " stelem.ref dup ldc.i4.s 52 ldstr " .+-++-+++++++++++++++++++++++!+++!++!++!. " stelem.ref dup ldc.i4.s 53 ldstr " .+-++-+++-+++++++++!+++!!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 54 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 55 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 56 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 57 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 58 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 59 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 60 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 61 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 62 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 63 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 64 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 65 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 66 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 67 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 68 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 69 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 70 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 71 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 72 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 73 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 74 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 75 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 76 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 77 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 78 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 79 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 80 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 81 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 82 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 83 ldstr " .+-++-+++-+++++++++!++++!++++!+++!++!++!. " stelem.ref dup ldc.i4.s 84 ldstr " =+-++-+++-+++++++++!++++!++++!+++!++!+++= " stelem.ref dup ldc.i4.s 85 ldstr " $.++-+++-+++++++++!++++!++++!+++!++!+.$ " stelem.ref dup ldc.i4.s 86 ldstr " =.++++++++++++++!++++!++++!+++!++.= " stelem.ref dup ldc.i4.s 87 ldstr " $..+++++++++++++++!++++++...$ " stelem.ref dup ldc.i4.s 88 ldstr " $$==...........==$$ " stelem.ref dup ldc.i4.s 89 ldstr " " stelem.ref dup ldc.i4.s 90 ldstr " " stelem.ref dup ldc.i4.s 91 ldstr " " stelem.ref dup ldc.i4.s 92 ldstr " " stelem.ref dup ldc.i4.s 93 ldstr " " stelem.ref dup ldc.i4.s 94 ldstr " " stelem.ref dup ldc.i4.s 95 ldstr " " stelem.ref dup ldc.i4.s 96 ldstr " " stelem.ref dup ldc.i4.s 97 ldstr " " stelem.ref stsfld class System.String[] TestDnd::trashcan_open_xpm ldc.i4.3 newarr class ['gtk-sharp']Gtk.TargetEntry dup ldc.i4.0 ldelema class ['gtk-sharp']Gtk.TargetEntry ldloca.s 0 ldstr "STRING" ldc.i4.0 ldc.i4.0 call instance void ['gtk-sharp']Gtk.TargetEntry::.ctor(class System.String, valuetype ['gtk-sharp']Gtk.TargetFlags, unsigned int32) ldloc.0 stobj class ['gtk-sharp']Gtk.TargetEntry dup ldc.i4.1 ldelema class ['gtk-sharp']Gtk.TargetEntry ldloca.s 1 ldstr "text/plain" ldc.i4.0 ldc.i4.0 call instance void ['gtk-sharp']Gtk.TargetEntry::.ctor(class System.String, valuetype ['gtk-sharp']Gtk.TargetFlags, unsigned int32) ldloc.1 stobj class ['gtk-sharp']Gtk.TargetEntry dup ldc.i4.2 ldelema class ['gtk-sharp']Gtk.TargetEntry ldloca.s 2 ldstr "application/x-rootwindow-drop" ldc.i4.0 ldc.i4.1 call instance void ['gtk-sharp']Gtk.TargetEntry::.ctor(class System.String, valuetype ['gtk-sharp']Gtk.TargetFlags, unsigned int32) ldloc.2 stobj class ['gtk-sharp']Gtk.TargetEntry stsfld valuetype ['gtk-sharp']Gtk.TargetEntry[] TestDnd::target_table ldnull stsfld class ['gtk-sharp']Gtk.Window TestDnd::popup_window ldc.i4.0 stsfld bool TestDnd::popped_up ldc.i4.0 stsfld bool TestDnd::in_popup ldc.i4.0 stsfld unsigned int32 TestDnd::popdown_timer ldc.i4.0 stsfld unsigned int32 TestDnd::popup_timer ret } .method private static hidebysig void HandleTargetDragLeave(class System.Object sender, class ['gtk-sharp']Gtk.DragLeaveArgs args) cil managed { // Start of method header: 2a74 .maxstack 4 ?L2a80: ldstr "leave" call void [mscorlib]System.Console::WriteLine(class System.String) ldc.i4.0 stsfld bool TestDnd::have_drag ldarg.0 isinst class ['gtk-sharp']Gtk.Image ldsfld class ['gdk-sharp']Gdk.Pixbuf TestDnd::trashcan_closed_pixbuf callvirt instance void ['gtk-sharp']Gtk.Image::set_FromPixbuf(class ['gdk-sharp']Gdk.Pixbuf) ret } .method private static hidebysig void HandleTargetDragMotion(class System.Object sender, class ['gtk-sharp']Gtk.DragMotionArgs args) cil managed { // Start of method header: 2aa4 .maxstack 28 .locals init (class ['gtk-sharp']Gtk.Widget, class ['gdk-sharp']Gdk.Atom[], class ['gdk-sharp']Gdk.Atom, class ['gdk-sharp']Gdk.Atom[], int32, int32) ?L2ab0: ldsfld bool TestDnd::have_drag brtrue ?L2ad0 ldc.i4.1 stsfld bool TestDnd::have_drag ldarg.0 isinst class ['gtk-sharp']Gtk.Image ldsfld class ['gdk-sharp']Gdk.Pixbuf TestDnd::trashcan_open_pixbuf callvirt instance void ['gtk-sharp']Gtk.Image::set_FromPixbuf(class ['gdk-sharp']Gdk.Pixbuf) ?L2ad0: ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragMotionArgs::get_Context() call class ['gtk-sharp']Gtk.Widget ['gtk-sharp']Gtk.Drag::GetSourceWidget(class ['gdk-sharp']Gdk.DragContext) stloc.0 ldstr "motion, source {0}" ldloc.0 ldnull bne.un ?L2af2 ldstr "null" br ?L2af8 ?L2af2: ldloc.0 callvirt instance class System.String [mscorlib]System.Object::ToString() ?L2af8: call void [mscorlib]System.Console::WriteLine(class System.String, class System.Object) ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragMotionArgs::get_Context() callvirt instance class ['gdk-sharp']Gdk.Atom[] ['gdk-sharp']Gdk.DragContext::get_Targets() stloc.1 ldloc.1 stloc.3 ldloc.3 ldlen conv.i4 stloc.s 5 ldc.i4.0 stloc.s 4 br ?L2b2e ?L2b18: ldloc.3 ldloc.s 4 ldelem.ref stloc.2 ldloc.2 callvirt instance class System.String ['gdk-sharp']Gdk.Atom::get_Name() call void [mscorlib]System.Console::WriteLine(class System.String) ldloc.s 4 ldc.i4.1 add stloc.s 4 ?L2b2e: ldloc.s 4 ldloc.s 5 blt ?L2b18 ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragMotionArgs::get_Context() ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragMotionArgs::get_Context() callvirt instance valuetype ['gdk-sharp']Gdk.DragAction ['gdk-sharp']Gdk.DragContext::get_SuggestedAction() ldarg.1 callvirt instance unsigned int32 ['gtk-sharp']Gtk.DragMotionArgs::get_Time() call void ['gdk-sharp']Gdk.Drag::Status(class ['gdk-sharp']Gdk.DragContext, valuetype ['gdk-sharp']Gdk.DragAction, unsigned int32) ldarg.1 ldc.i4.1 box class [mscorlib]System.Boolean callvirt instance void ['glib-sharp']GLib.SignalArgs::set_RetVal(class System.Object) ret } .method private static hidebysig void HandleTargetDragDrop(class System.Object sender, class ['gtk-sharp']Gtk.DragDropArgs args) cil managed { // Start of method header: 2b60 .maxstack 6 ?L2b6c: ldstr "drop" call void [mscorlib]System.Console::WriteLine(class System.String) ldc.i4.0 stsfld bool TestDnd::have_drag ldarg.0 isinst class ['gtk-sharp']Gtk.Image ldsfld class ['gdk-sharp']Gdk.Pixbuf TestDnd::trashcan_closed_pixbuf callvirt instance void ['gtk-sharp']Gtk.Image::set_FromPixbuf(class ['gdk-sharp']Gdk.Pixbuf) ldarg.1 ldc.i4.0 box class [mscorlib]System.Boolean callvirt instance void ['glib-sharp']GLib.SignalArgs::set_RetVal(class System.Object) ret } .method private static hidebysig void HandleTargetDragDataReceived(class System.Object sender, class ['gtk-sharp']Gtk.DragDataReceivedArgs args) cil managed { // Start of method header: 2b9c .maxstack 25 ?L2ba8: ldarg.1 callvirt instance class ['gtk-sharp']Gtk.SelectionData ['gtk-sharp']Gtk.DragDataReceivedArgs::get_SelectionData() callvirt instance int32 ['gtk-sharp']Gtk.SelectionData::get_Length() ldc.i4.0 blt ?L2bed ldarg.1 callvirt instance class ['gtk-sharp']Gtk.SelectionData ['gtk-sharp']Gtk.DragDataReceivedArgs::get_SelectionData() callvirt instance int32 ['gtk-sharp']Gtk.SelectionData::get_Format() ldc.i4.8 bne.un ?L2bed ldstr "Received {0} in trashcan" ldarg.1 callvirt instance class ['gtk-sharp']Gtk.SelectionData ['gtk-sharp']Gtk.DragDataReceivedArgs::get_SelectionData() call void [mscorlib]System.Console::WriteLine(class System.String, class System.Object) ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Context() ldc.i4.1 ldc.i4.0 ldarg.1 callvirt instance unsigned int32 ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Time() call void ['gtk-sharp']Gtk.Drag::Finish(class ['gdk-sharp']Gdk.DragContext, bool, bool, unsigned int32) ?L2bed: ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Context() ldc.i4.0 ldc.i4.0 ldarg.1 callvirt instance unsigned int32 ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Time() call void ['gtk-sharp']Gtk.Drag::Finish(class ['gdk-sharp']Gdk.DragContext, bool, bool, unsigned int32) ret } .method private static hidebysig void HandleLabelDragDataReceived(class System.Object sender, class ['gtk-sharp']Gtk.DragDataReceivedArgs args) cil managed { // Start of method header: 2c04 .maxstack 25 ?L2c10: ldarg.1 callvirt instance class ['gtk-sharp']Gtk.SelectionData ['gtk-sharp']Gtk.DragDataReceivedArgs::get_SelectionData() callvirt instance int32 ['gtk-sharp']Gtk.SelectionData::get_Length() ldc.i4.0 blt ?L2c55 ldarg.1 callvirt instance class ['gtk-sharp']Gtk.SelectionData ['gtk-sharp']Gtk.DragDataReceivedArgs::get_SelectionData() callvirt instance int32 ['gtk-sharp']Gtk.SelectionData::get_Format() ldc.i4.8 bne.un ?L2c55 ldstr "Received {0} in label" ldarg.1 callvirt instance class ['gtk-sharp']Gtk.SelectionData ['gtk-sharp']Gtk.DragDataReceivedArgs::get_SelectionData() call void [mscorlib]System.Console::WriteLine(class System.String, class System.Object) ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Context() ldc.i4.1 ldc.i4.0 ldarg.1 callvirt instance unsigned int32 ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Time() call void ['gtk-sharp']Gtk.Drag::Finish(class ['gdk-sharp']Gdk.DragContext, bool, bool, unsigned int32) ?L2c55: ldarg.1 callvirt instance class ['gdk-sharp']Gdk.DragContext ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Context() ldc.i4.0 ldc.i4.0 ldarg.1 callvirt instance unsigned int32 ['gtk-sharp']Gtk.DragDataReceivedArgs::get_Time() call void ['gtk-sharp']Gtk.Drag::Finish(class ['gdk-sharp']Gdk.DragContext, bool, bool, unsigned int32) ret } .method private static hidebysig void HandleSourceDragDataGet(class System.Object sender, class ['gtk-sharp']Gtk.DragDataGetArgs args) cil managed { // Start of method header: 2c6c .maxstack 8 ?L2c6d: ldarg.1 callvirt instance unsigned int32 ['gtk-sharp']Gtk.DragDataGetArgs::get_Info() ldc.i4.1 bne.un ?L2c88 ldstr "I was dropped on the rootwin" call void [mscorlib]System.Console::WriteLine(class System.String) br ?L2c98 ?L2c88: ldarg.1 callvirt instance class ['gtk-sharp']Gtk.SelectionData ['gtk-sharp']Gtk.DragDataGetArgs::get_SelectionData() ldstr "I'm data!" callvirt instance void ['gtk-sharp']Gtk.SelectionData::set_Text(class System.String) ?L2c98: ret } .method private static hidebysig bool HandlePopdownCallback() cil managed { // Start of method header: 2c9c .maxstack 8 ?L2c9d: ldc.i4.0 stsfld unsigned int32 TestDnd::popdown_timer ldsfld class ['gtk-sharp']Gtk.Window TestDnd::popup_window callvirt instance void ['gtk-sharp']Gtk.Widget::Hide() ldc.i4.0 stsfld bool TestDnd::popped_up ldc.i4.0 ret } .method private static hidebysig void HandlePopupMotion(class System.Object sender, class ['gtk-sharp']Gtk.DragMotionArgs args) cil managed { // Start of method header: 2cb8 .maxstack 5 ?L2cc4: ldsfld bool TestDnd::in_popup brtrue ?L2cf9 ldc.i4.1 stsfld bool TestDnd::in_popup ldsfld unsigned int32 TestDnd::popdown_timer brfalse ?L2cf9 ldstr "removed popdown" call void [mscorlib]System.Console::WriteLine(class System.String) ldsfld unsigned int32 TestDnd::popdown_timer call bool ['glib-sharp']GLib.Source::Remove(unsigned int32) pop ldc.i4.0 stsfld unsigned int32 TestDnd::popdown_timer ?L2cf9: ldarg.1 ldc.i4.1 box class [mscorlib]System.Boolean callvirt instance void ['glib-sharp']GLib.SignalArgs::set_RetVal(class System.Object) ret } .method private static hidebysig void HandlePopupLeave(class System.Object sender, class ['gtk-sharp']Gtk.DragLeaveArgs args) cil managed { // Start of method header: 2d08 .maxstack 6 ?L2d14: ldsfld bool TestDnd::in_popup brfalse ?L2d53 ldc.i4.0 stsfld bool TestDnd::in_popup ldsfld unsigned int32 TestDnd::popdown_timer brtrue ?L2d53 ldstr "added popdown" call void [mscorlib]System.Console::WriteLine(class System.String) ldc.i4 500 ldnull ldftn bool TestDnd::HandlePopdownCallback() newobj instance void ['glib-sharp']GLib.TimeoutHandler::.ctor(class System.Object, native int) call unsigned int32 ['glib-sharp']GLib.Timeout::Add(unsigned int32, class ['glib-sharp']GLib.TimeoutHandler) stsfld unsigned int32 TestDnd::popdown_timer ?L2d53: ret } .method private static hidebysig bool HandlePopupCallback() cil managed { // Start of method header: 2d54 .maxstack 22 .locals init (class ['gtk-sharp']Gtk.Button, class ['gtk-sharp']Gtk.Table, int32, int32, class System.String) ?L2d60: ldsfld bool TestDnd::popped_up brtrue ?L2e3d ldsfld class ['gtk-sharp']Gtk.Window TestDnd::popup_window ldnull bne.un ?L2e2d ldc.i4.1 newobj instance void ['gtk-sharp']Gtk.Window::.ctor(valuetype ['gtk-sharp']Gtk.WindowType) stsfld class ['gtk-sharp']Gtk.Window TestDnd::popup_window ldsfld class ['gtk-sharp']Gtk.Window TestDnd::popup_window ldc.i4.2 callvirt instance void ['gtk-sharp']Gtk.Window::SetPosition(valuetype ['gtk-sharp']Gtk.WindowPosition) ldc.i4.3 ldc.i4.3 ldc.i4.0 newobj instance void ['gtk-sharp']Gtk.Table::.ctor(unsigned int32, unsigned int32, bool) stloc.1 ldc.i4.0 stloc.2 br ?L2e15 ?L2d9b: ldc.i4.0 stloc.3 br ?L2e0a ?L2da2: ldstr "{0},{1}" ldloc.2 box class [mscorlib]System.Int32 ldloc.3 box class [mscorlib]System.Int32 call class System.String [mscorlib]System.String::Format(class System.String, class System.Object, class System.Object) stloc.s 4 ldloc.s 4 call class ['gtk-sharp']Gtk.Button ['gtk-sharp']Gtk.Button::NewWithLabel(class System.String) stloc.0 ldloc.1 ldloc.0 ldloc.2 ldloc.2 ldc.i4.1 add ldloc.3 ldloc.3 ldc.i4.1 add ldc.i4.5 ldc.i4.5 ldc.i4.0 ldc.i4.0 callvirt instance void ['gtk-sharp']Gtk.Table::Attach(class ['gtk-sharp']Gtk.Widget, unsigned int32, unsigned int32, unsigned int32, unsigned int32, valuetype ['gtk-sharp']Gtk.AttachOptions, valuetype ['gtk-sharp']Gtk.AttachOptions, unsigned int32, unsigned int32) ldloc.0 ldc.i4.7 ldsfld valuetype ['gtk-sharp']Gtk.TargetEntry[] TestDnd::target_table ldc.i4.6 call void ['gtk-sharp']Gtk.Drag::DestSet(class ['gtk-sharp']Gtk.Widget, valuetype ['gtk-sharp']Gtk.DestDefaults, valuetype ['gtk-sharp']Gtk.TargetEntry[], valuetype ['gdk-sharp']Gdk.DragAction) ldloc.0 ldnull ldftn void TestDnd::HandlePopupMotion(class System.Object, class ['gtk-sharp']Gtk.DragMotionArgs) newobj instance void ['gtk-sharp']Gtk.DragMotionHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragMotion(class ['gtk-sharp']Gtk.DragMotionHandler) ldloc.0 ldnull ldftn void TestDnd::HandlePopupLeave(class System.Object, class ['gtk-sharp']Gtk.DragLeaveArgs) newobj instance void ['gtk-sharp']Gtk.DragLeaveHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragLeave(class ['gtk-sharp']Gtk.DragLeaveHandler) ldloc.3 ldc.i4.1 add stloc.3 ?L2e0a: ldloc.3 ldc.i4.3 blt ?L2da2 ldloc.2 ldc.i4.1 add stloc.2 ?L2e15: ldloc.2 ldc.i4.3 blt ?L2d9b ldloc.1 callvirt instance void ['gtk-sharp']Gtk.Widget::ShowAll() ldsfld class ['gtk-sharp']Gtk.Window TestDnd::popup_window ldloc.1 callvirt instance void ['gtk-sharp']Gtk.Container::Add(class ['gtk-sharp']Gtk.Widget) ?L2e2d: ldsfld class ['gtk-sharp']Gtk.Window TestDnd::popup_window callvirt instance void ['gtk-sharp']Gtk.Widget::Show() ldc.i4.1 stsfld bool TestDnd::popped_up ?L2e3d: ldc.i4 500 ldnull ldftn bool TestDnd::HandlePopdownCallback() newobj instance void ['glib-sharp']GLib.TimeoutHandler::.ctor(class System.Object, native int) call unsigned int32 ['glib-sharp']GLib.Timeout::Add(unsigned int32, class ['glib-sharp']GLib.TimeoutHandler) stsfld unsigned int32 TestDnd::popdown_timer ldc.i4.0 stsfld unsigned int32 TestDnd::popup_timer ldc.i4.0 ret } .method private static hidebysig void HandlePopsiteMotion(class System.Object sender, class ['gtk-sharp']Gtk.DragMotionArgs args) cil managed { // Start of method header: 2e60 .maxstack 8 ?L2e61: ldsfld unsigned int32 TestDnd::popup_timer brtrue ?L2e86 ldc.i4 500 ldnull ldftn bool TestDnd::HandlePopupCallback() newobj instance void ['glib-sharp']GLib.TimeoutHandler::.ctor(class System.Object, native int) call unsigned int32 ['glib-sharp']GLib.Timeout::Add(unsigned int32, class ['glib-sharp']GLib.TimeoutHandler) stsfld unsigned int32 TestDnd::popup_timer ?L2e86: ldarg.1 ldc.i4.1 box class [mscorlib]System.Boolean callvirt instance void ['glib-sharp']GLib.SignalArgs::set_RetVal(class System.Object) ret } .method private static hidebysig void HandlePopsiteLeave(class System.Object sender, class ['gtk-sharp']Gtk.DragLeaveArgs args) cil managed { // Start of method header: 2e94 .maxstack 8 ?L2e95: ldsfld unsigned int32 TestDnd::popup_timer brfalse ?L2eb0 ldsfld unsigned int32 TestDnd::popup_timer call bool ['glib-sharp']GLib.Source::Remove(unsigned int32) pop ldc.i4.0 stsfld unsigned int32 TestDnd::popup_timer ?L2eb0: ret } .method private static hidebysig void HandleSourceDragDataDelete(class System.Object sender, class ['gtk-sharp']Gtk.DragDataDeleteArgs args) cil managed { // Start of method header: 2eb4 .maxstack 8 ?L2eb5: ldstr "Delete the data!" call void [mscorlib]System.Console::WriteLine(class System.String) ret } .method public static hidebysig void Main(class System.String[] args) cil managed { // Start of method header: 2ec0 .entrypoint .maxstack 40 .locals init (class ['gtk-sharp']Gtk.Window, class ['gtk-sharp']Gtk.Table, class ['gtk-sharp']Gtk.Label, class ['gtk-sharp']Gtk.Image, class ['gtk-sharp']Gtk.Button, class ['gdk-sharp']Gdk.Pixbuf) ?L2ecc: call void ['gtk-sharp']Gtk.Application::Init() ldc.i4.0 newobj instance void ['gtk-sharp']Gtk.Window::.ctor(valuetype ['gtk-sharp']Gtk.WindowType) stloc.0 ldloc.0 ldnull ldftn void TestDnd::OnDelete(class System.Object, class ['gtk-sharp']Gtk.DeleteEventArgs) newobj instance void ['gtk-sharp']Gtk.DeleteEventHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DeleteEvent(class ['gtk-sharp']Gtk.DeleteEventHandler) ldc.i4.2 ldc.i4.2 ldc.i4.0 newobj instance void ['gtk-sharp']Gtk.Table::.ctor(unsigned int32, unsigned int32, bool) stloc.1 ldloc.0 ldloc.1 callvirt instance void ['gtk-sharp']Gtk.Container::Add(class ['gtk-sharp']Gtk.Widget) ldsfld class System.String[] TestDnd::drag_icon_xpm newobj instance void ['gdk-sharp']Gdk.Pixbuf::.ctor(class System.String[]) stloc.s 5 ldsfld class System.String[] TestDnd::trashcan_open_xpm newobj instance void ['gdk-sharp']Gdk.Pixbuf::.ctor(class System.String[]) stsfld class ['gdk-sharp']Gdk.Pixbuf TestDnd::trashcan_open_pixbuf ldsfld class System.String[] TestDnd::trashcan_closed_xpm newobj instance void ['gdk-sharp']Gdk.Pixbuf::.ctor(class System.String[]) stsfld class ['gdk-sharp']Gdk.Pixbuf TestDnd::trashcan_closed_pixbuf ldstr "Drop Here\n" newobj instance void ['gtk-sharp']Gtk.Label::.ctor(class System.String) stloc.2 ldloc.2 ldc.i4.7 ldsfld valuetype ['gtk-sharp']Gtk.TargetEntry[] TestDnd::target_table ldc.i4.6 call void ['gtk-sharp']Gtk.Drag::DestSet(class ['gtk-sharp']Gtk.Widget, valuetype ['gtk-sharp']Gtk.DestDefaults, valuetype ['gtk-sharp']Gtk.TargetEntry[], valuetype ['gdk-sharp']Gdk.DragAction) ldloc.2 ldnull ldftn void TestDnd::HandleLabelDragDataReceived(class System.Object, class ['gtk-sharp']Gtk.DragDataReceivedArgs) newobj instance void ['gtk-sharp']Gtk.DragDataReceivedHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragDataReceived(class ['gtk-sharp']Gtk.DragDataReceivedHandler) ldloc.1 ldloc.2 ldc.i4.0 ldc.i4.1 ldc.i4.0 ldc.i4.1 ldc.i4.5 ldc.i4.5 ldc.i4.0 ldc.i4.0 callvirt instance void ['gtk-sharp']Gtk.Table::Attach(class ['gtk-sharp']Gtk.Widget, unsigned int32, unsigned int32, unsigned int32, unsigned int32, valuetype ['gtk-sharp']Gtk.AttachOptions, valuetype ['gtk-sharp']Gtk.AttachOptions, unsigned int32, unsigned int32) ldstr "Popup\n" newobj instance void ['gtk-sharp']Gtk.Label::.ctor(class System.String) stloc.2 ldloc.2 ldc.i4.7 ldsfld valuetype ['gtk-sharp']Gtk.TargetEntry[] TestDnd::target_table ldc.i4.6 call void ['gtk-sharp']Gtk.Drag::DestSet(class ['gtk-sharp']Gtk.Widget, valuetype ['gtk-sharp']Gtk.DestDefaults, valuetype ['gtk-sharp']Gtk.TargetEntry[], valuetype ['gdk-sharp']Gdk.DragAction) ldloc.1 ldloc.2 ldc.i4.1 ldc.i4.2 ldc.i4.1 ldc.i4.2 ldc.i4.5 ldc.i4.5 ldc.i4.0 ldc.i4.0 callvirt instance void ['gtk-sharp']Gtk.Table::Attach(class ['gtk-sharp']Gtk.Widget, unsigned int32, unsigned int32, unsigned int32, unsigned int32, valuetype ['gtk-sharp']Gtk.AttachOptions, valuetype ['gtk-sharp']Gtk.AttachOptions, unsigned int32, unsigned int32) ldloc.2 ldnull ldftn void TestDnd::HandlePopsiteMotion(class System.Object, class ['gtk-sharp']Gtk.DragMotionArgs) newobj instance void ['gtk-sharp']Gtk.DragMotionHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragMotion(class ['gtk-sharp']Gtk.DragMotionHandler) ldloc.2 ldnull ldftn void TestDnd::HandlePopsiteLeave(class System.Object, class ['gtk-sharp']Gtk.DragLeaveArgs) newobj instance void ['gtk-sharp']Gtk.DragLeaveHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragLeave(class ['gtk-sharp']Gtk.DragLeaveHandler) ldsfld class ['gdk-sharp']Gdk.Pixbuf TestDnd::trashcan_closed_pixbuf newobj instance void ['gtk-sharp']Gtk.Image::.ctor(class ['gdk-sharp']Gdk.Pixbuf) stloc.3 ldloc.3 ldc.i4.0 ldnull ldc.i4.0 call void ['gtk-sharp']Gtk.Drag::DestSet(class ['gtk-sharp']Gtk.Widget, valuetype ['gtk-sharp']Gtk.DestDefaults, valuetype ['gtk-sharp']Gtk.TargetEntry[], valuetype ['gdk-sharp']Gdk.DragAction) ldloc.1 ldloc.3 ldc.i4.1 ldc.i4.2 ldc.i4.0 ldc.i4.1 ldc.i4.5 ldc.i4.5 ldc.i4.0 ldc.i4.0 callvirt instance void ['gtk-sharp']Gtk.Table::Attach(class ['gtk-sharp']Gtk.Widget, unsigned int32, unsigned int32, unsigned int32, unsigned int32, valuetype ['gtk-sharp']Gtk.AttachOptions, valuetype ['gtk-sharp']Gtk.AttachOptions, unsigned int32, unsigned int32) ldloc.3 ldnull ldftn void TestDnd::HandleTargetDragLeave(class System.Object, class ['gtk-sharp']Gtk.DragLeaveArgs) newobj instance void ['gtk-sharp']Gtk.DragLeaveHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragLeave(class ['gtk-sharp']Gtk.DragLeaveHandler) ldloc.3 ldnull ldftn void TestDnd::HandleTargetDragMotion(class System.Object, class ['gtk-sharp']Gtk.DragMotionArgs) newobj instance void ['gtk-sharp']Gtk.DragMotionHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragMotion(class ['gtk-sharp']Gtk.DragMotionHandler) ldloc.3 ldnull ldftn void TestDnd::HandleTargetDragDrop(class System.Object, class ['gtk-sharp']Gtk.DragDropArgs) newobj instance void ['gtk-sharp']Gtk.DragDropHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragDrop(class ['gtk-sharp']Gtk.DragDropHandler) ldloc.3 ldnull ldftn void TestDnd::HandleTargetDragDataReceived(class System.Object, class ['gtk-sharp']Gtk.DragDataReceivedArgs) newobj instance void ['gtk-sharp']Gtk.DragDataReceivedHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragDataReceived(class ['gtk-sharp']Gtk.DragDataReceivedHandler) ldstr "Drag Here\n" newobj instance void ['gtk-sharp']Gtk.Button::.ctor(class System.String) stloc.s 4 ldloc.s 4 ldc.i4 1280 ldsfld valuetype ['gtk-sharp']Gtk.TargetEntry[] TestDnd::target_table ldc.i4.6 call void ['gtk-sharp']Gtk.Drag::SourceSet(class ['gtk-sharp']Gtk.Widget, valuetype ['gdk-sharp']Gdk.ModifierType, valuetype ['gtk-sharp']Gtk.TargetEntry[], valuetype ['gdk-sharp']Gdk.DragAction) ldloc.1 ldloc.s 4 ldc.i4.0 ldc.i4.1 ldc.i4.1 ldc.i4.2 ldc.i4.5 ldc.i4.5 ldc.i4.0 ldc.i4.0 callvirt instance void ['gtk-sharp']Gtk.Table::Attach(class ['gtk-sharp']Gtk.Widget, unsigned int32, unsigned int32, unsigned int32, unsigned int32, valuetype ['gtk-sharp']Gtk.AttachOptions, valuetype ['gtk-sharp']Gtk.AttachOptions, unsigned int32, unsigned int32) ldloc.s 4 ldnull ldftn void TestDnd::HandleSourceDragDataGet(class System.Object, class ['gtk-sharp']Gtk.DragDataGetArgs) newobj instance void ['gtk-sharp']Gtk.DragDataGetHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragDataGet(class ['gtk-sharp']Gtk.DragDataGetHandler) ldloc.s 4 ldnull ldftn void TestDnd::HandleSourceDragDataDelete(class System.Object, class ['gtk-sharp']Gtk.DragDataDeleteArgs) newobj instance void ['gtk-sharp']Gtk.DragDataDeleteHandler::.ctor(class System.Object, native int) callvirt instance void ['gtk-sharp']Gtk.Widget::add_DragDataDelete(class ['gtk-sharp']Gtk.DragDataDeleteHandler) ldloc.0 callvirt instance void ['gtk-sharp']Gtk.Widget::ShowAll() call void ['gtk-sharp']Gtk.Application::Run() ret } .method private static hidebysig void OnDelete(class System.Object o, class ['gtk-sharp']Gtk.DeleteEventArgs e) cil managed { // Start of method header: 3074 .maxstack 8 ?L3075: call void ['gtk-sharp']Gtk.Application::Quit() ret } }