Exemplo n.º 1
0
Arquivo: spider.cpp Projeto: KDE/kpat
void Spider::gameTypeChanged()
{
    stopDemo();

    if ( allowedToStartNewGame() )
    {
        if ( options->currentItem() == 0 )
            setSuits( 1 );
        else if ( options->currentItem() == 1 )
            setSuits( 2 );
        else
            setSuits( 4 );

        if ( m_stackFaceup != m_stackFaceupOption->currentItem() ) {
            m_stackFaceup = m_stackFaceupOption->currentItem();
            Settings::setSpiderStackFaceup( m_stackFaceup );
        }

        startNew( gameNumber() );
    }
    else
    {
        // If we're not allowed, reset the option to
        // the current number of suits.
        if ( m_suits == 1 )
            options->setCurrentItem( 0 );
        else if ( m_suits == 2 )
            options->setCurrentItem( 1 );
        else
            options->setCurrentItem( 2 );

        m_stackFaceupOption->setCurrentItem( m_stackFaceup );
    }
}
Exemplo n.º 2
0
Arquivo: spider.cpp Projeto: KDE/kpat
void Spider::setSuits(int suits)
{
    if ( suits != m_suits )
    {
        m_suits = suits;

        stopDemo();
        clearHighlightedItems();
        setKeyboardModeActive( false );

        int cardWidth = deck()->cardWidth();
        createDeck();
        deck()->setCardWidth( cardWidth );

        Settings::setSpiderSuitCount( m_suits );

        if ( m_suits == 1 )
            options->setCurrentItem( 0 );
        else if ( m_suits == 2 )
            options->setCurrentItem( 1 );
        else
            options->setCurrentItem( 2 );
    }
}
Exemplo n.º 3
0
 void VirtualMachine::run(size_t microseconds)
 {
   (void) microseconds;
   if (audioConverter == (AudioConverter *) 0) {
     if (audioOutputEnabled) {
       // open audio converter if needed
       audioOutputSampleRate = audioOutput.getSampleRate();
       if (audioConverterSampleRate > 0.0f && audioOutputSampleRate > 0.0f) {
         if (audioOutputHighQuality)
           audioConverter = new AudioConverter_<AudioConverterHighQuality>(
               audioOutput,
               audioConverterSampleRate, audioOutputSampleRate,
               audioOutputFilter1Freq, audioOutputFilter2Freq,
               audioOutputVolume);
         else
           audioConverter = new AudioConverter_<AudioConverterLowQuality>(
               audioOutput,
               audioConverterSampleRate, audioOutputSampleRate,
               audioOutputFilter1Freq, audioOutputFilter2Freq,
               audioOutputVolume);
         audioConverter->setEqualizerParameters(audioOutputEQMode,
                                                audioOutputEQFrequency,
                                                audioOutputEQLevel,
                                                audioOutputEQ_Q);
       }
     }
   }
   else if (audioOutput.getSampleRate() != audioOutputSampleRate) {
     audioOutputSampleRate = audioOutput.getSampleRate();
     audioConverter->setOutputSampleRate(audioOutputSampleRate);
   }
   writingAudioOutput =
       (audioConverter != (AudioConverter *) 0 && audioOutputEnabled);
   if (haveTape() && getIsTapeMotorOn() && getTapeButtonState() != 0)
     stopDemo();
 }