1wxEvtHandler(3) Erlang Module Definition wxEvtHandler(3)
2
3
4
6 wxEvtHandler - The Event handler.
7
9 The Event handler.
10
11 To get events from wxwidgets objects you subscribe to them by calling
12 connect/[2-3]. Events are sent as messages, if no callback was supplied
13 These messages will be #wx{} where EventRecord is a record that depends
14 on the event type. The records are defined in: wx/include/wx.hrl.
15
16 If a callback was supplied to connect, the callback will be invoked (in
17 another process) to handle the event. The callback should be of arity
18 2. fun(EventRecord::wx(), EventObject::wxObject()).
19
20 Beware that the callback will be in executed in new process each time.
21
22 The orginal documentation.
23
25 event() = wxActivate() | wxAuiManager() | wxAuiNotebook() | wxCalen‐
26 dar() | wxChildFocus() | wxClipboardText() | wxClose() |
27 wxColourPicker() | wxCommand() | wxContextMenu() | wxDate() | wxDis‐
28 playChanged() | wxDropFiles() | wxErase() | wxFileDirPicker() | wxFo‐
29 cus() | wxFontPicker() | wxGrid() | wxHelp() | wxHtmlLink() | wxI‐
30 conize() | wxIdle() | wxInitDialog() | wxJoystick() | wxKey() |
31 wxList() | wxMaximize() | wxMenu() | wxMouse() | wxMouseCap‐
32 tureChanged() | wxMouseCaptureLost() | wxMove() | wxNavigationKey() |
33 wxNotebook() | wxPaint() | wxPaletteChanged() | wxQueryNewPalette() |
34 wxSash() | wxScroll() | wxScrollWin() | wxSetCursor() | wxShow() |
35 wxSize() | wxSpin() | wxSplitter() | wxStyledText() | wxSysColour‐
36 Changed() | wxTaskBarIcon() | wxTree() | wxUpdateUI() | wxWindowCre‐
37 ate() | wxWindowDestroy():
38
39
40 wx() = #wx{id=integer(), obj=wx:wx_object(), userData=term(),
41 event=event()}:
42
43
44 wxActivate() = #wxActivate{type=wxActivateEventType(), active=bool‐
45 ean()}:
46
47
48 wxActivateEventType() = activate | activate_app | hibernate:
49
50
51 wxAuiManager() = #wxAuiManager{type=wxAuiManagerEventType(), man‐
52 ager=wxAuiManager:wxAuiManager(), pane=wxAuiPaneInfo:wxAuiPaneInfo(),
53 button=integer(), veto_flag=boolean(), canveto_flag=boolean(),
54 dc=wxDC:wxDC()}:
55
56
57 wxAuiManagerEventType() = aui_pane_button | aui_pane_close |
58 aui_pane_maximize | aui_pane_restore | aui_pane_activated | aui_ren‐
59 der | aui_find_manager:
60
61
62 wxAuiNotebook() = #wxAuiNotebook{type=wxAuiNotebookEventType(),
63 old_selection=integer(), selection=integer(), drag_source=wxAuiNote‐
64 book:wxAuiNotebook()}:
65
66
67 wxAuiNotebookEventType() = command_auinotebook_page_close | com‐
68 mand_auinotebook_page_changed | command_auinotebook_page_changing |
69 command_auinotebook_button | command_auinotebook_begin_drag | com‐
70 mand_auinotebook_end_drag | command_auinotebook_drag_motion | com‐
71 mand_auinotebook_allow_dnd | command_auinotebook_tab_middle_down |
72 command_auinotebook_tab_middle_up | command_auinote‐
73 book_tab_right_down | command_auinotebook_tab_right_up | com‐
74 mand_auinotebook_page_closed | command_auinotebook_drag_done | com‐
75 mand_auinotebook_bg_dclick:
76
77
78 wxCalendar() = #wxCalendar{type=wxCalendarEventType(),
79 wday=wx:wx_enum(), date=wx:wx_datetime()}:
80
81
82 wxCalendarEventType() = calendar_sel_changed | calendar_day_changed |
83 calendar_month_changed | calendar_year_changed | calendar_dou‐
84 bleclicked | calendar_weekday_clicked:
85
86
87 wxChildFocus() = #wxChildFocus{type=wxChildFocusEventType()}:
88
89
90 wxChildFocusEventType() = child_focus:
91
92
93 wxClipboardText() = #wxClipboardText{type=wxClipboardTextEvent‐
94 Type()}:
95
96
97 wxClipboardTextEventType() = command_text_copy | command_text_cut |
98 command_text_paste:
99
100
101 wxClose() = #wxClose{type=wxCloseEventType()}:
102
103
104 wxCloseEventType() = close_window | end_session | query_end_session:
105
106
107 wxColourPicker() = #wxColourPicker{type=wxColourPickerEventType(),
108 colour=wx:wx_colour()}:
109
110
111 wxColourPickerEventType() = command_colourpicker_changed:
112
113
114 wxCommand() = #wxCommand{type=wxCommandEventType(), cmdString=uni‐
115 code:chardata(), commandInt=integer(), extraLong=integer()}:
116
117
118 wxCommandEventType() = command_button_clicked | command_check‐
119 box_clicked | command_choice_selected | command_listbox_selected |
120 command_listbox_doubleclicked | command_text_updated | com‐
121 mand_text_enter | command_menu_selected | command_slider_updated |
122 command_radiobox_selected | command_radiobutton_selected | com‐
123 mand_scrollbar_updated | command_vlbox_selected | command_com‐
124 bobox_selected | command_tool_rclicked | command_tool_enter | com‐
125 mand_checklistbox_toggled | command_togglebutton_clicked | com‐
126 mand_left_click | command_left_dclick | command_right_click | com‐
127 mand_set_focus | command_kill_focus | command_enter:
128
129
130 wxContextMenu() = #wxContextMenu{type=wxContextMenuEventType(),
131 pos={X::integer(), Y::integer()}}:
132
133
134 wxContextMenuEventType() = context_menu:
135
136
137 wxDate() = #wxDate{type=wxDateEventType(), date=wx:wx_datetime()}:
138
139
140 wxDateEventType() = date_changed:
141
142
143 wxDisplayChanged() = #wxDisplayChanged{type=wxDisplayChangedEvent‐
144 Type()}:
145
146
147 wxDisplayChangedEventType() = display_changed:
148
149
150 wxDropFiles() = #wxDropFiles{type=wxDropFilesEventType(),
151 noFiles=integer(), pos={X::integer(), Y::integer()}, files=[uni‐
152 code:chardata()]}:
153
154
155 wxDropFilesEventType() = drop_files:
156
157
158 wxErase() = #wxErase{type=wxEraseEventType(), dc=wxDC:wxDC()}:
159
160
161 wxEraseEventType() = erase_background:
162
163
164 wxEventType() = wxActivateEventType() | wxAuiManagerEventType() |
165 wxAuiNotebookEventType() | wxCalendarEventType() | wxChildFocusEvent‐
166 Type() | wxClipboardTextEventType() | wxCloseEventType() |
167 wxColourPickerEventType() | wxCommandEventType() | wxCon‐
168 textMenuEventType() | wxDateEventType() | wxDisplayChangedEventType()
169 | wxDropFilesEventType() | wxEraseEventType() | wxFileDirPickerEvent‐
170 Type() | wxFocusEventType() | wxFontPickerEventType() | wxGridEvent‐
171 Type() | wxHelpEventType() | wxHtmlLinkEventType() | wxIconizeEvent‐
172 Type() | wxIdleEventType() | wxInitDialogEventType() | wxJoystick‐
173 EventType() | wxKeyEventType() | wxListEventType() | wxMaximizeEvent‐
174 Type() | wxMenuEventType() | wxMouseCaptureChangedEventType() |
175 wxMouseCaptureLostEventType() | wxMouseEventType() | wxMoveEvent‐
176 Type() | wxNavigationKeyEventType() | wxNotebookEventType() |
177 wxPaintEventType() | wxPaletteChangedEventType() | wxQueryNewPalet‐
178 teEventType() | wxSashEventType() | wxScrollEventType() | wxScroll‐
179 WinEventType() | wxSetCursorEventType() | wxShowEventType() |
180 wxSizeEventType() | wxSpinEventType() | wxSplitterEventType() |
181 wxStyledTextEventType() | wxSysColourChangedEventType() | wxTaskBarI‐
182 conEventType() | wxTreeEventType() | wxUpdateUIEventType() | wxWin‐
183 dowCreateEventType() | wxWindowDestroyEventType():
184
185
186 wxEvtHandler() = wx:wx_object():
187
188
189 wxFileDirPicker() = #wxFileDirPicker{type=wxFileDirPickerEventType(),
190 path=unicode:chardata()}:
191
192
193 wxFileDirPickerEventType() = command_filepicker_changed | com‐
194 mand_dirpicker_changed:
195
196
197 wxFocus() = #wxFocus{type=wxFocusEventType(), win=wxWindow:wxWin‐
198 dow()}:
199
200
201 wxFocusEventType() = set_focus | kill_focus:
202
203
204 wxFontPicker() = #wxFontPicker{type=wxFontPickerEventType(),
205 font=wxFont:wxFont()}:
206
207
208 wxFontPickerEventType() = command_fontpicker_changed:
209
210
211 wxGrid() = #wxGrid{type=wxGridEventType(), row=integer(), col=inte‐
212 ger(), x=integer(), y=integer(), selecting=boolean(), control=bool‐
213 ean(), meta=boolean(), shift=boolean(), alt=boolean()}:
214
215
216 wxGridEventType() = grid_cell_left_click | grid_cell_right_click |
217 grid_cell_left_dclick | grid_cell_right_dclick |
218 grid_label_left_click | grid_label_right_click |
219 grid_label_left_dclick | grid_label_right_dclick | grid_row_size |
220 grid_col_size | grid_range_select | grid_cell_change |
221 grid_select_cell | grid_editor_shown | grid_editor_hidden | grid_edi‐
222 tor_created | grid_cell_begin_drag:
223
224
225 wxHelp() = #wxHelp{type=wxHelpEventType()}:
226
227
228 wxHelpEventType() = help | detailed_help:
229
230
231 wxHtmlLink() = #wxHtmlLink{type=wxHtmlLinkEventType(), link‐
232 Info=wx:wx_wxHtmlLinkInfo()}:
233
234
235 wxHtmlLinkEventType() = command_html_link_clicked:
236
237
238 wxIconize() = #wxIconize{type=wxIconizeEventType(), iconized=bool‐
239 ean()}:
240
241
242 wxIconizeEventType() = iconize:
243
244
245 wxIdle() = #wxIdle{type=wxIdleEventType()}:
246
247
248 wxIdleEventType() = idle:
249
250
251 wxInitDialog() = #wxInitDialog{type=wxInitDialogEventType()}:
252
253
254 wxInitDialogEventType() = init_dialog:
255
256
257 wxJoystick() = #wxJoystick{type=wxJoystickEventType(), pos={X::inte‐
258 ger(), Y::integer()}, zPosition=integer(), buttonChange=integer(),
259 buttonState=integer(), joyStick=integer()}:
260
261
262 wxJoystickEventType() = joy_button_down | joy_button_up | joy_move |
263 joy_zmove:
264
265
266 wxKey() = #wxKey{type=wxKeyEventType(), x=integer(), y=integer(),
267 keyCode=integer(), controlDown=boolean(), shiftDown=boolean(), alt‐
268 Down=boolean(), metaDown=boolean(), scanCode=boolean(), uniChar=inte‐
269 ger(), rawCode=integer(), rawFlags=integer()}:
270
271
272 wxKeyEventType() = char | char_hook | key_down | key_up:
273
274
275 wxList() = #wxList{type=wxListEventType(), code=integer(), oldIte‐
276 mIndex=integer(), itemIndex=integer(), col=integer(), point‐
277 Drag={X::integer(), Y::integer()}}:
278
279
280 wxListEventType() = command_list_begin_drag | com‐
281 mand_list_begin_rdrag | command_list_begin_label_edit | com‐
282 mand_list_end_label_edit | command_list_delete_item | com‐
283 mand_list_delete_all_items | command_list_key_down | com‐
284 mand_list_insert_item | command_list_col_click | com‐
285 mand_list_col_right_click | command_list_col_begin_drag | com‐
286 mand_list_col_dragging | command_list_col_end_drag | com‐
287 mand_list_item_selected | command_list_item_deselected | com‐
288 mand_list_item_right_click | command_list_item_middle_click | com‐
289 mand_list_item_activated | command_list_item_focused | com‐
290 mand_list_cache_hint:
291
292
293 wxMaximize() = #wxMaximize{type=wxMaximizeEventType()}:
294
295
296 wxMaximizeEventType() = maximize:
297
298
299 wxMenu() = #wxMenu{type=wxMenuEventType(), menuId=integer(),
300 menu=wxMenu:wxMenu()}:
301
302
303 wxMenuEventType() = menu_open | menu_close | menu_highlight:
304
305
306 wxMouse() = #wxMouse{type=wxMouseEventType(), x=integer(), y=inte‐
307 ger(), leftDown=boolean(), middleDown=boolean(), rightDown=boolean(),
308 controlDown=boolean(), shiftDown=boolean(), altDown=boolean(), metaD‐
309 own=boolean(), wheelRotation=integer(), wheelDelta=integer(), lines‐
310 PerAction=integer()}:
311
312
313 wxMouseCaptureChanged() = #wxMouseCaptureChanged{type=wxMouseCap‐
314 tureChangedEventType()}:
315
316
317 wxMouseCaptureChangedEventType() = mouse_capture_changed:
318
319
320 wxMouseCaptureLost() = #wxMouseCaptureLost{type=wxMouseCap‐
321 tureLostEventType()}:
322
323
324 wxMouseCaptureLostEventType() = mouse_capture_lost:
325
326
327 wxMouseEventType() = left_down | left_up | middle_down | middle_up |
328 right_down | right_up | motion | enter_window | leave_window |
329 left_dclick | middle_dclick | right_dclick | mousewheel:
330
331
332 wxMove() = #wxMove{type=wxMoveEventType(), pos={X::integer(),
333 Y::integer()}, rect={X::integer(), Y::integer(), W::integer(),
334 H::integer()}}:
335
336
337 wxMoveEventType() = move:
338
339
340 wxNavigationKey() = #wxNavigationKey{type=wxNavigationKeyEventType(),
341 flags=integer(), focus=wxWindow:wxWindow()}:
342
343
344 wxNavigationKeyEventType() = navigation_key:
345
346
347 wxNotebook() = #wxNotebook{type=wxNotebookEventType(), nSel=inte‐
348 ger(), nOldSel=integer()}:
349
350
351 wxNotebookEventType() = command_notebook_page_changed | command_note‐
352 book_page_changing:
353
354
355 wxPaint() = #wxPaint{type=wxPaintEventType()}:
356
357
358 wxPaintEventType() = paint:
359
360
361 wxPaletteChanged() = #wxPaletteChanged{type=wxPaletteChangedEvent‐
362 Type()}:
363
364
365 wxPaletteChangedEventType() = palette_changed:
366
367
368 wxQueryNewPalette() = #wxQueryNewPalette{type=wxQueryNewPaletteEvent‐
369 Type()}:
370
371
372 wxQueryNewPaletteEventType() = query_new_palette:
373
374
375 wxSash() = #wxSash{type=wxSashEventType(), edge=wx:wx_enum(), dra‐
376 gRect={X::integer(), Y::integer(), W::integer(), H::integer()},
377 dragStatus=wx:wx_enum()}:
378
379
380 wxSashEventType() = sash_dragged:
381
382
383 wxScroll() = #wxScroll{type=wxScrollEventType(), commandInt=inte‐
384 ger(), extraLong=integer()}:
385
386
387 wxScrollEventType() = scroll_top | scroll_bottom | scroll_lineup |
388 scroll_linedown | scroll_pageup | scroll_pagedown | scroll_thumbtrack
389 | scroll_thumbrelease | scroll_changed:
390
391
392 wxScrollWin() = #wxScrollWin{type=wxScrollWinEventType(), com‐
393 mandInt=integer(), extraLong=integer()}:
394
395
396 wxScrollWinEventType() = scrollwin_top | scrollwin_bottom | scroll‐
397 win_lineup | scrollwin_linedown | scrollwin_pageup | scrollwin_page‐
398 down | scrollwin_thumbtrack | scrollwin_thumbrelease:
399
400
401 wxSetCursor() = #wxSetCursor{type=wxSetCursorEventType(), x=inte‐
402 ger(), y=integer(), cursor=wxCursor:wxCursor()}:
403
404
405 wxSetCursorEventType() = set_cursor:
406
407
408 wxShow() = #wxShow{type=wxShowEventType(), show=boolean()}:
409
410
411 wxShowEventType() = show:
412
413
414 wxSize() = #wxSize{type=wxSizeEventType(), size={W::integer(),
415 H::integer()}, rect={X::integer(), Y::integer(), W::integer(),
416 H::integer()}}:
417
418
419 wxSizeEventType() = size:
420
421
422 wxSpin() = #wxSpin{type=wxSpinEventType(), commandInt=integer()}:
423
424
425 wxSpinEventType() = command_spinctrl_updated | spin_up | spin_down |
426 spin:
427
428
429 wxSplitter() = #wxSplitter{type=wxSplitterEventType()}:
430
431
432 wxSplitterEventType() = command_splitter_sash_pos_changed | com‐
433 mand_splitter_sash_pos_changing | command_splitter_doubleclicked |
434 command_splitter_unsplit:
435
436
437 wxStyledText() = #wxStyledText{type=wxStyledTextEventType(), posi‐
438 tion=integer(), key=integer(), modifiers=integer(), modification‐
439 Type=integer(), text=unicode:chardata(), length=integer(), line‐
440 sAdded=integer(), line=integer(), foldLevelNow=integer(), foldLevel‐
441 Prev=integer(), margin=integer(), message=integer(), wParam=inte‐
442 ger(), lParam=integer(), listType=integer(), x=integer(), y=inte‐
443 ger(), dragText=unicode:chardata(), dragAllowMove=boolean(), dragRe‐
444 sult=wx:wx_enum()}:
445
446
447 wxStyledTextEventType() = stc_change | stc_styleneeded |
448 stc_charadded | stc_savepointreached | stc_savepointleft | stc_romod‐
449 ifyattempt | stc_key | stc_doubleclick | stc_updateui | stc_modified
450 | stc_macrorecord | stc_marginclick | stc_needshown | stc_painted |
451 stc_userlistselection | stc_uridropped | stc_dwellstart |
452 stc_dwellend | stc_start_drag | stc_drag_over | stc_do_drop |
453 stc_zoom | stc_hotspot_click | stc_hotspot_dclick | stc_calltip_click
454 | stc_autocomp_selection:
455
456
457 wxSysColourChanged() = #wxSysColourChanged{type=wxSysColourChangedE‐
458 ventType()}:
459
460
461 wxSysColourChangedEventType() = sys_colour_changed:
462
463
464 wxTaskBarIcon() = #wxTaskBarIcon{type=wxTaskBarIconEventType()}:
465
466
467 wxTaskBarIconEventType() = taskbar_move | taskbar_left_down |
468 taskbar_left_up | taskbar_right_down | taskbar_right_up |
469 taskbar_left_dclick | taskbar_right_dclick:
470
471
472 wxTree() = #wxTree{type=wxTreeEventType(), item=integer(), ite‐
473 mOld=integer(), pointDrag={X::integer(), Y::integer()}}:
474
475
476 wxTreeEventType() = command_tree_begin_drag | com‐
477 mand_tree_begin_rdrag | command_tree_begin_label_edit | com‐
478 mand_tree_end_label_edit | command_tree_delete_item | com‐
479 mand_tree_get_info | command_tree_set_info | com‐
480 mand_tree_item_expanded | command_tree_item_expanding | com‐
481 mand_tree_item_collapsed | command_tree_item_collapsing | com‐
482 mand_tree_sel_changed | command_tree_sel_changing | com‐
483 mand_tree_key_down | command_tree_item_activated | com‐
484 mand_tree_item_right_click | command_tree_item_middle_click | com‐
485 mand_tree_end_drag | command_tree_state_image_click | com‐
486 mand_tree_item_gettooltip | command_tree_item_menu:
487
488
489 wxUpdateUI() = #wxUpdateUI{type=wxUpdateUIEventType()}:
490
491
492 wxUpdateUIEventType() = update_ui:
493
494
495 wxWindowCreate() = #wxWindowCreate{type=wxWindowCreateEventType()}:
496
497
498 wxWindowCreateEventType() = create:
499
500
501 wxWindowDestroy() = #wxWindowDestroy{type=wxWindowDestroyEvent‐
502 Type()}:
503
504
505 wxWindowDestroyEventType() = destroy:
506
507
509 connect(This::wxEvtHandler(), EventType::wxEventType()) -> ok
510
511 Equivalent to connect(This, EventType, [])
512
513 connect(This::wxEvtHandler(), EventType::wxEventType(),
514 Options::[Option]) -> ok
515
516 Types:
517
518 Option = {id, integer()} | {lastId, integer()} | {skip, bool‐
519 ean()} | callback | {callback, function()} | {userData,
520 term()}
521
522 This function subscribes the to events of EventType, in the
523 range id, lastId. The events will be received as messages if no
524 callback is supplied.
525
526 Options: {id, integer()}, The identifier (or first of the iden‐
527 tifier range) to be associated with this event handler. Default
528 ?wxID_ANY {lastId, integer()}, The second part of the identifier
529 range. If used 'id' must be set as the starting identifier
530 range. Default ?wxID_ANY {skip, boolean()}, If skip is true fur‐
531 ther event_handlers will be called. This is not used if the
532 'callback' option is used. Default false. {callback, function()}
533 Use a callback fun(EventRecord::wx(), EventObject::wxObject())
534 to process the event. Default not specfied i.e. a message will
535 be delivered to the process calling this function. {userData,
536 term()} An erlang term that will be sent with the event.
537 Default: [].
538
539 disconnect(This::wxEvtHandler()) -> boolean()
540
541 Equivalent to disconnect(This, null, []) Can also have an
542 optional callback Fun() as an additional last argument.
543
544 disconnect(This::wxEvtHandler(), EventType::wxEventType()) -> boolean()
545
546 Equivalent to disconnect(This, EventType, [])
547
548 disconnect(This::wxEvtHandler(), EventType::wxEventType(),
549 Opts::[Option]) -> boolean()
550
551 Types:
552
553 Option = {id, integer()} | {lastId, integer()} | {callback,
554 function()}
555
556 See external documentation This function unsubscribes the
557 process or callback fun from the event handler. EventType may be
558 the atom 'null' to match any eventtype. Notice that the options
559 skip and userdata is not used to match the eventhandler.
560
562 <>
563
564
565
566 wx 1.9 wxEvtHandler(3)