support for different languages on WIN platform (Thanks Ilya)

better installation and deinstallation on WIN platform
This commit is contained in:
chris2511 2004-06-16 18:18:14 +00:00
parent 10017c9da5
commit 38dce1e58e
6 changed files with 82 additions and 37 deletions

View File

@ -659,7 +659,7 @@
PEM is a base64 encoded Certificate
PKCS#7 is an official Certificate exchange format
PKCS#12 is an encrypted official Key-Certificate exchange format</source>
<translation>DER ist ein Binärformat des Zertifikats
<translation type="obsolete">DER ist ein Binärformat des Zertifikats
PEM ist ein base64 codiertes Zertifikat
PKCS#7 ist ein offizielles Zertifikatsaustauschformat
PKCS#12 ist ein offizielles Austauschformat für Passwort gesicherte Schlüssel</translation>
@ -673,7 +673,19 @@ PKCS#12 ist ein offizielles Austauschformat für Passwort gesicherte Schlüssel<
<translation>Exportformat</translation>
</message>
<message>
<source>ExportCert_UI</source>
<source>DER is a binary format of the Certificate</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PEM is a base64 encoded Certificate</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PKCS#7 is an official Certificate exchange format</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PKCS#12 is an encrypted official Key-Certificate exchange format</source>
<translation type="unfinished"></translation>
</message>
</context>

View File

@ -579,10 +579,6 @@
<source>Cancel</source>
<translation type="unfinished">Cancelar</translation>
</message>
<message>
<source>ExportCert_UI</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Certificate export</source>
<translation type="unfinished"></translation>
@ -603,13 +599,6 @@
<source>Filename</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>DER is a binary format of the Certificate
PEM is a base64 encoded Certificate
PKCS#7 is an official Certificate exchange format
PKCS#12 is an encrypted official Key-Certificate exchange format</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Export Format</source>
<translation type="unfinished"></translation>
@ -618,6 +607,22 @@ PKCS#12 is an encrypted official Key-Certificate exchange format</source>
<source>OK</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>DER is a binary format of the Certificate</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PEM is a base64 encoded Certificate</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PKCS#7 is an official Certificate exchange format</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PKCS#12 is an encrypted official Key-Certificate exchange format</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ExportKey</name>

View File

@ -49,36 +49,57 @@
*
*/
#include <qapplication.h>
#include <qtranslator.h>
#include <qtextcodec.h>
#include "widgets/MainWindow.h"
#include "lib/func.h"
#ifdef WIN32
#include <windows.h>
#endif
int main( int argc, char *argv[] )
{
int ret = 0;
QApplication a( argc, argv );
// translation file for Qt
QTranslator qtTr( 0 );
qtTr.load( QString( "qt_" ) + QTextCodec::locale(), "." );
a.installTranslator( &qtTr );
//translation file for application strings
QTranslator xcaTr( 0 );
xcaTr.load( QString( "xca_" ) + QTextCodec::locale(), getPrefix() );
fprintf(stderr, "Locale: %s\nPrefix:%s\n",QTextCodec::locale(), getPrefix().latin1());
a.installTranslator( &xcaTr );
MainWindow *mw = new MainWindow( NULL, "Main Widget");
a.setMainWidget( mw );
if (mw->exitApp == 0) {
mw->show();
ret = a.exec();
}
delete mw;
int pkictr = pki_base::get_pki_counter();
int ret = 0, pkictr;
QString locale;
QTranslator qtTr( 0 );
QTranslator xcaTr( 0 );
MainWindow *mw;
QApplication a( argc, argv );
#ifdef WIN32
LANGID LangId = PRIMARYLANGID(GetUserDefaultLangID());
switch (LangId) {
case 0x07: locale="de"; break; //German
case 0x0a: locale="es"; break; //Spanish
case 0x0b: locale="fi"; break; //Finn
case 0x0c: locale="fr"; break; //French
case 0x0e: locale="hu"; break; //Hungarian
case 0x19: locale="ru"; break; //Russian
default: locale="c";
}
#else
locale = QTextCodec::locale();
#endif
qtTr.load( QString( "qt_" ) + locale, "." );
xcaTr.load( QString( "xca_" ) + locale, getPrefix() );
a.installTranslator( &qtTr );
a.installTranslator( &xcaTr );
fprintf(stderr, "Locale: %s\nPrefix:%s\n",
locale.latin1(), getPrefix().latin1());
mw = new MainWindow( NULL, "Main Widget");
a.setMainWidget( mw );
if (mw->exitApp == 0) {
mw->show();
ret = a.exec();
}
delete mw;
pkictr = pki_base::get_pki_counter();
if (pkictr)
printf("PKI Counter (%d)\n", pkictr);
return ret;
return ret;
}

