Creation parameters:
ex: server = create( wxSocketServer, address ) server_id = get_id( server ) set_socket_notify( server, {wxSOCKET_CONNECTION_FLAG, wxSOCKET_LOST_FLAG}) socket_event_handler( server, main_form, server_id )procedure main_socket_event( atom this, atom event_type, atom id, atom event ) sequence bytes atom socket
event_type = get_socket_event( event )
if id = server_id and event_type = wxSOCKET_CONNECTION then connection = socket_accept( server, 0 ) connection_id = get_id( connection ) set_socket_notify( connection, {wxSOCKET_INPUT_FLAG, wxSOCKET_LOST_FLAG}) socket_event_handler( connection_id, main_form, connection_id ) set_event_handler( main_form, connection_id, wxEVT_SOCKET, routine_id("main_socket_event"))
elsif event_type = wxSOCKET_LOST then delete_instance( socket_from_event( event ) )
elsif event_type = wxSOCKE_INPUT then bytes = socket_read( socket_from_event( event ) )
end if end procedure set_event_handler( main_form, server_id, wxEVT_SOCKET, routine_id("main_socket_event")
Accepts an incoming connection request, and creates a new wxSocketBase object which represents the server-side of the connection.
If wait is TRUE and there are no pending connections to be accepted, it will wait for the next incoming connection to arrive. Warning: This will block the GUI.
If wait is FALSE, it will try to accept a pending connection if there is one, but it will always return immediately without blocking the GUI. If you want to use Accept in this way, you can either check for incoming connections with WaitForAccept or catch wxSOCKET_CONNECTION events, then call Accept once you know that there is an incoming connection waiting to be accepted.