Skip to content

Commit

Permalink
add option to skip setup dialog entirely
Browse files Browse the repository at this point in the history
  • Loading branch information
Gargaj committed Mar 7, 2021
1 parent 51384c9 commit 8707888
Showing 1 changed file with 24 additions and 17 deletions.
41 changes: 24 additions & 17 deletions src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ void ReplaceTokens( std::string &sDefShader, const char * sTokenBegin, const cha
}
}

int main(int argc, const char *argv[])
int main( int argc, const char *argv[] )
{
Misc::PlatformStartup();

Expand All @@ -86,14 +86,14 @@ int main(int argc, const char *argv[])

jsonxx::Object options;
FILE * fConf = fopen( configFile, "rb" );
if (fConf)
if ( fConf )
{
printf("Config file found, parsing...\n");
printf( "Config file found, parsing...\n" );

char szConfig[65535];
char szConfig[ 65535 ];
memset( szConfig, 0, 65535 );
fread( szConfig, 1, 65535, fConf );
fclose(fConf);
fclose( fConf );

options.parse( szConfig );
}
Expand All @@ -103,10 +103,10 @@ int main(int argc, const char *argv[])
SetupDialog::SETTINGS settings;
settings.sFFT.bUseRecordingDevice = true;
settings.sFFT.pDeviceID = NULL;
if (options.has<jsonxx::Object>("audio"))
if ( options.has<jsonxx::Object>( "audio" ) )
{
if (options.get<jsonxx::Object>("audio").has<jsonxx::Boolean>("useInput"))
settings.sFFT.bUseRecordingDevice = options.get<jsonxx::Object>("audio").get<jsonxx::Boolean>("useInput");
if ( options.get<jsonxx::Object>( "audio" ).has<jsonxx::Boolean>( "useInput" ) )
settings.sFFT.bUseRecordingDevice = options.get<jsonxx::Object>( "audio" ).get<jsonxx::Boolean>( "useInput" );
}

settings.sRenderer.bVsync = false;
Expand All @@ -118,18 +118,25 @@ int main(int argc, const char *argv[])
settings.sRenderer.nWidth = 1920;
settings.sRenderer.nHeight = 1080;
settings.sRenderer.windowMode = RENDERER_WINDOWMODE_FULLSCREEN;
if (options.has<jsonxx::Object>("window"))

bool skipSetupDialog = false;
if ( options.has<jsonxx::Object>( "window" ) )
{
if (options.get<jsonxx::Object>("window").has<jsonxx::Number>("width"))
settings.sRenderer.nWidth = options.get<jsonxx::Object>("window").get<jsonxx::Number>("width");
if (options.get<jsonxx::Object>("window").has<jsonxx::Number>("height"))
settings.sRenderer.nHeight = options.get<jsonxx::Object>("window").get<jsonxx::Number>("height");
if (options.get<jsonxx::Object>("window").has<jsonxx::Boolean>("fullscreen"))
settings.sRenderer.windowMode = options.get<jsonxx::Object>("window").get<jsonxx::Boolean>("fullscreen") ? RENDERER_WINDOWMODE_FULLSCREEN : RENDERER_WINDOWMODE_WINDOWED;
if ( options.get<jsonxx::Object>( "window" ).has<jsonxx::Number>( "width" ) )
settings.sRenderer.nWidth = options.get<jsonxx::Object>( "window" ).get<jsonxx::Number>( "width" );
if ( options.get<jsonxx::Object>( "window" ).has<jsonxx::Number>( "height" ) )
settings.sRenderer.nHeight = options.get<jsonxx::Object>( "window" ).get<jsonxx::Number>( "height" );
if ( options.get<jsonxx::Object>( "window" ).has<jsonxx::Boolean>( "fullscreen" ) )
settings.sRenderer.windowMode = options.get<jsonxx::Object>( "window" ).get<jsonxx::Boolean>( "fullscreen" ) ? RENDERER_WINDOWMODE_FULLSCREEN : RENDERER_WINDOWMODE_WINDOWED;
if ( options.get<jsonxx::Object>( "window" ).has<jsonxx::Boolean>( "skipSetupDialog" ) )
skipSetupDialog = options.get<jsonxx::Object>( "window" ).get<jsonxx::Boolean>( "skipSetupDialog" );
}
if (!SetupDialog::Open( &settings ))
if ( !skipSetupDialog )
{
return -1;
if ( !SetupDialog::Open( &settings ) )
{
return -1;
}
}
#endif

Expand Down

0 comments on commit 8707888

Please # to comment.