Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix [2947842fff]: Clarify tk busy manpage (by Jos Decoster) |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | bug-2947842fff |
Files: | files | file ages | folders |
SHA3-256: |
ed31b70d263b7e14caaf6cbccc624d29 |
User & Date: | fvogel 2017-12-13 20:51:52 |
Original Comment: | Fix [2947842fff]: Clarify tk busy manpage |
References
2017-12-13
| ||
20:56 | • Ticket [2947842f] Clarify tk busy manpage status still Open with 4 other changes artifact: 9b960256 user: fvogel | |
Context
2017-12-18
| ||
21:52 | Fix [2947842fff]: Clarify tk busy manpage (by Jos Decoster) check-in: f4bbe1f0 user: fvogel tags: core-8-6-branch | |
2017-12-13
| ||
20:51 | Fix [2947842fff]: Clarify tk busy manpage (by Jos Decoster) Closed-Leaf check-in: ed31b70d user: fvogel tags: bug-2947842fff | |
10:37 | Use nmakehlp -L to locate directories check-in: 92474760 user: apnadkarni tags: core-8-6-branch | |
Changes
Changes to doc/busy.n.
︙ | ︙ | |||
24 25 26 27 28 29 30 | '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" .TH busy n "" Tk "Tk Built-In Commands" .so man.macros .BS '\" Note: do not modify the .SH NAME line immediately below! .SH NAME | | | | > | | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" .TH busy n "" Tk "Tk Built-In Commands" .so man.macros .BS '\" Note: do not modify the .SH NAME line immediately below! .SH NAME busy \- confine pointer events to a window sub-tree .SH SYNOPSIS \fBtk busy\fR \fIwindow \fR?\fIoptions\fR? .sp \fBtk busy hold\fR \fIwindow \fR?\fIoptions\fR? .sp \fBtk busy configure \fIwindow\fR ?\fIoption value\fR?... .sp \fBtk busy forget\fR \fIwindow \fR?\fIwindow \fR?... .sp \fBtk busy current\fR ?\fIpattern\fR? .sp \fBtk busy status \fIwindow\fR .BE .SH DESCRIPTION .PP The \fBtk busy\fR command provides a simple means to block pointer events from Tk widgets, while overriding the widget's cursor with a configurable busy cursor. Note this command does not prevent keyboard events from being sent to the widgets made busy. .SH INTRODUCTION .PP There are many times in applications where you want to temporarily restrict what actions the user can take. For example, an application could have a .QW Run button that when pressed causes some processing to occur. However, while the application is busy processing, you probably don't want the user to be |
︙ | ︙ | |||
64 65 66 67 68 69 70 | The \fBtk busy\fR command lets you make Tk widgets busy. This means that user interactions such as button clicks, moving the mouse, typing at the keyboard, etc.\0are ignored by the widget. You can set a special cursor (like a watch) that overrides the widget's normal cursor, providing feedback that the application (widget) is temporarily busy. .PP When a widget is made busy, the widget and all of its descendants will ignore | | | | 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | The \fBtk busy\fR command lets you make Tk widgets busy. This means that user interactions such as button clicks, moving the mouse, typing at the keyboard, etc.\0are ignored by the widget. You can set a special cursor (like a watch) that overrides the widget's normal cursor, providing feedback that the application (widget) is temporarily busy. .PP When a widget is made busy, the widget and all of its descendants will ignore pointer events. It's easy to make an entire panel of widgets busy. You can simply make the toplevel widget (such as .QW . ) busy. This is easier and far much more efficient than recursively traversing the widget hierarchy, disabling each widget and re-configuring its cursor. .PP Often, the \fBtk busy\fR command can be used instead of Tk's \fBgrab\fR command. Unlike \fBgrab\fR which restricts all user interactions to one widget, with the \fBtk busy\fR command you can have more than one widget |
︙ | ︙ | |||
236 237 238 239 240 241 242 | .PP Mapping and unmapping busy windows generates Enter/Leave events for all widgets they cover. Please note this if you are tracking Enter/Leave events in widgets. .SS "KEYBOARD EVENTS" .PP When a widget is made busy, the widget is prevented from gaining the keyboard | | > | | > > > | | > > | > | 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 | .PP Mapping and unmapping busy windows generates Enter/Leave events for all widgets they cover. Please note this if you are tracking Enter/Leave events in widgets. .SS "KEYBOARD EVENTS" .PP When a widget is made busy, the widget is prevented from gaining the keyboard focus by a user clicking on it by the busy window. But if the widget already had focus, it still may receive keyboard events. The widget can also still receive focus through keyboard traversal. To prevent this, you must move focus to another window and make sure the focus can not go back to the widgets made busy (e.g. but restricting focus to a cancel button). .PP .CS pack [frame .frame] pack [text .frame.text] \fBtk busy\fR hold .frame pack [button .cancel -text "Cancel" -command exit] focus .cancel bind .cancel <Tab> {break} bind .cancel <Shift-Tab> {break} update .CE .PP The above example moves the focus from .frame immediately after invoking the \fBhold\fR so that no keyboard events will be sent to \fB.frame\fR or any of its descendants. It also makes sure it's not possible to leave button \fB.cancel\fR using the keyboard. .SH PORTABILITY .PP Note that the \fBtk busy\fR command does not currently have any effect on OSX when Tk is built using Aqua support. .SH "SEE ALSO" grab(n) .SH KEYWORDS busy, keyboard events, pointer events, window '\" Local Variables: '\" mode: nroff '\" End: |