コード例 #1
0
void Window::vOnFileClose()
{
  if (m_eCartridge != CartridgeNone)
  {
    soundPause();
    vStopEmu();
    vSetDefaultTitle();
    vDrawDefaultScreen();
    vSaveBattery();
    vSaveCheats();
    m_stEmulator.emuCleanUp();
    m_eCartridge = CartridgeNone;
    emulating = 0;

    vUpdateGameSlots();

    for (std::list<Gtk::Widget *>::iterator it = m_listSensitiveWhenPlaying.begin();
         it != m_listSensitiveWhenPlaying.end();
         it++)
    {
      (*it)->set_sensitive(false);
    }

    m_poFilePauseItem->set_active(false);
  }
}
コード例 #2
0
void Window::vOnMenuEnter()
{
    if (emulating && !m_bPaused) {
        vStopEmu();
        soundPause();
    }
}
コード例 #3
0
bool Window::on_focus_out_event(GdkEventFocus* _pstEvent)
{
    if (emulating
        && !m_bPaused
        && m_poCoreConfig->oGetKey<bool>("pause_when_inactive")) {
        vStopEmu();
        soundPause();
    }
    return false;
}
コード例 #4
0
void Window::vOnFilePauseToggled(Gtk::CheckMenuItem* _poCMI)
{
    m_bPaused = _poCMI->get_active();
    if (emulating) {
        if (m_bPaused) {
            vStopEmu();
            soundPause();
        } else {
            vStartEmu();
            soundResume();
        }
    }
}