ADD: Patch [0000991] "Dragging: different mouse cursors according to the function, which is called"

This commit is contained in:
Alexander Koblov 2015-04-12 09:18:32 +00:00
commit 5f0454eb4a
10 changed files with 424 additions and 186 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

192
src/DragCursors.lrs Normal file
View file

@ -0,0 +1,192 @@
LazarusResources.Add('ArrowCopy','CUR',[
#0#0#2#0#1#0' '#0#0#0#0#0#0#168#8#0#0#22#0#0#0'('#0#0#0' '#0#0#0'@'#0#0#0#1#0
+#8#0#0#0#0#0#0#4#0#0#0#0#0#0#0#0#0#0#0#1#0#0#0#1#0#0#0#0#0#0#255#255#255#0#0
+#183#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#2
+#2#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2
+#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#2
+#2#2#2#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0#0#0#1#1#0#0#2#2#2#2#2#2#2#2#2#2#2#2#2
+#2#2#2#0#0#0#0#0#0#0#0#0#0#0#0#1#1#0#0#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#0#0#0
+#0#0#0#0#0#0#0#0#1#1#1#0#0#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0
+#0#0#1#1#0#0#0#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#0#0#0#0#1#0#0#0#0#0#1#1#1#0#0
+#0#0#0#0#0#0#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#1#1#0#0#0#0#1#1#0#0#0#0#0#0#0#0#0
+#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#1#1#1#0#0#1#1#1#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2
+#0#0#0#0#0#0#0#0#0#1#1#1#1#0#1#1#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#0#0#0#0#0#0
+#0#0#0#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#1#1#1
+#1#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#1
+#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#1#1#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1
+#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#255#255#255#255#255
+#255#255#255#255#192#255#255#255#192#255#255#255#192#255#255#255#192#255#255
+#255#192#255#255#248#0#7#255#136#0#7#255#8#0#7#255#8#0#7'~'#8#0#7'>'#24#0#7
+#28#31#192#255#12'?'#192#255#0'?'#192#255#0#127#192#255#0#1#192#255#0#3#255
+#255#0#7#255#255#0#15#255#255#0#31#255#255#0'?'#255#255#0#127#255#255#0#255
+#255#255#1#255#255#255#3#255#255#255#7#255#255#255#15#255#255#255#31#255#255
+#255'?'#255#255#255#127#255#255#255
]);
LazarusResources.Add('ArrowMove','CUR',[
#0#0#2#0#1#0' '#0#0#0#0#0#0#168#8#0#0#22#0#0#0'('#0#0#0' '#0#0#0'@'#0#0#0#1#0
+#8#0#0#0#0#0#0#4#0#0#0#0#0#0#0#0#0#0#0#1#0#0#0#1#0#0#0#0#0#0#255#255#255#0#0
+#22'r'#0#15#31#244#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#2#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#3#3#3#3#3#3#3#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#2#3#3#3#3#3#3#3#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#2#3#3#3#3#3#3#3#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0#0#1#0#0#0#0#0#2#3#3
+#3#3#3#3#3#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0#0#1#1#0#0#0#0#2#2#2#2#2#2#2#2#2
+#2#2#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0#1#1#1#0#0#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#0#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1
+#1#1#1#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1
+#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#1#1#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255#255
+#255#255#255#255#255#255#255#255#255#143#255#255#254#0#1#255#254#0#1#255'~'#0
+#1#255'>'#0#1#255#28#0#1#255#12#0#1#255#0'?'#255#255#0#127#255#255#0#1#255
+#255#0#3#255#255#0#7#255#255#0#15#255#255#0#31#255#255#0'?'#255#255#0#127#255
+#255#0#255#255#255#1#255#255#255#3#255#255#255#7#255#255#255#15#255#255#255
+#31#255#255#255'?'#255#255#255#127#255#255#255
]);
LazarusResources.Add('ArrowLink','CUR',[
#0#0#2#0#1#0' '#0#0#0#0#0#0#168#8#0#0#22#0#0#0'('#0#0#0' '#0#0#0'@'#0#0#0#1#0
+#8#0#0#0#0#0#0#4#0#0#0#0#0#0#0#0#0#0#0#1#0#0#0#1#0#0#0#0#0#0#255#255#255#0']'
+#18#4#0#156#30#7#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#2#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#2#2#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#3#3#2#0#0#0#0#0#0#0#0#2#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#3#3#2#2#0#0#0#0#0#0#2#2#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#2#3#3#3#2#2#0#0#0#2#3#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#2#3#3#3#3#2#2#2#2#3#3#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#3#3
+#3#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#3#3#3#3#3#3#3
+#3#3#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#2#3#3#3#3#3#3#3#3#2#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#0#2#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#1#1#1#0#0#2#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#1#1#0#0#2#3#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0#0#0#1#0#0#0#0#0#1#1#1#0
+#2#3#3#3#3#3#3#3#3#3#2#0#0#0#0#0#0#0#0#0#0#0#1#1#0#0#0#0#1#1#0#2#2#2#2#2#2#2
+#2#2#2#2#2#0#0#0#0#0#0#0#0#0#0#0#1#1#1#0#0#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#1#1#1#1#0#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1
+#1#1#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1
+#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#1#1#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#1#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#1#1#1#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#1#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#1#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#224#255#255#255
+#195#255#255#255#199#255#255#255#135#251#255#255#131#243#255#255#192#227#255
+#255#192#3#255#255#192#3#255#255#128#3#255#255#0#3#255#255#0#3#255'~'#8#3#255
+'>'#16#3#255#28#0#3#255#12#0#3#255#0#127#255#255#0#127#255#255#0#1#255#255#0
+#3#255#255#0#7#255#255#0#15#255#255#0#31#255#255#0'?'#255#255#0#127#255#255#0
+#255#255#255#1#255#255#255#3#255#255#255#7#255#255#255#15#255#255#255#31#255
+#255#255'?'#255#255#255#127#255#255#255
]);

