当前位置: 首页>>代码示例>>C++>>正文


C++ TextInput::processChar方法代码示例

本文整理汇总了C++中TextInput::processChar方法的典型用法代码示例。如果您正苦于以下问题:C++ TextInput::processChar方法的具体用法?C++ TextInput::processChar怎么用?C++ TextInput::processChar使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在TextInput的用法示例。


在下文中一共展示了TextInput::processChar方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: keyDown

void DeviceTestApp::keyDown( KeyEvent event )
{
    TextInput *currentSelected = TextInput::getCurrentSelected();
    if( ! currentSelected )
        return;

    if( event.getCode() == KeyEvent::KEY_RETURN ) {
#if defined( CINDER_COCOA_TOUCH )
        hideKeyboard();
#endif

        try {
            if( currentSelected == &mSamplerateInput ) {
                int sr = currentSelected->getValue();
                CI_LOG_V( "updating samplerate from: " << mOutputDeviceNode->getSampleRate() << " to: " << sr );
                mOutputDeviceNode->getDevice()->updateFormat( audio::Device::Format().sampleRate( sr ) );
            }
            else if( currentSelected == &mFramesPerBlockInput ) {
                int frames = currentSelected->getValue();
                CI_LOG_V( "updating frames per block from: " << mOutputDeviceNode->getFramesPerBlock() << " to: " << frames );
                mOutputDeviceNode->getDevice()->updateFormat( audio::Device::Format().framesPerBlock( frames ) );
            }
            else if( currentSelected == &mNumInChannelsInput ) {
                int numChannels = currentSelected->getValue();
                CI_LOG_V( "updating nnm input channels from: " << mInputDeviceNode->getNumChannels() << " to: " << numChannels );
                setInputDevice( mInputDeviceNode->getDevice(), numChannels );
            }
            else if( currentSelected == &mNumOutChannelsInput ) {
                int numChannels = currentSelected->getValue();
                CI_LOG_V( "updating nnm output channels from: " << mOutputDeviceNode->getNumChannels() << " to: " << numChannels );
                setOutputDevice( mOutputDeviceNode->getDevice(), numChannels );
            }
            else if( currentSelected == &mSendChannelInput ) {
                if( mTestSelector.currentSection() == "send" || mTestSelector.currentSection() == "send stereo" )
                    setupTest( mTestSelector.currentSection() );
            }
            else
                CI_LOG_E( "unhandled return for string: " << currentSelected->mInputString );
        }
        catch( audio::AudioDeviceExc &exc ) {
            CI_LOG_E( "AudioDeviceExc caught, what: " << exc.what() );
            auto ctx = audio::master();
            mSamplerateInput.setValue( ctx->getSampleRate() );
            mFramesPerBlockInput.setValue( ctx->getFramesPerBlock() );
            return;
        }
    }
    else {
        if( event.getCode() == KeyEvent::KEY_BACKSPACE )
            currentSelected->processBackspace();
        else {
            currentSelected->processChar( event.getChar() );
        }
    }
}
开发者ID:ffimusic,项目名称:Cinder,代码行数:55,代码来源:DeviceTestApp.cpp


注:本文中的TextInput::processChar方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。