Module wxEvtHandler

The Event handler.

Description

The Event handler.

To get events from wxwidgets objects you subscribe to them by calling connect/[2-3]. Events are sent as messages, if no callback was supplied These messages will be #wx{} where EventRecord is a record that depends on the event type. The records are defined in: wx/include/wx.hrl.

If a callback was supplied to connect, the callback will be invoked (in another process) to handle the event. The callback should be of arity 2. fun(EventRecord::wx(), EventObject::wxObject()).

Beware that the callback will be in exclusive mode so that a call inside the callback to a process using wx may cause a deadlock.

The orginal documentation.

Data Types

wx()

wx() = #wx{id = integer(), obj = wx:wxObject(), userData = term(), event = Rec}

Rec is a event record.

wxChildFocus()

wxChildFocus() = #wxChildFocus{type = wxEventType()}

EventType:
set_focus, kill_focus
Callback event: wxChildFocusEvent

wxClose()

wxClose() = #wxClose{type = wxEventType()}

EventType:
close_window, end_session, query_end_session
Callback event: wxCloseEvent

wxCommand()

wxCommand() = #wxCommand{type = wxEventType(), cmdString = string(), commandInt = integer(), extraLong = integer()}

EventType:
command_button_clicked, command_checkbox_clicked, command_choice_selected, command_listbox_selected, command_listbox_doubleclicked, command_text_updated, command_text_enter, command_menu_selected, command_slider_updated, command_radiobox_selected, command_radiobutton_selected, command_scrollbar_updated, command_vlbox_selected, command_combobox_selected, command_togglebutton_clicked, command_notebook_page_changed, command_notebook_page_changing
Callback event: wxCommandEvent

wxContextMenu()

wxContextMenu() = #wxContextMenu{type = wxEventType()}

EventType:
context_menu
Callback event: wxContextMenuEvent

wxDisplayChanged()

wxDisplayChanged() = #wxDisplayChanged{type = wxEventType()}

EventType:
display_changed
Callback event: wxDisplayChangedEvent

wxErase()

wxErase() = #wxErase{type = wxEventType(), dc = wxDC:wxDC()}

EventType:
erase_background
Callback event: wxEraseEvent

wxEventType()

wxEventType() = char | char_hook | close_window | command_button_clicked | command_checkbox_clicked | command_choice_selected | command_combobox_selected | command_list_begin_drag | command_list_begin_label_edit | command_list_begin_rdrag | command_list_cache_hint | command_list_col_begin_drag | command_list_col_click | command_list_col_dragging | command_list_col_end_drag | command_list_col_right_click | command_list_delete_all_items | command_list_delete_item | command_list_end_label_edit | command_list_insert_item | command_list_item_activated | command_list_item_deselected | command_list_item_focused | command_list_item_middle_click | command_list_item_right_click | command_list_item_selected | command_list_key_down | command_listbox_doubleclicked | command_listbox_selected | command_menu_selected | command_notebook_page_changed | command_notebook_page_changing | command_radiobox_selected | command_radiobutton_selected | command_scrollbar_updated | command_slider_updated | command_text_enter | command_text_updated | command_togglebutton_clicked | command_vlbox_selected | context_menu | create | destroy | detailed_help | display_changed | end_session | enter_window | erase_background | grid_cell_begin_drag | grid_cell_change | grid_cell_left_click | grid_cell_left_dclick | grid_cell_right_click | grid_cell_right_dclick | grid_col_size | grid_editor_created | grid_editor_hidden | grid_editor_shown | grid_label_left_click | grid_label_left_dclick | grid_label_right_click | grid_label_right_dclick | grid_range_select | grid_row_size | grid_select_cell | help | iconize | idle | joy_button_down | joy_button_up | joy_move | joy_zmove | key_down | key_up | kill_focus | kill_focus | leave_window | left_dclick | left_down | left_up | maximize | menu_close | menu_highlight | menu_open | middle_dclick | middle_down | middle_up | motion | mouse_capture_changed | mousewheel | move | navigation_key | nc_enter_window | nc_leave_window | nc_left_dclick | nc_left_down | nc_left_up | nc_middle_dclick | nc_middle_down | nc_middle_up | nc_motion | nc_paint | nc_right_dclick | nc_right_down | nc_right_up | paint | paint_icon | palette_changed | query_end_session | query_new_palette | right_dclick | right_down | right_up | sash_dragged | scroll_bottom | scroll_changed | scroll_linedown | scroll_lineup | scroll_pagedown | scroll_pageup | scroll_thumbrelease | scroll_thumbtrack | scroll_top | scrollwin_bottom | scrollwin_linedown | scrollwin_lineup | scrollwin_pagedown | scrollwin_pageup | scrollwin_thumbrelease | scrollwin_thumbtrack | scrollwin_top | set_cursor | set_focus | set_focus | show | size | stc_autocomp_selection | stc_calltip_click | stc_change | stc_charadded | stc_do_drop | stc_doubleclick | stc_drag_over | stc_dwellend | stc_dwellstart | stc_hotspot_click | stc_hotspot_dclick | stc_key | stc_macrorecord | stc_marginclick | stc_modified | stc_needshown | stc_painted | stc_romodifyattempt | stc_savepointleft | stc_savepointreached | stc_start_drag | stc_styleneeded | stc_updateui | stc_uridropped | stc_userlistselection | stc_zoom | sys_colour_changed | update_ui