View file

@ -475,6 +475,7 @@ type
procedure GoToPrevHistory;
procedure GoToNextHistory;
procedure SetDragCursor(Shift: TShiftState); virtual; abstract;
procedure SetFileFilter(NewFilter: String; NewFilterOptions: TQuickSearchOptions);
property CurrentAddress: String read GetCurrentAddress;

View file

@ -152,6 +152,7 @@ type
var DropParams: TDropParams); override;
function Focused: Boolean; override;
procedure SetFocus; override;
procedure SetDragCursor(Shift: TShiftState); override;
published
procedure cm_RenameOnly(const Params: array of string);
@ -580,6 +581,7 @@ var
AtFileList: Boolean;
AFile, APreviousFile: TDisplayFile;
begin
SetDragCursor(Shift);
FileIndex := GetFileIndexFromCursor(X, Y, AtFileList);
if not AtFileList then
Exit;
@ -711,6 +713,7 @@ var
AtFileList: Boolean;
SelStartIndex, SelEndIndex: Integer;
begin
SetDragCursor(Shift);
if FMainControlMouseDown and MainControl.Dragging then
begin
// If dragging has started then clear MouseDown flag.
@ -1032,6 +1035,27 @@ begin
end;
end;
procedure TFileViewWithMainCtrl.SetDragCursor(Shift: TShiftState);
var
DropEffect: TDropEffect;
begin
if (DragManager <> nil) and DragManager.IsDragging then
begin
DropEffect := GetDropEffectByKey(Shift);
if DropEffect = DropMoveEffect then
TControlHandlersHack(MainControl).DragCursor:= crArrowMove
else if DropEffect = DropLinkEffect then
TControlHandlersHack(MainControl).DragCursor:= crArrowLink
else if DropEffect = DropCopyEffect then
TControlHandlersHack(MainControl).DragCursor:= crArrowCopy
else
TControlHandlersHack(MainControl).DragCursor:= crDrag;
end
else
TControlHandlersHack(MainControl).DragCursor:= crDrag;
end;
procedure TFileViewWithMainCtrl.cm_RenameOnly(const Params: array of string);
var
aFile: TFile;

File diff suppressed because it is too large Load diff

View file