View File

@ -2,7 +2,7 @@
all:
install:
install -m 755 -d $(destdir)/share/xca/ \
install -m 755 -d $(destdir)$(prefix)/share/xca/ \
$(destdir)$(prefix)/share/applications
install -m 644 *.txt $(destdir)$(prefix)/share/xca
install -m 644 xca.desktop $(destdir)$(prefix)/share/applications

View File

@ -1,3 +1,4 @@
; xca.nsi
;
; This is the .nsi script for creating the nullsoft windows installer
@ -47,6 +48,8 @@ Section "xca (required)"
File "misc\dn.txt"
File "misc\eku.txt"
File "misc\oids.txt"
File "misc\aia.txt"
File "lang\*.qm"
File "img\bigcert.png"
File "img\bigcrl.png"
File "img\bigcsr.png"
@ -105,6 +108,10 @@ Section "Uninstall"
Delete $INSTDIR\*.dll
Delete $INSTDIR\*.ico
Delete $INSTDIR\*.xpm
Delete $INSTDIR\*.log
Delete $INSTDIR\*.txt
Delete $INSTDIR\*.qm
Delete $INSTDIR\*.html
; MUST REMOVE UNINSTALLER, too
Delete $INSTDIR\uninstall.exe
RMDir $INSTDIR

View File

@ -1,5 +1,5 @@
HEADERS = lib/asn1int.h lib/asn1time.h lib/base.h lib/db_base.h lib/db_crl.h lib/db_key.h lib/db_temp.h lib/db_x509.h lib/db_x509req.h lib/db_x509super.h lib/exception.h lib/func.h lib/load_obj.h lib/oid.h lib/pass_info.h lib/pki_base.h lib/pki_crl.h lib/pki_key.h lib/pki_pkcs12.h lib/pki_pkcs7.h lib/pki_temp.h lib/pki_x509.h lib/pki_x509req.h lib/pki_x509super.h lib/x509name.h lib/x509rev.h lib/x509v3ext.h view/CertView.h view/CrlView.h view/KeyView.h view/ReqView.h view/TempView.h view/XcaListView.h widgets/CertDetail.h widgets/CertExtend.h widgets/CrlDetail.h widgets/ExportCert.h widgets/ExportKey.h widgets/ExportTinyCA.h widgets/ImportMulti.h widgets/KeyDetail.h widgets/MainWindow.h widgets/NewX509.h widgets/ReqDetail.h widgets/clicklabel.h widgets/distname.h widgets/validity.h
SOURCES = lib/asn1int.cpp lib/asn1time.cpp lib/db_base.cpp lib/db_crl.cpp lib/db_key.cpp lib/db_temp.cpp lib/db_x509.cpp lib/db_x509req.cpp lib/db_x509super.cpp lib/func.cpp lib/load_obj.cpp lib/main.cpp lib/oid.cpp lib/pass_info.cpp lib/pki_base.cpp lib/pki_crl.cpp lib/pki_key.cpp lib/pki_pkcs12.cpp lib/pki_pkcs7.cpp lib/pki_temp.cpp lib/pki_x509.cpp lib/pki_x509req.cpp lib/pki_x509super.cpp lib/x509name.cpp lib/x509rev.cpp lib/x509v3ext.cpp view/CertView.cpp view/CrlView.cpp view/KeyView.cpp view/ReqView.cpp view/TempView.cpp view/XcaListView.cpp widgets/CertDetail.cpp widgets/CertExtend.cpp widgets/CrlDetail.cpp widgets/ExportCert.cpp widgets/ExportKey.cpp widgets/ExportTinyCA.cpp widgets/ImportMulti.cpp widgets/KeyDetail.cpp widgets/MW_database.cpp widgets/MW_help.cpp widgets/MW_menu.cpp widgets/MainWindow.cpp widgets/NewX509.cpp widgets/NewX509_ext.cpp widgets/ReqDetail.cpp widgets/clicklabel.cpp widgets/distname.cpp widgets/validity.cpp
FORMS = ui/About.ui ui/CertDetail.ui ui/CertExtend.ui ui/CrlDetail.ui ui/ExportCert.ui ui/ExportKey.ui ui/ExportTinyCA.ui ui/Help.ui ui/ImportMulti.ui ui/KeyDetail.ui ui/MainWindow.ui ui/NewKey.ui ui/NewX509.ui ui/PassRead.ui ui/PassWrite.ui ui/ReqDetail.ui ui/TrustState.ui
TRANSLATIONS = lang/xca_de.ts lang/xca_es.ts
TRANSLATIONS = lang/xca_de.ts lang/xca_es.ts lang/xca_fr.ts
TARGET = xca