Remove kmatrix_poll2
After the previous commit, its only purpose is to automatically dismiss the window after 3 seconds. Users may be surprised by this, and the automatic dismissal has limited value. Remove it and let the user remain at the cancel dialog until a decision is made.
This commit is contained in:
parent
479005b769
commit
115c38cd77
|
@ -248,7 +248,6 @@ struct dispatch_table
|
|||
virtual void do_protocol_frame(int force, int listen) const = 0;
|
||||
virtual window_event_result level_sync() const = 0;
|
||||
virtual void send_endlevel_packet() const = 0;
|
||||
virtual endlevel_poll_function_type *get_endlevel_poll2() const = 0;
|
||||
virtual void kick_player(const _sockaddr &dump_addr, int why) const = 0;
|
||||
virtual void disconnect_player(int playernum) const = 0;
|
||||
virtual int end_current_level(int *secret) const = 0;
|
||||
|
|
|
@ -30,7 +30,6 @@ struct dispatch_table final : multi::dispatch_table
|
|||
virtual void do_protocol_frame(int force, int listen) const override;
|
||||
virtual window_event_result level_sync() const override;
|
||||
virtual void send_endlevel_packet() const override;
|
||||
virtual endlevel_poll_function_type *get_endlevel_poll2() const override;
|
||||
virtual void kick_player(const _sockaddr &dump_addr, int why) const override;
|
||||
virtual void disconnect_player(int playernum) const override;
|
||||
virtual int end_current_level(int *secret) const override;
|
||||
|
|
|
@ -343,7 +343,7 @@ window_event_result kmatrix_window::event_handler(const d_event &event)
|
|||
nm_item_menu(TXT_YES),
|
||||
nm_item_menu(TXT_NO),
|
||||
}};
|
||||
choice = newmenu_do2(menu_title{nullptr}, menu_subtitle{TXT_ABORT_GAME}, nm_message_items, network != kmatrix_network::offline ? multi::dispatch->get_endlevel_poll2() : unused_newmenu_subfunction, unused_newmenu_userdata);
|
||||
choice = newmenu_do2(menu_title{nullptr}, menu_subtitle{TXT_ABORT_GAME}, nm_message_items, unused_newmenu_subfunction, unused_newmenu_userdata);
|
||||
}
|
||||
|
||||
if (choice==0)
|
||||
|
|
|
@ -189,8 +189,6 @@ static void udp_tracker_request_holepunch( uint16_t TrackerGameID );
|
|||
static void udp_tracker_process_holepunch(uint8_t *data, unsigned data_len, const _sockaddr &sender_addr );
|
||||
#endif
|
||||
|
||||
static fix64 StartAbortMenuTime;
|
||||
|
||||
#ifndef _WIN32
|
||||
constexpr std::integral_constant<int, -1> INVALID_SOCKET{};
|
||||
#endif
|
||||
|
@ -1485,25 +1483,6 @@ namespace dsx {
|
|||
namespace multi {
|
||||
namespace udp {
|
||||
|
||||
// Same as above but used when player pressed ESC during kmatrix (host also does the packets for playing clients)
|
||||
int kmatrix_poll2( newmenu *,const d_event &event, const unused_newmenu_userdata_t *)
|
||||
{
|
||||
int rval = 0;
|
||||
|
||||
// Polling loop for End-of-level menu
|
||||
if (event.type == EVENT_WINDOW_CREATED)
|
||||
{
|
||||
StartAbortMenuTime=timer_query();
|
||||
return 0;
|
||||
}
|
||||
if (event.type != EVENT_WINDOW_DRAW)
|
||||
return 0;
|
||||
if (timer_query() > (StartAbortMenuTime+(F1_0*3)))
|
||||
rval = -2;
|
||||
|
||||
return rval;
|
||||
}
|
||||
|
||||
int dispatch_table::end_current_level(int *secret) const
|
||||
{
|
||||
// Do whatever needs to be done between levels
|
||||
|
@ -2546,11 +2525,6 @@ void dispatch_table::send_endlevel_packet() const
|
|||
dxx_sendto(Netgame.players[0].protocol.udp.addr, UDP_Socket[0], buf, 0);
|
||||
}
|
||||
}
|
||||
|
||||
endlevel_poll_function_type *dispatch_table::get_endlevel_poll2() const
|
||||
{
|
||||
return kmatrix_poll2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue