From 064b39544a3a47938062584c49ae51439b08dc80 Mon Sep 17 00:00:00 2001 From: das Date: Tue, 17 Feb 2004 07:17:17 +0000 Subject: * macosx/tkMacOSXMouseEvent.c: fixed modifiers for MouseWheel events. * library/listbox.tcl: * library/text.tcl: * library/scrlbar.tcl: on Mac OS, add bindings for MouseWheel with modifiers, according to platform convention: Option increases scrolling speed 10 fold; Space scrolls horizontally. * macosx/Wish.pbproj/project.pbxproj: * macosx/tkAboutDlg.r: changed year in copyright strings to 2004. --- ChangeLog | 13 +++++++++++++ library/listbox.tcl | 11 ++++++++++- library/scrlbar.tcl | 17 ++++++++++++++++- library/text.tcl | 11 ++++++++++- macosx/Wish.pbproj/project.pbxproj | 2 +- macosx/tkAboutDlg.r | 4 ++-- macosx/tkMacOSXMouseEvent.c | 1 + 7 files changed, 53 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index b8ffd76..fc96a7a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2004-02-17 Daniel Steffen + + * macosx/tkMacOSXMouseEvent.c: fixed modifiers for MouseWheel events. + + * library/listbox.tcl: + * library/text.tcl: + * library/scrlbar.tcl: on Mac OS, add bindings for MouseWheel with + modifiers, according to platform convention: + Option increases scrolling speed 10 fold; Space scrolls horizontally. + + * macosx/Wish.pbproj/project.pbxproj: + * macosx/tkAboutDlg.r: changed year in copyright strings to 2004. + 2004-02-16 Jim Ingham Fix for MouseWheel Events (from Daniel Steffen): diff --git a/library/listbox.tcl b/library/listbox.tcl index dcc3cde..b2abe11 100644 --- a/library/listbox.tcl +++ b/library/listbox.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk listbox widgets # and provides procedures that help in implementing those bindings. # -# RCS: @(#) $Id: listbox.tcl,v 1.13.2.1 2004/02/16 23:09:25 wolfsuit Exp $ +# RCS: @(#) $Id: listbox.tcl,v 1.13.2.2 2004/02/17 07:17:17 das Exp $ # # Copyright (c) 1994 The Regents of the University of California. # Copyright (c) 1994-1995 Sun Microsystems, Inc. @@ -184,6 +184,15 @@ if {[string equal [tk windowingsystem] "classic"] bind Listbox { %W yview scroll [expr {- (%D)}] units } + bind Listbox { + %W yview scroll [expr {-10 * (%D)}] units + } + bind Listbox { + %W xview scroll [expr {- (%D)}] units + } + bind Listbox { + %W xview scroll [expr {-10 * (%D)}] units + } } else { bind Listbox { %W yview scroll [expr {- (%D / 120) * 4}] units diff --git a/library/scrlbar.tcl b/library/scrlbar.tcl index b31686d..49cd1b6 100644 --- a/library/scrlbar.tcl +++ b/library/scrlbar.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk scrollbar widgets. # It also provides procedures that help in implementing the bindings. # -# RCS: @(#) $Id: scrlbar.tcl,v 1.10 2002/08/31 06:12:28 das Exp $ +# RCS: @(#) $Id: scrlbar.tcl,v 1.10.2.1 2004/02/17 07:17:17 das Exp $ # # Copyright (c) 1994 The Regents of the University of California. # Copyright (c) 1994-1996 Sun Microsystems, Inc. @@ -130,6 +130,21 @@ bind Scrollbar { tk::ScrollToPos %W 1 } } +if {[string equal [tk windowingsystem] "classic"] + || [string equal [tk windowingsystem] "aqua"]} { + bind Scrollbar { + tk::ScrollByUnits %W v [expr {- (%D)}] + } + bind Scrollbar { + tk::ScrollByUnits %W v [expr {-10 * (%D)}] + } + bind Scrollbar { + tk::ScrollByUnits %W h [expr {- (%D)}] + } + bind Scrollbar { + tk::ScrollByUnits %W h [expr {-10 * (%D)}] + } +} # tk::ScrollButtonDown -- # This procedure is invoked when a button is pressed in a scrollbar. # It changes the way the scrollbar is displayed and takes actions diff --git a/library/text.tcl b/library/text.tcl index 85d83f1..8509892 100644 --- a/library/text.tcl +++ b/library/text.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk text widgets and provides # procedures that help in implementing the bindings. # -# RCS: @(#) $Id: text.tcl,v 1.24.2.1 2004/02/16 23:09:25 wolfsuit Exp $ +# RCS: @(#) $Id: text.tcl,v 1.24.2.2 2004/02/17 07:17:17 das Exp $ # # Copyright (c) 1992-1994 The Regents of the University of California. # Copyright (c) 1994-1997 Sun Microsystems, Inc. @@ -463,6 +463,15 @@ if {[string equal [tk windowingsystem] "classic"] bind Text { %W yview scroll [expr {- (%D)}] units } + bind Text { + %W yview scroll [expr {-10 * (%D)}] units + } + bind Text { + %W xview scroll [expr {- (%D)}] units + } + bind Text { + %W xview scroll [expr {-10 * (%D)}] units + } } else { bind Text { %W yview scroll [expr {- (%D / 120) * 4}] units diff --git a/macosx/Wish.pbproj/project.pbxproj b/macosx/Wish.pbproj/project.pbxproj index 0a64e04..0d7992c 100644 --- a/macosx/Wish.pbproj/project.pbxproj +++ b/macosx/Wish.pbproj/project.pbxproj @@ -1552,7 +1552,7 @@ CFBundleExecutable Tk CFBundleGetInfoString - Tk Library 8.4, Copyright © 2003 Tcl Core Team. + Tk Library 8.4, Copyright © 2004 Tcl Core Team. MacOS X Port by Jim Ingham <jingham@apple.com> & Ian Reid, Copyright © 2001-2002, Apple Computer, Inc. CFBundleIconFile diff --git a/macosx/tkAboutDlg.r b/macosx/tkAboutDlg.r index aebdac7..29860ec 100644 --- a/macosx/tkAboutDlg.r +++ b/macosx/tkAboutDlg.r @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkAboutDlg.r,v 1.3.2.1 2003/05/13 02:42:57 das Exp $ + * RCS: @(#) $Id: tkAboutDlg.r,v 1.3.2.2 2004/02/17 07:17:18 das Exp $ */ /* @@ -48,7 +48,7 @@ resource 'DITL' (128, "About Box", purgeable) { {200, 147, 220, 217}, Button {enabled, "Ok"}, { 20, 108, 180, 344}, StaticText {disabled, "Tcl " TCL_PATCH_LEVEL " & Tk " TK_PATCH_LEVEL "\n\n" - "© 2003 Tcl Core Team." "\n\n" + "© 2004 Tcl Core Team." "\n\n" "Jim Ingham & Ian Reid" "\n" "© 2001-2002 Apple Computer, Inc." "\n\n" "Jim Ingham & Ray Johnson" "\n" diff --git a/macosx/tkMacOSXMouseEvent.c b/macosx/tkMacOSXMouseEvent.c index 150519c..cab8a93 100644 --- a/macosx/tkMacOSXMouseEvent.c +++ b/macosx/tkMacOSXMouseEvent.c @@ -608,6 +608,7 @@ GenerateMouseWheelEvent(MouseEventData * medPtr) winPtr = ( TkWindow *)tkwin; xEvent.type = MouseWheelEvent; xEvent.xkey.keycode = medPtr->delta; + xEvent.xbutton.state = TkMacOSXButtonKeyState(); xEvent.xany.serial = LastKnownRequestProcessed(winPtr->display); xEvent.xany.send_event = false; xEvent.xany.display = winPtr->display; -- cgit v0.12