Exemple #1
0
bool Config::handleEvent( eq::EventICommand command )
{
    switch( command.getEventType( ))
    {
        case DATA_CHANGED:
        {
            _registerData( command );
            if( _readyToCommit() )
                _frameData.commit();    // broadcast changed data to all clients
            return false;
        }

        case PROXY_CHANGED:
        {
            _updateData( command );
            if( _readyToCommit() )
            {
                _updateSimulation();    // update the simulation every nth frame
                _frameData.commit();    // broadcast changed data to all clients
            }
            return false;
        }

        case eq::Event::KEY_PRESS:
        {
            const eq::Event& event = command.get< eq::Event >();
            if( _handleKeyEvent( event.keyPress ))
            {
                _redraw = true;
                return true;
            }
            break;
        }

        case eq::Event::WINDOW_EXPOSE:
        case eq::Event::WINDOW_RESIZE:
        case eq::Event::WINDOW_CLOSE:
        case eq::Event::VIEW_RESIZE:
            _redraw = true;
            break;

        default:
            break;
    }

    _redraw |= eq::Config::handleEvent( command );
    return _redraw;
}
Exemple #2
0
bool Config::handleEvent( const eq::ConfigEvent* event )
{               
    switch( event->data.type )
    {
      case ConfigEvent::DATA_CHANGED:
          _registerData(static_cast< const ConfigEvent* >( event ));
          if( _readyToCommit() ) {
              _frameData.commit();        // broadcast changed data to all clients
          }
          break;

      case ConfigEvent::PROXY_CHANGED:
      {
          _updateData(static_cast< const ConfigEvent* >( event ));
          if( _readyToCommit() ) {
              _updateSimulation();    // update the simulation every nth frame
              _frameData.commit();    // broadcast changed data to all clients
          }
      }
      break;
                
      case eq::Event::KEY_PRESS:
          if( _handleKeyEvent( event->data.keyPress ))
          {
              _redraw = true;
              return true;
          }
          break;
                                
      case eq::Event::WINDOW_EXPOSE:
      case eq::Event::WINDOW_RESIZE:
      case eq::Event::WINDOW_CLOSE:
      case eq::Event::VIEW_RESIZE:
          _redraw = true;
          break;
                
      default:
          break;
    }
        
    _redraw |= eq::Config::handleEvent( event );
    return _redraw;
}