wxEvtHandler()

abstract datatype: wxEvtHandler()

An object reference

wxFocus()

wxFocus() = #wxFocus{type = wxEventType()}

EventType:
set_focus, kill_focus
Callback event: wxFocusEvent

wxGrid()

wxGrid() = #wxGrid{type = wxEventType(), row = integer(), col = integer(), x = integer(), y = integer(), selecting = bool(), control = bool(), meta = bool(), shift = bool(), alt = bool()}

EventType:
grid_cell_left_click, grid_cell_right_click, grid_cell_left_dclick, grid_cell_right_dclick, grid_label_left_click, grid_label_right_click, grid_label_left_dclick, grid_label_right_dclick, grid_row_size, grid_col_size, grid_range_select, grid_cell_change, grid_select_cell, grid_editor_shown, grid_editor_hidden, grid_editor_created, grid_cell_begin_drag
Callback event: wxGridEvent

wxHelp()

wxHelp() = #wxHelp{type = wxEventType()}

EventType:
help, detailed_help
Callback event: wxHelpEvent

wxIconize()

wxIconize() = #wxIconize{type = wxEventType()}

EventType:
iconize
Callback event: wxIconizeEvent

wxIdle()

wxIdle() = #wxIdle{type = wxEventType()}

EventType:
idle
Callback event: wxIdleEvent

wxJoystick()

wxJoystick() = #wxJoystick{type = wxEventType()}

EventType:
joy_button_down, joy_button_up, joy_move, joy_zmove
Callback event: wxJoystickEvent

wxKey()

wxKey() = #wxKey{type = wxEventType(), x = integer(), y = integer(), keyCode = integer(), controlDown = bool(), shiftDown = bool(), altDown = bool(), metaDown = bool(), scanCode = bool(), uniChar = integer(), rawCode = integer(), rawFlags = integer()}

EventType:
char, char_hook, key_down, key_up
Callback event: wxKeyEvent

wxList()

wxList() = #wxList{type = wxEventType(), code = integer(), oldItemIndex = integer(), itemIndex = integer(), col = integer(), pointDrag = {X::integer(), Y::integer()}}

EventType:
command_list_begin_drag, command_list_begin_rdrag, command_list_begin_label_edit, command_list_end_label_edit, command_list_delete_item, command_list_delete_all_items, command_list_key_down, command_list_insert_item, command_list_col_click, command_list_col_right_click, command_list_col_begin_drag, command_list_col_dragging, command_list_col_end_drag, command_list_item_selected, command_list_item_deselected, command_list_item_right_click, command_list_item_middle_click, command_list_item_activated, command_list_item_focused, command_list_cache_hint
Callback event: wxListEvent

