Break line extension

This commit is contained in:
esteldunedain 2015-04-11 22:22:19 -03:00
parent a01864319a
commit d06e1b4a2a
7 changed files with 151 additions and 68 deletions

View File

@ -451,16 +451,16 @@
<Italian>A Terra!</Italian>
</Key>
<Key ID="STR_ACE_Interaction_TeamManagement">
<English>Team&lt;br/&gt;Management</English>
<German>Team&lt;br/&gt;Management</German>
<Spanish>Gestión&lt;br/&gt;de equipo</Spanish>
<French>Gestion&lt;br/&gt;d'équipe</French>
<Polish>Zarządzanie&lt;br/&gt;oddziałem</Polish>
<Czech>Správa&lt;br/&gt;týmu</Czech>
<Russian>Управление&lt;br/&gt;группой</Russian>
<Portuguese>Gerenciamento&lt;br/&gt;de Equipe</Portuguese>
<Italian>Organizzazione&lt;br/&gt;Squadra</Italian>
<Hungarian>Csapat&lt;br/&gt;kezelés</Hungarian>
<English>Team Management</English>
<German>Team Management</German>
<Spanish>Gestión de equipo</Spanish>
<French>Gestion d'équipe</French>
<Polish>Zarządzanie oddziałem</Polish>
<Czech>Správa týmu</Czech>
<Russian>Управление группой</Russian>
<Portuguese>Gerenciamento de Equipe</Portuguese>
<Italian>Organizzazione Squadra</Italian>
<Hungarian>Csapat kezelés</Hungarian>
</Key>
<Key ID="STR_ACE_Interaction_TeamRED">
<English>Red</English>
@ -511,52 +511,52 @@
<Hungarian>Sárga</Hungarian>
</Key>
<Key ID="STR_ACE_Interaction_JoinTeamRed">
<English>Join Team&lt;br/&gt;Red</English>
<German>Team Rot&lt;br/&gt;beitreten</German>
<Spanish>Unirse al&lt;br/&gt;equipo rojo</Spanish>
<French>Rejoindre&lt;br/&gt;Rouge</French>
<Polish>Dołącz do drużyny&lt;br/&gt;czerwonej</Polish>
<Czech>Připojit do&lt;br/&gt;Červeného Týmu</Czech>
<Russian>Присоединиться&lt;br/&gt;к красной группе</Russian>
<Portuguese>Unir-se à&lt;br/&gt;Equipe Vermelha</Portuguese>
<Italian>Entra nella&lt;br/&gt;Squadra Rossa</Italian>
<Hungarian>Csatlakozás a&lt;br/&gt;piros csapathoz</Hungarian>
<English>Join Team Red</English>
<German>Team Rot beitreten</German>
<Spanish>Unirse al equipo rojo</Spanish>
<French>Rejoindre Rouge</French>
<Polish>Dołącz do drużyny czerwonej</Polish>
<Czech>Připojit do Červeného Týmu</Czech>
<Russian>Присоединиться к красной группе</Russian>
<Portuguese>Unir-se à Equipe Vermelha</Portuguese>
<Italian>Entra nella Squadra Rossa</Italian>
<Hungarian>Csatlakozás a piros csapathoz</Hungarian>
</Key>
<Key ID="STR_ACE_Interaction_JoinTeamGreen">
<English>Join Team&lt;br/&gt;Green</English>
<German>Team Grün&lt;br/&gt;beitreten</German>
<Spanish>Unirse al&lt;br/&gt;equipo verde</Spanish>
<French>Rejoindre&lt;br/&gt;Verte</French>
<Polish>Dołącz do&lt;br/&gt;drużyny zielonej</Polish>
<Czech>Připojit do&lt;br/&gt;Zeleného Týmu</Czech>
<Russian>Присоединиться&lt;br/&gt;к зеленой группе</Russian>
<Portuguese>Unir-se à&lt;br/&gt;Equipe Verde</Portuguese>
<Italian>Entra nella&lt;br/&gt;Squadra Verde</Italian>
<Hungarian>Csatlakozás a&lt;br/&gt;zöld csapathoz</Hungarian>
<English>Join Team Green</English>
<German>Team Grün beitreten</German>
<Spanish>Unirse al equipo verde</Spanish>
<French>Rejoindre Verte</French>
<Polish>Dołącz do drużyny zielonej</Polish>
<Czech>Připojit do Zeleného Týmu</Czech>
<Russian>Присоединиться к зеленой группе</Russian>
<Portuguese>Unir-se à Equipe Verde</Portuguese>
<Italian>Entra nella Squadra Verde</Italian>
<Hungarian>Csatlakozás a zöld csapathoz</Hungarian>
</Key>
<Key ID="STR_ACE_Interaction_JoinTeamBlue">
<English>Join Team&lt;br/&gt;Blue</English>
<German>Team Blau&lt;br/&gt;beitreten</German>
<Spanish>Unirse al&lt;br/&gt;equipo azul</Spanish>
<French>Rejoindre&lt;br/&gt;Bleue</French>
<Polish>Dołącz do&lt;br/&gt;drużyny niebieskiej</Polish>
<Czech>Připojit do&lt;br/&gt;Modrého Týmu</Czech>
<Russian>Присоединиться&lt;br/&gt;к синей группе</Russian>
<Portuguese>Unir-se à&lt;br/&gt;Equipe Azul</Portuguese>
<Italian>Entra nella&lt;br/&gt;Squadra Blu</Italian>
<Hungarian>Csatlakozás a&lt;br/&gt;kék csapathoz</Hungarian>
<English>Join Team Blue</English>
<German>Team Blau beitreten</German>
<Spanish>Unirse al equipo azul</Spanish>
<French>Rejoindre Bleue</French>
<Polish>Dołącz do drużyny niebieskiej</Polish>
<Czech>Připojit do Modrého Týmu</Czech>
<Russian>Присоединиться к синей группе</Russian>
<Portuguese>Unir-se à Equipe Azul</Portuguese>
<Italian>Entra nella Squadra Blu</Italian>
<Hungarian>Csatlakozás a kék csapathoz</Hungarian>
</Key>
<Key ID="STR_ACE_Interaction_JoinTeamYellow">
<English>Join Team&lt;br/&gt;Yellow</English>
<German>Team Gelb&lt;br/&gt;beitreten</German>
<Spanish>Unirse al&lt;br/&gt;equipo amarillo</Spanish>
<French>Rejoindre&lt;br/&gt;Jaune</French>
<Polish>Dołącz do&lt;br/&gt;drużyny żółtej</Polish>
<Czech>Připojit do&lt;br/&gt;Žlutého Týmu</Czech>
<Russian>Присоединиться&lt;br/&gt;к желтой группе</Russian>
<Portuguese>Unir-se à&lt;br/&gt;Equipe Amarela</Portuguese>
<Italian>Entra nella&lt;br/&gt;Squadra Gialla</Italian>
<Hungarian>Csatlakozás a&lt;br/&gt;sárga csapathoz</Hungarian>
<English>Join Team Yellow</English>
<German>Team Gelb beitreten</German>
<Spanish>Unirse al equipo amarillo</Spanish>
<French>Rejoindre Jaune</French>
<Polish>Dołącz do drużyny żółtej</Polish>
<Czech>Připojit do Žlutého Týmu</Czech>
<Russian>Присоединиться к желтой группе</Russian>
<Portuguese>Unir-se à Equipe Amarela</Portuguese>
<Italian>Entra nella Squadra Gialla</Italian>
<Hungarian>Csatlakozás a sárga csapathoz</Hungarian>
</Key>
<Key ID="STR_ACE_Interaction_JoinedTeam">
<English>You joined Team %1</English>

