wxWidgets toolbar fixes
- moving ToggleMouse() call to the gui thread fixes two issue: possible deadlock in wxGTK after showing message box, mouse cursor not hidden in wxMSW - don't add undefined toolbar events to the queue - removed unused / unhandled cases from the toolbar code
This commit is contained in:
parent
0b43928f6a
commit
63a86148bf
@ -1053,17 +1053,12 @@ void bx_wx_gui_c::handle_events(void)
|
||||
switch(event_queue[i].type) {
|
||||
case BX_ASYNC_EVT_TOOLBAR:
|
||||
switch (event_queue[i].u.toolbar.button) {
|
||||
case BX_TOOLBAR_FLOPPYA: floppyA_handler(); break;
|
||||
case BX_TOOLBAR_FLOPPYB: floppyB_handler(); break;
|
||||
case BX_TOOLBAR_CDROM1: cdrom1_handler(); break;
|
||||
case BX_TOOLBAR_RESET: reset_handler(); break;
|
||||
case BX_TOOLBAR_POWER: quit_sim = 1; break;
|
||||
case BX_TOOLBAR_SAVE_RESTORE: save_restore_handler(); break;
|
||||
case BX_TOOLBAR_COPY: copy_handler(); break;
|
||||
case BX_TOOLBAR_PASTE: paste_handler(); break;
|
||||
case BX_TOOLBAR_SNAPSHOT: snapshot_handler(); break;
|
||||
// case BX_TOOLBAR_CONFIG: config_handler(); break;
|
||||
case BX_TOOLBAR_MOUSE_EN: thePanel->ToggleMouse(true); break;
|
||||
case BX_TOOLBAR_USER: userbutton_handler(); break;
|
||||
default:
|
||||
wxLogDebug (wxT ("unknown toolbar id %d"), event_queue[i].u.toolbar.button);
|
||||
|
@ -1252,13 +1252,12 @@ void MyFrame::OnToolbarClick(wxCommandEvent& event)
|
||||
case ID_Toolbar_Copy: which = BX_TOOLBAR_COPY; break;
|
||||
case ID_Toolbar_Paste: which = BX_TOOLBAR_PASTE; break;
|
||||
case ID_Toolbar_Snapshot: which = BX_TOOLBAR_SNAPSHOT; break;
|
||||
// case ID_Toolbar_Config: which = BX_TOOLBAR_CONFIG; break;
|
||||
case ID_Toolbar_Mouse_en: which = BX_TOOLBAR_MOUSE_EN; break;
|
||||
case ID_Toolbar_Mouse_en: thePanel->ToggleMouse(true); break;
|
||||
case ID_Toolbar_User: which = BX_TOOLBAR_USER; break;
|
||||
default:
|
||||
wxLogError(wxT("unknown toolbar id %d"), id);
|
||||
}
|
||||
if (num_events < MAX_EVENTS) {
|
||||
if ((which != BX_TOOLBAR_UNDEFINED) && (num_events < MAX_EVENTS)) {
|
||||
event_queue[num_events].type = BX_ASYNC_EVT_TOOLBAR;
|
||||
event_queue[num_events].u.toolbar.button = which;
|
||||
num_events++;
|
||||
|
Loading…
x
Reference in New Issue
Block a user