Trying to put the finishing touched on a cross-platform app written
using j602 JWD.
Mostly developed on the Mac, which means that some unexpected behavior
under Win2000 has gone unnoticed until now.

   JVERSION
Installer: j602a_win.exe
Engine: j602/2008-03-03/16:45
Library: 6.02.056

Windows 2000
Version 5.0 (Build 2195: Service Pack 4)

If my "wd" form definition contains the lines:

menupop "File";
menu newtt "&New" "Ctrl+N" "Start a new ttable" "new";
menu opens "Open Sample" "Ctrl+Shift+O" "Open a sample ttable" "sample";
...

then I'd expect keying Ctrl+N would post sysevent: tab_newtt_button,
and Ctrl+Shift+O would post sysevent: tab_opens_button . This is what
happens on the Mac (keying ⌘ for Ctrl, which is a long-standing Mac
convention for cross-platform products).

However, under Win2000, Ctrl+N posts sysevent: tab_nctrl_fkey, and
Ctrl+Shift+O posts sysevent: tab_octrlshift_fkey. All other hotkeys
post sysevents named in the same vein. (Except for Ctrl+Z, Alt+G,
Alt+H -- which seem to follow rules of their own.)

These extra handlers are not difficult to provide, eg like this:
   tab_nctrl_fkey=: tab_newtt_button
   etc...
whereupon the hotkeys works fine (apart of course from Ctrl+Z, Alt+G, Alt+H).

I'd like to know: is this a bug or a feature? Where is it documented?
Has it been there from the start, or is it a recent change to
'~system/extras/util'? Can it be relied upon with all post-2000
Windows versions? What happens under Linux?

Although I mostly use the Mac, I have written J apps to run under Win
XP and I've never noticed this behavior before. Of course I may never
actually have tried a hotkey.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to