@ -41,7 +41,7 @@ interface
uses
Graphics, Forms, Menus, Controls, StdCtrls, ExtCtrls, ActnList,
Buttons, SysUtils, Classes, SynEdit, LCLType, ComCtrls,
Buttons, SysUtils, Classes, SynEdit, LCLType, ComCtrls, LResources,
KASToolBar, KASComboBox, uCmdBox, uFilePanelSelect, uBriefFileView,
uFileView, uColumnsFileView, uFileSource, uFileViewNotebook, uFile,
uOperationsManager, uFileSourceOperation, uDrivesList, uTerminal, DCClassesUtf8,
@ -453,6 +453,7 @@ type
MainTrayIcon: TTrayIcon;
procedure actExecute(Sender: TObject);
procedure FormKeyUp( Sender: TObject; var Key: Word; Shift: TShiftState) ;
function MainToolBarToolItemShortcutsHint(ToolItem: TKASNormalItem): String;
procedure mnuAllOperStartClick(Sender: TObject);
procedure mnuAllOperStopClick(Sender: TObject);
@ -630,6 +631,7 @@ type
procedure ToolbarExecuteProgram(ToolItem: TKASToolItem);
procedure LeftDriveBarExecuteDrive(ToolItem: TKASToolItem);
procedure RightDriveBarExecuteDrive(ToolItem: TKASToolItem);
procedure SetDragCursor(Shift: TShiftState);
public
constructor Create(TheOwner: TComponent); override;
@ -2342,6 +2344,10 @@ begin
FMainSplitterPos := 50.0;
inherited Create(TheOwner);
FCommands := TMainCommands.Create(Self, actionLst);
Screen.Cursors[crArrowCopy] := LoadCursorFromLazarusResource('ArrowCopy');
Screen.Cursors[crArrowMove] := LoadCursorFromLazarusResource('ArrowMove');
Screen.Cursors[crArrowLink] := LoadCursorFromLazarusResource('ArrowLink');
end;
procedure TfrmMain.UpdateActionIcons();
@ -3272,12 +3278,27 @@ begin
end;
end;
procedure TfrmMain.SetDragCursor(Shift: TShiftState);
begin
FrameLeft.SetDragCursor(Shift);
FrameRight.SetDragCursor(Shift);
end;
procedure TfrmMain.FormKeyUp( Sender: TObject; var Key: Word;
Shift: TShiftState) ;
begin
SetDragCursor(Shift);
end;
procedure TfrmMain.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
ShiftEx : TShiftState;
CmdText : UTF8String;
begin
SetDragCursor(Shift);
// Either left or right panel has to be focused.
if not FrameLeft.Focused and
not FrameRight.Focused then
@ -5502,6 +5523,7 @@ end;
{$ENDIF}
initialization
{$I DragCursors.lrs}
TFormCommands.RegisterCommandsForm(TfrmMain, HotkeysCategory, @rsHotkeyCategoryMain);
end.

View file

@ -165,6 +165,7 @@ type
and returns the appropriate drop effect. }
function GetDropEffectByKeyAndMouse(ShiftState: TShiftState;
MouseButton: TMouseButton): TDropEffect;
function GetDropEffectByKey(ShiftState: TShiftState): TDropEffect;
var
{ If set to True, then dragging is being transformed: internal to external or vice-versa. }
@ -379,23 +380,27 @@ begin
{$ENDIF}
end;
function GetDropEffectByKey(ShiftState: TShiftState): TDropEffect;
begin
ShiftState := [ssCtrl, ssShift, ssAlt] * ShiftState;
if ShiftState = [] then
Result := DropCopyEffect // default to Copy when no keys pressed
else if ShiftState = [ssShift] then
Result := DropMoveEffect
else if ShiftState = [ssCtrl] then
Result := DropMoveEffect
else if ShiftState = [ssCtrl, ssShift] then
Result := DropLinkEffect
else
Result := DropNoEffect; // some other key combination pressed
end;
function GetDropEffectByKeyAndMouse(ShiftState: TShiftState;
MouseButton: TMouseButton): TDropEffect;
begin
case MouseButton of
mbLeft:
begin
if ShiftState = [] then
Result := DropCopyEffect // default to Copy when no keys pressed
else if ShiftState = [ssShift] then
Result := DropMoveEffect
else if ShiftState = [ssCtrl] then
Result := DropCopyEffect
else if ShiftState = [ssCtrl, ssShift] then
Result := DropLinkEffect
else
Result := DropNoEffect; // some other key combination pressed
end;
Result := GetDropEffectByKey(ShiftState);
mbMiddle:
Result := DropAskEffect;

View file

@ -401,6 +401,10 @@ var
gUseShellForFileOperations: Boolean;
crArrowCopy: Integer = 1;
crArrowMove: Integer = 2;
crArrowLink: Integer = 3;
{ TotalCommander Import/Export }
{$IFDEF MSWINDOWS}
gTotalCommanderExecutableFilename:string;