View File

@ -3,14 +3,14 @@
<Project name="ACE">
<Package name="Laser_SelfDesignate">
<Key ID="STR_ACE_Laser_SelfDesignate_DesignatorOn">
<English>Laser&lt;br/&gt;Designator On</English>
<German>Lasermarkierer&lt;br/&gt;an</German>
<Spanish>Laser&lt;br/&gt;Designador encendido</Spanish>
<English>Laser Designator On</English>
<German>Lasermarkierer an</German>
<Spanish>Laser Designador encendido</Spanish>
</Key>
<Key ID="STR_ACE_Laser_SelfDesignate_DesignatorOff">
<English>Laser&lt;br/&gt;Designator Off</English>
<German>Lasermarkierer&lt;br/&gt;aus</German>
<Spanish>Laser&lt;br/&gt;Designador apagado</Spanish>
<English>Laser Designator Off</English>
<German>Lasermarkierer aus</German>
<Spanish>Laser Designador apagado</Spanish>
</Key>
</Package>
</Project>

View File

@ -3,16 +3,16 @@
<Project name="ACE">
<Package name="MagazineRepack">
<Key ID="STR_ACE_MagazineRepack_RepackMagazines">
<English>Repack&lt;br/&gt;Magazines</English>
<German>Magazine&lt;br/&gt;umpacken</German>
<Spanish>Reorganizar&lt;br/&gt;cargadores</Spanish>
<French>Réorganiser&lt;br/&gt;chargeurs</French>
<Polish>Przepakuj&lt;br/&gt;magazynki</Polish>
<Czech>Přepáskovat&lt;br/&gt;Zásobníky</Czech>
<Italian>Ricarica&lt;br/&gt;Caricatori</Italian>
<Portuguese>Reorganizar&lt;br/&gt;Carregadores</Portuguese>
<Hungarian>Újratárazás&lt;br/&gt;</Hungarian>
<Russian>Перепаковать&lt;br/&gt;магазины</Russian>
<English>Repack Magazines</English>
<German>Magazine umpacken</German>
<Spanish>Reorganizar cargadores</Spanish>
<French>Réorganiser chargeurs</French>
<Polish>Przepakuj magazynki</Polish>
<Czech>Přepáskovat Zásobníky</Czech>
<Italian>Ricarica Caricatori</Italian>
<Portuguese>Reorganizar Carregadores</Portuguese>
<Hungarian>Újratárazás </Hungarian>
<Russian>Перепаковать магазины</Russian>
</Key>
<Key ID="STR_ACE_MagazineRepack_SelectMagazineMenu">
<English>Select Magazine Menu</English>

