Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] BUG in INFORM

From: g::santilli::tiscalinet::it at: 10-Oct-2002 16:48

This is probably a known issue, I hope resubmitting is not a problem. BUG: INFORM does not set the default window feel EXAMPLE: If you wonder why your requestors don't respond to keystrokes, this is the reason. REQUEST assigns the #"Y" key to the "yes" button, #"N" to the "no" button and ESC (#"^(1B)") to the "cancel" button; however, these keys don't work (except for ESC that works because it is handled separately in SYSTEM/VIEW/WAKE-EVENT).
>> system/product
== View
>> system/version
== 1.2.8.3.1
>> request "Hello there."
(try pressing Y or N) REASON: Keys are handled in SYSTEM/VIEW/WINDOW-FEEL; the VIEW function sets the feel of the window to that, but INFORM doesn't. FIX: inform: func [ {Display an exclusive focus panel for alerts, dialogs, and requestors.} panel [object!] /offset where [pair!] "Offset of panel" /title ttl [string!] "Dialog window title" /timeout time ][ panel/text: copy any [ttl "Dialog"] panel/offset: either offset [where] [system/view/screen-face/size - panel/size / 2] panel/feel: system/view/window-feel ; <<----- show-popup panel either time [wait time] [do-events] ] Also, I'd suggest to change the keys in REQUEST to be #"y" and #"n" instead of #"Y" and #"N" that require pressing shift. The RETURN key would be a nice synonym for #"y" (at least in the case of REQUEST/OK).