]> git.pld-linux.org Git - packages/qt4.git/blob - qt4-locale.patch
rediff patches
[packages/qt4.git] / qt4-locale.patch
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
4 @@ -112,11 +112,11 @@
5      QTranslator *qtTranslator = new QTranslator(this);
6  
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);
12  
13 -    translatorFileName = QLatin1String("qt_");
14 +    translatorFileName = QLatin1String("qt4_");
15      translatorFileName += localSysName;
16      qtTranslator->load(translatorFileName, resourceDir);
17      installTranslator(translator);
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
21 @@ -83,9 +83,9 @@
22      QTranslator translator;
23      QTranslator qtTranslator;
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);
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 @@
36  #include "qtranslator_p.h"
37  #include "qlocale.h"
38 +#include <qlibraryinfo.h>
39  #include "qresource.h"
40  
41  #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN) && !defined(Q_OS_INTEGRITY)
42  #define QT_USE_MMAP
43 @@ -445,49 +445,71 @@
44      QString delims;
45      delims = search_delimiters.isNull() ? QString::fromLatin1("_.") : search_delimiters;
46  
47 -    for (;;) {
48 -        QFileInfo fi;
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
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);
152 +                   fname.truncate(rightmost);
153 +           }
154      }
155  
156      // realname is now the fully qualified name of a readable file.
157
This page took 0.303825 seconds and 3 git commands to generate.