move installer strings to .ini files for easier importing
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
#include "global.h"
|
||||
#include "ExportNsisStrings.h"
|
||||
#include "RageFile.h"
|
||||
#include "RageUtil.h"
|
||||
#include "IniFile.h"
|
||||
|
||||
const RString INSTALLER_LANGUAGES_DIR = "Installer/Languages/";
|
||||
|
||||
void ExportNsisStrings::Do()
|
||||
{
|
||||
RageFile out;
|
||||
if( !out.Open( "nsis_strings_temp.inc", RageFile::WRITE ) )
|
||||
RageException::Throw("Error opening file for write.");
|
||||
|
||||
vector<RString> vs;
|
||||
GetDirListing( INSTALLER_LANGUAGES_DIR + "*.ini", vs, false, false );
|
||||
FOREACH_CONST( RString, vs, s )
|
||||
{
|
||||
RString sThrowAway, sLangCode;
|
||||
splitpath( *s, sThrowAway, sLangCode, sThrowAway );
|
||||
const LanguageInfo *pLI = GetLanguageInfo( sLangCode );
|
||||
|
||||
RString sLangNameUpper = pLI->szEnglishName;
|
||||
sLangNameUpper.MakeUpper();
|
||||
|
||||
IniFile ini;
|
||||
if( !ini.ReadFile( INSTALLER_LANGUAGES_DIR + *s ) )
|
||||
RageException::Throw("Error opening file for read.");
|
||||
FOREACH_CONST_Child( &ini, child )
|
||||
{
|
||||
FOREACH_CONST_Attr( child, attr )
|
||||
{
|
||||
RString sName = attr->first;
|
||||
RString sValue = attr->second;
|
||||
sValue.Replace( "\\n", "$\\n" );
|
||||
RString sLine = ssprintf( "LangString %s ${LANG_%s} \"%s\"", sName.c_str(), sLangNameUpper.c_str(), sValue.c_str() );
|
||||
out.PutLine( sLine );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* (c) 2006 Chris Danford
|
||||
* All rights reserved.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the
|
||||
* "Software"), to deal in the Software without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, and/or sell copies of the Software, and to permit persons to
|
||||
* whom the Software is furnished to do so, provided that the above
|
||||
* copyright notice(s) and this permission notice appear in all copies of
|
||||
* the Software and that both the above copyright notice(s) and this
|
||||
* permission notice appear in supporting documentation.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
|
||||
* THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS
|
||||
* INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT
|
||||
* OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||
* OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
||||
* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
@@ -0,0 +1,36 @@
|
||||
/* ExportNsisStrings - */
|
||||
|
||||
#ifndef ExportNsisStrings_H
|
||||
#define ExportNsisStrings_H
|
||||
|
||||
namespace ExportNsisStrings
|
||||
{
|
||||
void Do();
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* (c) 2006 Chris Danford
|
||||
* All rights reserved.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the
|
||||
* "Software"), to deal in the Software without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, and/or sell copies of the Software, and to permit persons to
|
||||
* whom the Software is furnished to do so, provided that the above
|
||||
* copyright notice(s) and this permission notice appear in all copies of
|
||||
* the Software and that both the above copyright notice(s) and this
|
||||
* permission notice appear in supporting documentation.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
|
||||
* THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS
|
||||
* INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT
|
||||
* OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||
* OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
||||
* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
@@ -130,15 +130,16 @@ Trail.cpp Trail.h TrailUtil.cpp TrailUtil.h TitleSubstitution.cpp TitleSubstitut
|
||||
Tween.cpp Tween.h
|
||||
|
||||
FileTypes = IniFile.cpp IniFile.h \
|
||||
MsdFile.cpp MsdFile.h \
|
||||
XmlFile.cpp XmlFile.h \
|
||||
XmlFileUtil.cpp XmlFileUtil.h
|
||||
MsdFile.cpp MsdFile.h \
|
||||
XmlFile.cpp XmlFile.h \
|
||||
XmlFileUtil.cpp XmlFileUtil.h
|
||||
|
||||
StepMania = StdString.h \
|
||||
StepMania.cpp StepMania.h \
|
||||
GameLoop.cpp GameLoop.h \
|
||||
global.cpp global.h \
|
||||
SpecialFiles.cpp SpecialFiles.h
|
||||
StepMania = ExportNsisStrings.cpp ExportNsisStrings.h \
|
||||
StdString.h \
|
||||
StepMania.cpp StepMania.h \
|
||||
GameLoop.cpp GameLoop.h \
|
||||
global.cpp global.h \
|
||||
SpecialFiles.cpp SpecialFiles.h
|
||||
|
||||
LoadingWindow = arch/LoadingWindow/LoadingWindow.h \
|
||||
arch/LoadingWindow/LoadingWindow_Null.h
|
||||
|
||||
@@ -1198,6 +1198,12 @@ cl /Zl /nologo /c verstub.cpp /Fo"$(IntDir)"\
|
||||
<Filter
|
||||
Name="StepMania"
|
||||
Filter="">
|
||||
<File
|
||||
RelativePath=".\ExportNsisStrings.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\ExportNsisStrings.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\GameLoop.cpp">
|
||||
</File>
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
#include "RageSurface_Load.h"
|
||||
#include "arch/arch.h"
|
||||
#include "CatalogXml.h"
|
||||
#include "ExportNsisStrings.h"
|
||||
|
||||
//
|
||||
// StepMania global classes
|
||||
@@ -1113,7 +1114,10 @@ int main(int argc, char* argv[])
|
||||
NSMAN->DisplayStartupStatus(); // If we're using networking show what happened
|
||||
|
||||
/* Run the main loop. */
|
||||
GameLoop::RunGameLoop();
|
||||
if( GetCommandlineArgument("ExportNsisStrings") )
|
||||
ExportNsisStrings::Do();
|
||||
else
|
||||
GameLoop::RunGameLoop();
|
||||
|
||||
/* If we ended mid-game, finish up. */
|
||||
GAMESTATE->EndGame();
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Microsoft Developer Studio Project File - Name="StepMania" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 60000
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
@@ -62,7 +62,7 @@ IntDir=.\../Debug6
|
||||
TargetDir=\cvs\stepmania\Program
|
||||
TargetName=StepMania-debug
|
||||
SOURCE="$(InputPath)"
|
||||
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PostBuild_Cmds=archutils\Win32\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi
|
||||
# End Special Build Tool
|
||||
|
||||
@@ -96,10 +96,10 @@ LINK32=link.exe
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
# Begin Special Build Tool
|
||||
IntDir=.\../Release6
|
||||
TargetDir=\cvs\stepmania\Program
|
||||
TargetDir=\cvs\stepmania-clean\Program
|
||||
TargetName=StepMania
|
||||
SOURCE="$(InputPath)"
|
||||
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PreLink_Cmds=archutils\Win32\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PostBuild_Cmds=archutils\Win32\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi
|
||||
# End Special Build Tool
|
||||
|
||||
@@ -654,6 +654,10 @@ SOURCE=.\RageUtil_WorkerThread.cpp
|
||||
|
||||
SOURCE=.\RageUtil_WorkerThread.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\RageUtilLua.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Data Structures"
|
||||
|
||||
@@ -1840,6 +1844,14 @@ SOURCE=.\archutils\Win32\WindowsResources.rc
|
||||
# End Group
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ExportNsisStrings.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ExportNsisStrings.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\GameLoop.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
Reference in New Issue
Block a user