wxMaximize()

wxMaximize() = #wxMaximize{type = wxEventType()}

EventType:
maximize
Callback event: wxMaximizeEvent

wxMenu()

wxMenu() = #wxMenu{type = wxEventType()}

EventType:
menu_open, menu_close, menu_highlight
Callback event: wxMenuEvent

wxMouse()

wxMouse() = #wxMouse{type = wxEventType(), x = integer(), y = integer(), leftDown = bool(), middleDown = bool(), rightDown = bool(), controlDown = bool(), shiftDown = bool(), altDown = bool(), metaDown = bool(), wheelRotation = integer(), wheelDelta = integer(), linesPerAction = integer()}

EventType:
left_down, left_up, middle_down, middle_up, right_down, right_up, motion, enter_window, leave_window, left_dclick, middle_dclick, right_dclick, mousewheel, nc_left_down, nc_left_up, nc_middle_down, nc_middle_up, nc_right_down, nc_right_up, nc_motion, nc_enter_window, nc_leave_window, nc_left_dclick, nc_middle_dclick, nc_right_dclick
Callback event: wxMouseEvent

wxMouseCaptureChanged()

wxMouseCaptureChanged() = #wxMouseCaptureChanged{type = wxEventType()}

EventType:
mouse_capture_changed
Callback event: wxMouseCaptureChangedEvent

wxMove()

wxMove() = #wxMove{type = wxEventType()}

EventType:
move
Callback event: wxMoveEvent

wxNavigationKey()

wxNavigationKey() = #wxNavigationKey{type = wxEventType(), flags = integer(), focus = wxWindow:wxWindow()}

EventType:
navigation_key
Callback event: wxNavigationKeyEvent

wxNcPaint()

wxNcPaint() = #wxNcPaint{type = wxEventType()}

EventType:
nc_paint
Callback event: wxNcPaintEvent

wxPaint()

wxPaint() = #wxPaint{type = wxEventType()}

EventType:
paint, paint_icon
Callback event: wxPaintEvent

wxPaletteChanged()

wxPaletteChanged() = #wxPaletteChanged{type = wxEventType()}

EventType:
palette_changed
Callback event: wxPaletteChangedEvent

wxQueryNewPalette()

wxQueryNewPalette() = #wxQueryNewPalette{type = wxEventType()}

EventType:
query_new_palette
Callback event: wxQueryNewPaletteEvent

wxSash()

wxSash() = #wxSash{type = wxEventType(), edge = WxSashEdgePosition, dragRect = {X::integer(), Y::integer(), W::integer(), H::integer()}, dragStatus = WxSashDragStatus}

EventType:
sash_dragged
Callback event: wxSashEvent

wxScroll()

wxScroll() = #wxScroll{type = wxEventType()}

EventType:
scroll_top, scroll_bottom, scroll_lineup, scroll_linedown, scroll_pageup, scroll_pagedown, scroll_thumbtrack, scroll_thumbrelease, scroll_changed
Callback event: wxScrollEvent

wxScrollWin()

wxScrollWin() = #wxScrollWin{type = wxEventType()}

EventType:
scrollwin_top, scrollwin_bottom, scrollwin_lineup, scrollwin_linedown, scrollwin_pageup, scrollwin_pagedown, scrollwin_thumbtrack, scrollwin_thumbrelease
Callback event: wxScrollWinEvent

wxSetCursor()

wxSetCursor() = #wxSetCursor{type = wxEventType()}

EventType:
set_cursor
Callback event: wxSetCursorEvent

wxShow()

wxShow() = #wxShow{type = wxEventType()}

EventType:
show
Callback event: wxShowEvent

wxSize()

wxSize() = #wxSize{type = wxEventType(), size = {W::integer(), H::integer()}, rect = {X::integer(), Y::integer(), W::integer(), H::integer()}}

