Ajout de l'option --lang-dir pour redefinir le dossier contenant les fichiers de langue

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@378 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavierqet
2008-08-17 21:08:31 +00:00
parent bee622e7cc
commit 147deca55d
6 changed files with 94 additions and 36 deletions

Binary file not shown.

View File

@@ -255,32 +255,32 @@
<context>
<name>DiagramPrintDialog</name>
<message>
<location filename="../sources/diagramprintdialog.cpp" line="128"/>
<location filename="../sources/diagramprintdialog.cpp" line="146"/>
<source>Options d&apos;impression</source>
<translation>Print options</translation>
</message>
<message>
<location filename="../sources/diagramprintdialog.cpp" line="130"/>
<location filename="../sources/diagramprintdialog.cpp" line="148"/>
<source>Utiliser toute la feuille</source>
<translation>Use full page</translation>
</message>
<message>
<location filename="../sources/diagramprintdialog.cpp" line="131"/>
<location filename="../sources/diagramprintdialog.cpp" line="149"/>
<source>Adapter le sch&#xe9;ma &#xe0; la page</source>
<translation>Fit diagram to page</translation>
</message>
<message>
<location filename="../sources/diagramprintdialog.cpp" line="132"/>
<location filename="../sources/diagramprintdialog.cpp" line="150"/>
<source>Plage de </source>
<translation>Range from </translation>
</message>
<message>
<location filename="../sources/diagramprintdialog.cpp" line="134"/>
<location filename="../sources/diagramprintdialog.cpp" line="152"/>
<source> &#xe0; </source>
<translation> to </translation>
</message>
<message>
<location filename="../sources/diagramprintdialog.cpp" line="173"/>
<location filename="../sources/diagramprintdialog.cpp" line="191"/>
<source>Nombre total de pages : </source>
<translation>Total pages count: </translation>
</message>
@@ -323,17 +323,17 @@
<translation>Do you wish to save the diagram </translation>
</message>
<message>
<location filename="../sources/diagramview.cpp" line="665"/>
<location filename="../sources/diagramview.cpp" line="669"/>
<source>nouveau sch&#xe9;ma</source>
<translation>new diagram</translation>
</message>
<message>
<location filename="../sources/diagramview.cpp" line="725"/>
<location filename="../sources/diagramview.cpp" line="729"/>
<source>&#xc9;diter les propri&#xe9;t&#xe9;s d&apos;un conducteur</source>
<translation>Edit conductor properties</translation>
</message>
<message>
<location filename="../sources/diagramview.cpp" line="559"/>
<location filename="../sources/diagramview.cpp" line="563"/>
<source>Propri&#xe9;t&#xe9;s du sch&#xe9;ma</source>
<translation>Diagram properties</translation>
</message>
@@ -363,7 +363,7 @@
<translation type="obsolete">Height:</translation>
</message>
<message>
<location filename="../sources/diagramview.cpp" line="784"/>
<location filename="../sources/diagramview.cpp" line="788"/>
<source>&#xc9;diter les propri&#xe9;t&#xe9;s par d&#xe9;faut des conducteurs</source>
<translation>Edit conductors default properties</translation>
</message>
@@ -383,7 +383,7 @@
<translation>This document seems to have been saved by a more recent version of QElectroTech. The opening of the document may fail totally or partially.</translation>
</message>
<message>
<location filename="../sources/diagramview.cpp" line="539"/>
<location filename="../sources/diagramview.cpp" line="542"/>
<source>schema</source>
<translation>diagram</translation>
</message>
@@ -1265,87 +1265,87 @@ Changes will be permanent.</translation>
<context>
<name>QETApp</name>
<message>
<location filename="../sources/qetapp.cpp" line="722"/>
<location filename="../sources/qetapp.cpp" line="743"/>
<source>QElectroTech</source>
<translation>QElectroTech</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="696"/>
<location filename="../sources/qetapp.cpp" line="717"/>
<source>&amp;Quitter</source>
<translation>&amp;Quit</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="697"/>
<location filename="../sources/qetapp.cpp" line="718"/>
<source>&amp;Masquer</source>
<translation>&amp;Hide</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="698"/>
<location filename="../sources/qetapp.cpp" line="719"/>
<source>&amp;Restaurer</source>
<translation>&amp;Show</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="699"/>
<location filename="../sources/qetapp.cpp" line="720"/>
<source>&amp;Masquer tous les &#xe9;diteurs de sch&#xe9;ma</source>
<translation>&amp;Hide diagram editors</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="700"/>
<location filename="../sources/qetapp.cpp" line="721"/>
<source>&amp;Restaurer tous les &#xe9;diteurs de sch&#xe9;ma</source>
<translation>&amp;Show diagram editors</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="701"/>
<location filename="../sources/qetapp.cpp" line="722"/>
<source>&amp;Masquer tous les &#xe9;diteurs d&apos;&#xe9;l&#xe9;ment</source>
<translation>&amp;Hide element editors</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="702"/>
<location filename="../sources/qetapp.cpp" line="723"/>
<source>&amp;Restaurer tous les &#xe9;diteurs d&apos;&#xe9;l&#xe9;ment</source>
<translation>&amp;Show element editors</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="703"/>
<location filename="../sources/qetapp.cpp" line="724"/>
<source>&amp;Nouvel &#xe9;diteur de sch&#xe9;ma</source>
<translation>&amp;New diagram editor</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="704"/>
<location filename="../sources/qetapp.cpp" line="725"/>
<source>&amp;Nouvel &#xe9;diteur d&apos;&#xe9;l&#xe9;ment</source>
<translation>&amp;New element editor</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="706"/>
<location filename="../sources/qetapp.cpp" line="727"/>
<source>Ferme l&apos;application QElectroTech</source>
<translation>Closes QElectroTech</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="707"/>
<location filename="../sources/qetapp.cpp" line="728"/>
<source>R&#xe9;duire QElectroTech dans le systray</source>
<translation>Reduces QElectroTech into the systray</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="708"/>
<location filename="../sources/qetapp.cpp" line="729"/>
<source>Restaurer QElectroTech</source>
<translation>Restore QElectroTech</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="741"/>
<location filename="../sources/qetapp.cpp" line="762"/>
<source>&#xc9;diteurs de sch&#xe9;mas</source>
<translation>Diagram editors</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="757"/>
<location filename="../sources/qetapp.cpp" line="778"/>
<source>&#xc9;diteurs d&apos;&#xe9;l&#xe9;ment</source>
<translation>Element editors</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="818"/>
<location filename="../sources/qetapp.cpp" line="839"/>
<source>Usage : </source>
<translation>Usage: </translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="824"/>
<location filename="../sources/qetapp.cpp" line="845"/>
<source>QElectroTech, une application de r&#xe9;alisation de sch&#xe9;mas &#xe9;lectriques.
Options disponibles :
@@ -1362,7 +1362,7 @@ Available options:
</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="819"/>
<location filename="../sources/qetapp.cpp" line="840"/>
<source> [options] [fichier]...
</source>
@@ -1371,39 +1371,46 @@ Available options:
</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="827"/>
<location filename="../sources/qetapp.cpp" line="848"/>
<source> --common-elements-dir=DIR Definir le dossier de la collection d&apos;elements
</source>
<translation> --common-elements-dir=DIR Define the elements collection directory
</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="830"/>
<location filename="../sources/qetapp.cpp" line="851"/>
<source> --config-dir=DIR Definir le dossier de configuration
</source>
<translation> --config-dir=DIR Define configuration directory
</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="77"/>
<location filename="../sources/qetapp.cpp" line="78"/>
<source>Chargement... &#xc9;diteur de sch&#xe9;mas</source>
<translation>Loading... Diagrams editor</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="80"/>
<location filename="../sources/qetapp.cpp" line="81"/>
<source>Chargement... Ouverture des fichiers</source>
<translation>Loading... Opening files</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="628"/>
<location filename="../sources/qetapp.cpp" line="649"/>
<source>Chargement...</source>
<translation>Loading...</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="692"/>
<location filename="../sources/qetapp.cpp" line="713"/>
<source>Chargement... ic&#xf4;ne du systray</source>
<translation>Loading... Systray icon</translation>
</message>
<message>
<location filename="../sources/qetapp.cpp" line="852"/>
<source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue
</source>
<translation> --lang-dir=DIR Define the language files directory
</translation>
</message>
</context>
<context>
<name>QETDiagramEditor</name>