View File

@ -119,8 +119,8 @@
<Russian>Проверить температуру оружия</Russian>
</Key>
<Key ID="STR_ACE_Overheating_CheckTemperatureShort">
<English>Check weapon&lt;br/&gt;temperature</English>
<Spanish>Verificar temperatura&lt;br/&gt;del arma</Spanish>
<English>Check weapon temperature</English>
<Spanish>Verificar temperatura del arma</Spanish>
</Key>
<Key ID="STR_ACE_Overheating_CheckingTemperature">
<English>Checking temperature ...</English>

View File

@ -27,5 +27,6 @@ include_directories(AFTER "common")
# Add extensions to build here
add_subdirectory(fcs)
add_subdirectory(breakline)
message("Build Type: ${CMAKE_BUILD_TYPE}")

View File

@ -0,0 +1,11 @@
set(ACE_EXTENSION_NAME "ace_breakLine")
file(GLOB SOURCES *.h *.hpp *.c *.cpp)
add_library( ${ACE_EXTENSION_NAME} SHARED ${SOURCES})
add_dependencies(${ACE_EXTENSION_NAME} ace_common)
SET_TARGET_PROPERTIES(${ACE_EXTENSION_NAME} PROPERTIES PREFIX "")
if(CMAKE_COMPILER_IS_GNUCXX)
set_target_properties(${ACE_EXTENSION_NAME} PROPERTIES LINK_SEARCH_START_STATIC 1)
set_target_properties(${ACE_EXTENSION_NAME} PROPERTIES LINK_SEARCH_END_STATIC 1)
endif()

View File

@ -0,0 +1,71 @@
/*
* ace_breakLine.cpp
*
* Takes a string and insert as many line breaks as needed so it fits a given width
*
* Takes:
* Localized string as string
* Example: "Check weapon temperature"
*
* Returns:
* String with line breaks
*/
#include "ace_common.h"
#include <sstream>
#include <vector>
#include <string>
#define MAXCHARACTERS 11
static char version[] = "1.0";
extern "C" {
__declspec (dllexport) void __stdcall RVExtension(char *output, int outputSize, const char *function);
};
std::vector<std::string> splitString(std::string input) {
std::istringstream ss(input);
std::string token;
std::vector<std::string> output;
while (std::getline(ss, token, ',')) {
output.push_back(token);
}
return output;
}
std::string addLineBreaks(std::string input) {
std::stringstream sstream;
int numChar = 0;
for ( int i = 0 ; i < input.length(); i++) {
if (numChar >= MAXCHARACTERS && input[i] == ' ') {
sstream << "<br/>";//"&lt;br/&gt;";
numChar = 0;
} else {
sstream << input[i];
numChar++;
}
}
return sstream.str();
}
// i like to live dangerously. jk, fix strncpy sometime pls.
#pragma warning( push )
#pragma warning( disable : 4996 )
void __stdcall RVExtension(char *output, int outputSize, const char *function) {
if (!strcmp(function, "version")) {
strncpy(output, version, outputSize);
} else {
std::vector<std::string> argStrings = splitString(function);
std::string originalString = argStrings[0];
strcpy(output, addLineBreaks(originalString).c_str());
output[outputSize - 1] = '\0';
}
}
#pragma warning( pop )