summaryrefslogtreecommitdiff
authorchristophe <christophe>2003-10-18 19:53:17 (UTC)
committer christophe <christophe>2003-10-18 19:53:17 (UTC)
commit38d72acc2225b88b2f561fa59565d4c66261f1c3 (patch) (unidiff)
treee4e11af47e75a5147a0028195c861b4af82fa38f
parent1f128cbf0741b2e4baf1ab5051a7a293fef7e22c (diff)
downloadopie-38d72acc2225b88b2f561fa59565d4c66261f1c3.zip
opie-38d72acc2225b88b2f561fa59565d4c66261f1c3.tar.gz
opie-38d72acc2225b88b2f561fa59565d4c66261f1c3.tar.bz2
Little bug fix on -opie option handling.
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--development/translation/opie-lrelease/main.cpp69
1 files changed, 50 insertions, 19 deletions
diff --git a/development/translation/opie-lrelease/main.cpp b/development/translation/opie-lrelease/main.cpp
index e5c1a0c..4c7352f 100644
--- a/development/translation/opie-lrelease/main.cpp
+++ b/development/translation/opie-lrelease/main.cpp
@@ -62,92 +62,123 @@ static void releaseQmFile( const QString& tsFileName, bool verbose )
62 } else { 62 } else {
63 fprintf( stderr, 63 fprintf( stderr,
64 "lrelease warning: For some reason, I cannot load '%s'\n", 64 "lrelease warning: For some reason, I cannot load '%s'\n",
65 tsFileName.latin1() ); 65 tsFileName.latin1() );
66 } 66 }
67} 67}
68
68static void metaQmFile( const QString &opiedir, 69static void metaQmFile( const QString &opiedir,
69 const QStringList& lang, 70 const QStringList& lang,
70 const QString& basename, 71 const QString& basename,
71 bool isLib, bool verb ) { 72 bool isLib, bool verb ) {
72 QString target = basename + ".ts"; 73 QString target = basename + ".ts";
74
73 if ( isLib ) target.prepend("lib"); 75 if ( isLib ) target.prepend("lib");
74 76
75 for ( QStringList::ConstIterator it = lang.begin(); it != lang.end(); 77for ( QStringList::ConstIterator it = lang.begin(); it != lang.end(); ++it )
76 ++it ) { 78{
77 QString fileName = opiedir + "/i18n/" + (*it) + "/" + target; 79 QString fileName = opiedir + "/i18n/" + (*it) + "/" + target;
78 qWarning("Target is %s", fileName.latin1() ); 80 qWarning("Target is %s", fileName.latin1() );
79 releaseQmFile( fileName, verb ); 81 releaseQmFile( fileName, verb );
80 } 82 }
81} 83}
84
82int main( int argc, char **argv ) 85int main( int argc, char **argv )
83{ 86{
84 bool verbose = FALSE; 87 bool verbose = FALSE;
85 bool metTranslations = FALSE; 88// bool metTranslations = FALSE;
86 int numFiles = 0; 89 int numFiles = 0;
87 QString opiedir; 90 QString opiedir;
88 QStringList languageList = OPIE::self()->languageList( opiedir ); 91 QStringList languageList = OPIE::self()->languageList( opiedir );
89 92
90 for ( int i = 1; i < argc; i++ ) { 93for ( int i = 1; i < argc; i++ )
91 if ( qstrcmp(argv[i], "-help") == 0 ) { 94{
95 if ( qstrcmp(argv[i], "-help") == 0 )
96 {
92 printUsage(); 97 printUsage();
93 return 0; 98 return 0;
94 } else if ( qstrcmp(argv[i], "-verbose") == 0 ) { 99 }
100 else if ( qstrcmp(argv[i], "-verbose") == 0 )
101 {
95 verbose = TRUE; 102 verbose = TRUE;
96 continue; 103 continue;
97 } else if ( qstrcmp(argv[i], "-version") == 0 ) { 104 }
105 else if ( qstrcmp(argv[i], "-version") == 0 )
106 {
98 fprintf( stderr, "lrelease version %s\n", QT_VERSION_STR ); 107 fprintf( stderr, "lrelease version %s\n", QT_VERSION_STR );
99 return 0; 108 return 0;
100 } else if ( qstrcmp(argv[i], "-opie") == 0 ) { 109 }
101 if ( i+1 < argc ) { 110 else if ( qstrcmp(argv[i], "-opie") == 0 )
102 opiedir = argv[i+1]; 111 {
112 i++;
113 if ( i < argc )
114 {
115 opiedir = argv[i];
103 languageList = OPIE::self()->languageList(opiedir); 116 languageList = OPIE::self()->languageList(opiedir);
117 continue;
104 } 118 }
119 // else
120 // {
121 fprintf( stderr, "lrelease error: -opie option need a parameter\n" );
122 printUsage();
123 return 1;
124 // }
105 } 125 }
106 126
107 numFiles++; 127 numFiles++;
108 QFile f( argv[i] ); 128 QFile f( argv[i] );
109 if ( !f.open(IO_ReadOnly) ) { 129 if ( !f.open(IO_ReadOnly) )
130 {
110 fprintf( stderr, 131 fprintf( stderr,
111 "lrelease error: Cannot open file '%s': %s\n", argv[i], 132 "lrelease error: Cannot open file '%s': %s\n",
133 argv[i],
112 strerror(errno) ); 134 strerror(errno) );
113 return 1; 135 return 1;
114 } 136 }
115 137
116 QTextStream t( &f ); 138 QTextStream t( &f );
117 QString fullText = t.read(); 139 QString fullText = t.read();
118 f.close(); 140 f.close();
119 141
120 if ( fullText.find(QString("<!DOCTYPE TS>")) >= 0 ) { 142 if ( fullText.find(QString("<!DOCTYPE TS>")) >= 0 )
143 {
121 releaseQmFile( argv[i], verbose ); 144 releaseQmFile( argv[i], verbose );
122 } else { 145 }
146 else
147 {
123 QString target; 148 QString target;
124 bool isLib = FALSE; 149 bool isLib = FALSE;
125 QMap<QString, QString> tagMap = proFileTagMap( fullText ); 150 QMap<QString, QString> tagMap = proFileTagMap( fullText );
126 QMap<QString, QString>::Iterator it; 151 QMap<QString, QString>::Iterator it;
127 152
128 for ( it = tagMap.begin(); it != tagMap.end(); ++it ) { 153 for ( it = tagMap.begin(); it != tagMap.end(); ++it )
154 {
129 QStringList toks = QStringList::split( ' ', it.data() ); 155 QStringList toks = QStringList::split( ' ', it.data() );
130 QStringList::Iterator t; 156 QStringList::Iterator t;
131 157
132 for ( t = toks.begin(); t != toks.end(); ++t ) { 158 for ( t = toks.begin(); t != toks.end(); ++t )
133 if ( it.key() == "TARGET" ) { 159 {
160 if ( it.key() == "TARGET" )
161 {
134 target = *t; 162 target = *t;
135 qWarning("%s %s", it.key().latin1(), (*t).latin1() ); 163 qWarning("%s %s", it.key().latin1(), (*t).latin1() );
136 }else if ( it.key() == "TEMPLATE" ) { 164 }
165 else if ( it.key() == "TEMPLATE" )
166 {
137 if ( (*t).stripWhiteSpace().lower() == "lib" ) 167 if ( (*t).stripWhiteSpace().lower() == "lib" )
138 isLib = TRUE; 168 isLib = TRUE;
139 } 169 }
140 } 170 }
141 } 171 }
142 qWarning("%s", target.latin1() ); 172 qWarning("%s", target.latin1() );
143 metaQmFile( OPIE::self()->opieDir(opiedir), 173 metaQmFile( OPIE::self()->opieDir(opiedir),
144 languageList, target, isLib, verbose ); 174 languageList, target, isLib, verbose );
145 } 175 }
146 } 176 }
147 177
148 if ( numFiles == 0 ) { 178if ( numFiles == 0 )
179{
149 printUsage(); 180 printUsage();
150 return 1; 181 return 1;
151 } 182 }
152 return 0; 183 return 0;
153} 184}