View File

@@ -26,6 +26,7 @@
QString QETApp::common_elements_dir = QString();
QString QETApp::config_dir = QString();
QString QETApp::lang_dir = QString();
QString QETApp::diagram_texts_font = QString();
RecentFiles *QETApp::projects_recent_files_ = 0;
RecentFiles *QETApp::elements_recent_files_ = 0;
@@ -337,15 +338,31 @@ void QETApp::overrideConfigDir(const QString &new_cd) {
}
#endif
/**
Redefinit le chemin du dossier contenant les fichiers de langue
@param new_ld Nouveau chemin du dossier contenant les fichiers de langue
*/
void QETApp::overrideLangDir(const QString &new_ld) {
QFileInfo new_ld_info(new_ld);
if (new_ld_info.isDir()) {
lang_dir = new_ld_info.absoluteFilePath();
if (!lang_dir.endsWith("/")) lang_dir += "/";
}
}
/**
@return Le chemin du dossier contenant les fichiers de langue
*/
QString QETApp::languagesPath() {
if (!lang_dir.isEmpty()) {
return(lang_dir);
} else {
#ifndef QET_LANG_PATH
return(QDir::current().path() + "/lang/");
#else
return(QUOTE(QET_LANG_PATH));
#endif
}
}
/**
@@ -603,6 +620,10 @@ void QETApp::parseArguments() {
}
#endif
if (qet_arguments_.langDirSpecified()) {
overrideLangDir(qet_arguments_.langDir());
}
if (qet_arguments_.printLicenseRequested()) {
printLicense();
non_interactive_execution_ = true;
@@ -827,6 +848,7 @@ void QETApp::printHelp() {
#ifdef QET_ALLOW_OVERRIDE_CD_OPTION
+ tr(" --config-dir=DIR Definir le dossier de configuration\n")
#endif
+ tr(" --lang-dir=DIR Definir le dossier contenant les fichiers de langue\n")
);
std::cout << qPrintable(help) << std::endl;
}

View File

@@ -72,6 +72,8 @@ class QETApp : public QETSingleApplication {
static QString config_dir; ///< Dossier contenant la configuration et la collection d'elements de l'utilisateur
#endif
public:
static void overrideLangDir(const QString &);
static QString lang_dir; ///< Dossier contenant les fichiers de langue
static QString diagramTextsFont();
protected:

View File

@@ -59,6 +59,7 @@ QETArguments::QETArguments(const QETArguments &qet_arguments) :
#ifdef QET_ALLOW_OVERRIDE_CD_OPTION
config_dir_(qet_arguments.config_dir_),
#endif
lang_dir_(qet_arguments.lang_dir_),
print_help_(qet_arguments.print_help_),
print_license_(qet_arguments.print_license_),
print_version_(qet_arguments.print_version_)
@@ -80,6 +81,7 @@ QETArguments &QETArguments::operator=(const QETArguments &qet_arguments) {
#ifdef QET_ALLOW_OVERRIDE_CD_OPTION
config_dir_ = qet_arguments.config_dir_;
#endif
lang_dir_ = qet_arguments.lang_dir_;
print_help_ = qet_arguments.print_help_;
print_license_ = qet_arguments.print_license_;
print_version_ = qet_arguments.print_version_;
@@ -199,7 +201,8 @@ void QETArguments::handleFileArgument(const QString &file) {
Gere les arguments correspondant potentiellement a une option.
Les options reconnues sont :
* --common-elements-dir=
* --config-dir
* --config-dir=
* --lang-dir=
* --help
* --version
* -v
@@ -237,6 +240,12 @@ void QETArguments::handleOptionArgument(const QString &option) {
#endif
QString ld_arg("--lang-dir=");
if (option.startsWith(ld_arg)) {
lang_dir_ = option.mid(ld_arg.length());
return;
}
// a ce stade, l'option est inconnue
unknown_options_ << option;
}
@@ -276,6 +285,21 @@ QString QETArguments::configDir() const {
}
#endif
/**
@return true si l'utilisateur a specifie un dossier pour les fichiers de langue
*/
bool QETArguments::langDirSpecified() const {
return(!lang_dir_.isEmpty());
}
/**
@return le dossier de langue specifie par l'utilisateur.
Si l'utilisateur n'en a pas specifie, une chaine vide est retournee.
*/
QString QETArguments::langDir() const {
return(lang_dir_);
}
/**
@return true si les arguments comportent une demande d'affichage de l'aide,
false sinon

View File

@@ -50,6 +50,8 @@ class QETArguments : public QObject {
virtual bool configDirSpecified() const;
virtual QString configDir() const;
#endif
virtual bool langDirSpecified() const;
virtual QString langDir() const;
virtual bool printHelpRequested() const;
virtual bool printLicenseRequested() const;
virtual bool printVersionRequested() const;
@@ -74,6 +76,7 @@ class QETArguments : public QObject {
#ifdef QET_ALLOW_OVERRIDE_CD_OPTION
QString config_dir_;
#endif
QString lang_dir_;
bool print_help_;
bool print_license_;
bool print_version_;