EventType:
size
Callback event: wxSizeEvent

wxStyledText()

wxStyledText() = #wxStyledText{type = wxEventType(), position = integer(), key = integer(), modifiers = integer(), modificationType = integer(), text = string(), length = integer(), linesAdded = integer(), line = integer(), foldLevelNow = integer(), foldLevelPrev = integer(), margin = integer(), message = integer(), wParam = integer(), lParam = integer(), listType = integer(), x = integer(), y = integer(), dragText = string(), dragAllowMove = bool(), dragResult = WxDragResult}

EventType:
stc_change, stc_styleneeded, stc_charadded, stc_savepointreached, stc_savepointleft, stc_romodifyattempt, stc_key, stc_doubleclick, stc_updateui, stc_modified, stc_macrorecord, stc_marginclick, stc_needshown, stc_painted, stc_userlistselection, stc_uridropped, stc_dwellstart, stc_dwellend, stc_start_drag, stc_drag_over, stc_do_drop, stc_zoom, stc_hotspot_click, stc_hotspot_dclick, stc_calltip_click, stc_autocomp_selection
Callback event: wxStyledTextEvent

wxSysColourChanged()

wxSysColourChanged() = #wxSysColourChanged{type = wxEventType()}

EventType:
sys_colour_changed
Callback event: wxSysColourChangedEvent

wxUpdateUI()

wxUpdateUI() = #wxUpdateUI{type = wxEventType()}

EventType:
update_ui
Callback event: wxUpdateUIEvent

wxWindowCreate()

wxWindowCreate() = #wxWindowCreate{type = wxEventType()}

EventType:
create
Callback event: wxWindowCreateEvent

wxWindowDestroy()

wxWindowDestroy() = #wxWindowDestroy{type = wxEventType()}

EventType:
destroy
Callback event: wxWindowDestroyEvent

Function Index

connect/2*Equivalent to connect(This, EventType, [])
connect/3*This function subscribes the to events of EventType, in the range id, lastId.
disconnect/1*Equivalent to disconnect(This, null, []) Can also have an optional callback Fun() as an additional last argument.
disconnect/2*Equivalent to disconnect(This, EventType, [])
disconnect/3*See external documentation This function unsubscribes the process or callback fun from the event handler.
parse_opts/2*

Function Details

connect/2 *

connect(This::wxEvtHandler(), EventType::wxEventType()) -> ok

Equivalent to connect(This, EventType, [])

connect/3 *

connect(This::wxEvtHandler(), EventType::wxEventType(), Options::[Options]) -> ok

This function subscribes the to events of EventType, in the range id, lastId. The events will be received as messages if no callback is supplied.

Options: {id, integer()}, The identifier (or first of the identifier range) to be associated with this event handler. Default ?wxID_ANY {lastId, integer()}, The second part of the identifier range. If used 'id' must be set as the starting identifier range. Default ?wxID_ANY {skip, boolean()}, If skip is true further event_handlers will be called. This is not used if the 'callback' option is used. Default false. {callback, function()} Use a callback fun(EventRecord::wx(), EventObject::wxObject()) to process the event. Default not specfied i.e. a message will be delivered to the process calling this function. {userData, term()} An erlang term that will be sent with the event. Default: [].

disconnect/1 *

disconnect(This::wxEvtHandler()) -> true | false

Equivalent to disconnect(This, null, []) Can also have an optional callback Fun() as an additional last argument.

disconnect/2 *

disconnect(This::wxEvtHandler(), EventType::wxEventType()) -> true | false

Equivalent to disconnect(This, EventType, [])

disconnect/3 *

disconnect(This::wxEvtHandler(), EventType::wxEventType(), Opts) -> true | false

See external documentation This function unsubscribes the process or callback fun from the event handler. EventType may be the atom 'null' to match any eventtype. Notice that the options skip and userdata is not used to match the eventhandler.

parse_opts/2 *

parse_opts() -> term()


Generated by EDoc, May 26 2008, 12:35:37.