void InterpreterDisAsmFrame::InstrKey(wxListEvent& event) { long i = m_list->GetFirstSelected(); if(i < 0 || !CPU) { event.Skip(); return; } const u64 start_pc = PC - m_item_count*4; const u64 pc = start_pc + i*4; switch(event.GetKeyCode()) { case 'E': // TODO:: Syphurith: It is said the InstructionEditorDialog would be immediately destroyed. InstructionEditorDialog(this, pc, CPU, decoder.get(), disasm); DoUpdate(); return; case 'R': // TODO:: Syphurith: Eh Similiar for this one. RegisterEditorDialog(this, pc, CPU, decoder.get(), disasm); DoUpdate(); return; } event.Skip(); }
void InterpreterDisAsmFrame::InstrKey(wxListEvent& event) { long i = m_list->GetFirstSelected(); if(i < 0 || !CPU) { event.Skip(); return; } const u64 start_pc = PC - m_item_count*4; const u64 pc = start_pc + i*4; switch(event.GetKeyCode()) { case 'E': InstructionEditorDialog(this, pc, CPU, decoder, disasm); DoUpdate(); return; case 'R': RegisterEditorDialog(this, pc, CPU, decoder, disasm); DoUpdate(); return; } event.Skip(); }