]>
Commit | Line | Data |
---|---|---|
8c53efe6 | 1 | diff -Nur qt-x11-opensource-src-4.2.1.orig/tools/designer/src/designer/qdesigner.cpp qt-x11-opensource-src-4.2.1.chng/tools/designer/src/designer/qdesigner.cpp |
2 | --- qt-x11-opensource-src-4.2.1.orig/tools/designer/src/designer/qdesigner.cpp 2006-10-20 17:35:40.000000000 +0200 | |
3 | +++ qt-x11-opensource-src-4.2.1.chng/tools/designer/src/designer/qdesigner.cpp 2006-11-28 14:22:20.000000000 +0100 | |
7d7f0096 | 4 | @@ -112,11 +112,11 @@ |
5 | QTranslator *qtTranslator = new QTranslator(this); | |
8c53efe6 | 6 | |
7d7f0096 | 7 | const QString localSysName = QLocale::system().name(); |
8 | - QString translatorFileName = QLatin1String("designer_"); | |
9 | + QString translatorFileName = QLatin1String("qt4-designer_"); | |
10 | translatorFileName += localSysName; | |
11 | translator->load(translatorFileName, resourceDir); | |
8c53efe6 | 12 | |
7d7f0096 | 13 | - translatorFileName = QLatin1String("qt_"); |
14 | + translatorFileName = QLatin1String("qt4_"); | |
15 | translatorFileName += localSysName; | |
16 | qtTranslator->load(translatorFileName, resourceDir); | |
17 | installTranslator(translator); | |
8c53efe6 | 18 | diff -Nur qt-x11-opensource-src-4.2.1.orig/tools/linguist/linguist/main.cpp qt-x11-opensource-src-4.2.1.chng/tools/linguist/linguist/main.cpp |
19 | --- qt-x11-opensource-src-4.2.1.orig/tools/linguist/linguist/main.cpp 2006-10-20 17:35:26.000000000 +0200 | |
20 | +++ qt-x11-opensource-src-4.2.1.chng/tools/linguist/linguist/main.cpp 2006-11-28 14:21:19.000000000 +0100 | |
c57a122a | 21 | @@ -83,9 +83,9 @@ |
787f1ada | 22 | QTranslator translator; |
787f1ada | 23 | QTranslator qtTranslator; |
c57a122a AM |
24 | QString sysLocale = QLocale::system().name(); |
25 | - if (translator.load(QLatin1String("linguist_") + sysLocale, resourceDir)) { | |
26 | + if (translator.load(QLatin1String("qt4-linguist_") + sysLocale, resourceDir)) { | |
27 | app.installTranslator(&translator); | |
28 | - if (qtTranslator.load(QLatin1String("qt_") + sysLocale, resourceDir)) | |
29 | + if (qtTranslator.load(QLatin1String("qt4_") + sysLocale, resourceDir)) | |
30 | app.installTranslator(&qtTranslator); | |
31 | else | |
32 | app.removeTranslator(&translator); | |
fc14f980 | 33 | --- qt-everywhere-opensource-src-4.7.0/src/corelib/kernel/qtranslator.cpp.orig 2010-09-10 11:05:25.000000000 +0200 |
34 | +++ qt-everywhere-opensource-src-4.7.0/src/corelib/kernel/qtranslator.cpp 2010-09-21 21:36:42.645202096 +0200 | |
35 | @@ -55,6 +55,7 @@ | |
fc14f980 | 36 | #include "qtranslator_p.h" |
f05158ee | 37 | #include "qlocale.h" |
fc14f980 | 38 | +#include <qlibraryinfo.h> |
4b7e9ab4 | 39 | #include "qresource.h" |
fc14f980 | 40 | |
4c749030 | 41 | #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN) && !defined(Q_OS_INTEGRITY) |
fc14f980 | 42 | #define QT_USE_MMAP |
f05158ee | 43 | @@ -445,49 +445,71 @@ |
fc14f980 | 44 | QString delims; |
45 | delims = search_delimiters.isNull() ? QString::fromLatin1("_.") : search_delimiters; | |
46 | ||
47 | - for (;;) { | |
48 | - QFileInfo fi; | |
f05158ee AM |
49 | + if (directory == QLibraryInfo::location(QLibraryInfo::TranslationsPath)) { |
50 | + QString locale; | |
51 | + int idelim = 0, leftmost; | |
52 | + | |
53 | + for (;;) { | |
54 | + leftmost = filename.size(); | |
55 | + for (int i = 0; i < (int)delims.length(); i++) { | |
56 | + int k = filename.indexOf(delims[i], idelim); | |
57 | + if ((k > 0)&&(k < leftmost)) | |
58 | + leftmost = k; | |
59 | + } | |
60 | + | |
61 | + if (leftmost == filename.size()) | |
62 | + return false; | |
63 | + | |
64 | + idelim = leftmost + 1; | |
65 | + fname = filename.left(leftmost); | |
66 | + locale = filename.mid(leftmost+1); | |
67 | + | |
68 | + while (!locale.isEmpty()) { | |
69 | + QFileInfo fi; | |
70 | + realname = prefix + locale + QString::fromLatin1("/LC_MESSAGES/") + fname + QString::fromLatin1(".qm"); | |
71 | + | |
72 | + fi.setFile(realname); | |
73 | + if (fi.isReadable()) | |
74 | + break; | |
75 | + | |
76 | + int rightmost = 0; | |
77 | + for (int i = 0; i < (int)delims.length(); i++) { | |
78 | + int k = locale.lastIndexOf(delims[i]); | |
79 | + if (k > rightmost) | |
80 | + rightmost = k; | |
81 | + } | |
82 | + locale.truncate(rightmost); | |
83 | + } | |
84 | + if (!locale.isEmpty()) | |
85 | + break; | |
86 | + } | |
87 | + } else { | |
88 | + for (;;) { | |
89 | + QFileInfo fi; | |
90 | + | |
91 | + realname = prefix + fname + (suffix.isNull() ? QString::fromLatin1(".qm") : suffix); | |
92 | + fi.setFile(realname); | |
93 | + if (fi.isReadable()) | |
94 | + break; | |
95 | + | |
96 | + realname = prefix + fname; | |
97 | + fi.setFile(realname); | |
98 | + if (fi.isReadable()) | |
99 | + break; | |
100 | + | |
101 | + int rightmost = 0; | |
102 | + for (int i = 0; i < (int)delims.length(); i++) { | |
103 | + int k = fname.lastIndexOf(delims[i]); | |
104 | + if (k > rightmost) | |
105 | + rightmost = k; | |
106 | + } | |
107 | + | |
108 | + // no truncations? fail | |
109 | + if (rightmost == 0) | |
110 | + return false; | |
111 | ||
112 | -#ifdef Q_OS_SYMBIAN | |
113 | - //search for translations on other drives, e.g. Qt may be in Z, while app is in C | |
114 | - //note this uses symbian search rules, i.e. y:->a:, followed by z: | |
115 | - TFindFile finder(qt_s60GetRFs()); | |
116 | - QString fname2 = fname + (suffix.isNull() ? QString::fromLatin1(".qm") : suffix); | |
117 | - TInt err = finder.FindByDir( | |
118 | - qt_QString2TPtrC(fname2), | |
119 | - qt_QString2TPtrC(nativePrefix)); | |
120 | - if (err != KErrNone) | |
121 | - err = finder.FindByDir(qt_QString2TPtrC(fname), qt_QString2TPtrC(nativePrefix)); | |
122 | - if (err == KErrNone) { | |
123 | - fi.setFile(qt_TDesC2QString(finder.File())); | |
124 | - realname = fi.canonicalFilePath(); | |
125 | - if (fi.isReadable() && fi.isFile()) | |
126 | - break; | |
127 | - } | |
128 | -#endif | |
fc14f980 | 129 | - |
130 | - realname = prefix + fname + (suffix.isNull() ? QString::fromLatin1(".qm") : suffix); | |
131 | - fi.setFile(realname); | |
132 | - if (fi.isReadable() && fi.isFile()) | |
133 | - break; | |
134 | - | |
135 | - realname = prefix + fname; | |
136 | - fi.setFile(realname); | |
137 | - if (fi.isReadable() && fi.isFile()) | |
138 | - break; | |
139 | - | |
140 | - int rightmost = 0; | |
141 | - for (int i = 0; i < (int)delims.length(); i++) { | |
142 | - int k = fname.lastIndexOf(delims[i]); | |
143 | - if (k > rightmost) | |
144 | - rightmost = k; | |
145 | - } | |
146 | - | |
147 | - // no truncations? fail | |
148 | - if (rightmost == 0) | |
149 | - return false; | |
150 | - | |
151 | - fname.truncate(rightmost); | |
f05158ee AM |
152 | + fname.truncate(rightmost); |
153 | + } | |
fc14f980 | 154 | } |
155 | ||
156 | // realname is now the fully qualified name of a readable file. | |
f05158ee | 157 |