summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al
diff options
context:
space:
mode:
authorSiep Kroonenberg <siepo@cybercomm.nl>2011-02-17 15:53:26 +0000
committerSiep Kroonenberg <siepo@cybercomm.nl>2011-02-17 15:53:26 +0000
commit2acf4c9396e980e00adbdc02f5a70eefc7122b55 (patch)
treef0dd76ad4357b54e9b97cf618554cefadea99d48 /Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al
parent2de20e5e6fe9f53f36acef44253e9e0b19a4bdb8 (diff)
New tlperl part VI
git-svn-id: svn://tug.org/texlive/trunk@21428 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al')
-rw-r--r--Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al42
1 files changed, 42 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al
new file mode 100644
index 00000000000..7ff924756f8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al
@@ -0,0 +1,42 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 805 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\Cancel.al)"
+# Cancel
+#
+# This procedure is invoked to cancel an extended selection in
+# progress. If there is an extended selection in progress, it
+# restores all of the items between the active one and the anchor
+# to their previous selection state.
+#
+# Arguments:
+# w - The listbox widget.
+sub Cancel
+{
+ my $w = shift;
+ if ($w->cget('-selectmode') ne 'extended' || !defined $Prev)
+ {
+ return;
+ }
+ my $first = $w->index('anchor');
+ my $last = $Prev;
+ if ($first > $last)
+ {
+ ($first, $last) = ($last, $first);
+ }
+ $w->selectionClear($first,$last);
+ while ($first <= $last)
+ {
+ if (Tk::lsearch(\@Selection,$first) >= 0)
+ {
+ $w->selectionSet($first)
+ }
+ $first++
+ }
+ $w->eventGenerate("<<ListboxSelect>>");
+}
+
+# end of Tk::Listbox::Cancel
+1;