VirtualBox

Changeset 2068 in vbox


Ignore:
Timestamp:
Apr 13, 2007 10:01:20 AM (18 years ago)
Author:
vboxsync
Message:

FE/Qt: Added the Default choice for to the language selection UI.

Location:
trunk/src/VBox/Frontends/VirtualBox
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/nls/VirtualBox_de.ts

    r2048 r2068  
    16531653    </message>
    16541654    <message>
    1655         <source>
    1656 Lists all available user interface languages. The effective language
    1657 is written in &lt;b&gt;bold&lt;/b&gt;.
    1658                                     </source>
    1659         <translation type="unfinished"></translation>
    1660     </message>
    1661     <message>
    16621655        <source>Author(s):</source>
    16631656        <translation type="unfinished"></translation>
     
    16801673        <source>&lt;unknown&gt;</source>
    16811674        <comment>Author(s)</comment>
     1675        <translation type="unfinished"></translation>
     1676    </message>
     1677    <message>
     1678        <source>
     1679Lists all available user interface languages. The effective language is
     1680written in &lt;b&gt;bold&lt;/b&gt;. Select &lt;i&gt;Default&lt;/i&gt; to reset
     1681to the system default language.
     1682                                    </source>
     1683        <translation type="unfinished"></translation>
     1684    </message>
     1685    <message>
     1686        <source>Default</source>
     1687        <comment>Language</comment>
    16821688        <translation type="unfinished"></translation>
    16831689    </message>
     
    38713877        <translation>Der Wert &apos;%1&apos; des Schlüssels &apos;%2&apos; stimmt nicht mit dem regulären Ausdruck &apos;%3&apos; überein.</translation>
    38723878    </message>
     3879    <message>
     3880        <source>Cannot delete the key &apos;%1&apos;.</source>
     3881        <translation type="unfinished"></translation>
     3882    </message>
    38733883</context>
    38743884</TS>
  • trunk/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ru.ts

    r2048 r2068  
    16411641    </message>
    16421642    <message>
    1643         <source>
    1644 Lists all available user interface languages. The effective language
    1645 is written in &lt;b&gt;bold&lt;/b&gt;.
    1646                                     </source>
    1647         <translation type="unfinished"></translation>
    1648     </message>
    1649     <message>
    16501643        <source>Author(s):</source>
    16511644        <translation type="unfinished"></translation>
     
    16681661        <source>&lt;unknown&gt;</source>
    16691662        <comment>Author(s)</comment>
     1663        <translation type="unfinished"></translation>
     1664    </message>
     1665    <message>
     1666        <source>
     1667Lists all available user interface languages. The effective language is
     1668written in &lt;b&gt;bold&lt;/b&gt;. Select &lt;i&gt;Default&lt;/i&gt; to reset
     1669to the system default language.
     1670                                    </source>
     1671        <translation type="unfinished"></translation>
     1672    </message>
     1673    <message>
     1674        <source>Default</source>
     1675        <comment>Language</comment>
    16701676        <translation type="unfinished"></translation>
    16711677    </message>
     
    37773783        <translation type="unfinished"></translation>
    37783784    </message>
     3785    <message>
     3786        <source>Cannot delete the key &apos;%1&apos;.</source>
     3787        <translation type="unfinished"></translation>
     3788    </message>
    37793789</context>
    37803790</TS>
  • trunk/src/VBox/Frontends/VirtualBox/nls/VirtualBox_xx_YY.ts

    r2048 r2068  
    16411641    </message>
    16421642    <message>
    1643         <source>
    1644 Lists all available user interface languages. The effective language
    1645 is written in &lt;b&gt;bold&lt;/b&gt;.
    1646                                     </source>
    1647         <translation type="unfinished"></translation>
    1648     </message>
    1649     <message>
    16501643        <source>Author(s):</source>
    16511644        <translation type="unfinished"></translation>
     
    16681661        <source>&lt;unknown&gt;</source>
    16691662        <comment>Author(s)</comment>
     1663        <translation type="unfinished"></translation>
     1664    </message>
     1665    <message>
     1666        <source>
     1667Lists all available user interface languages. The effective language is
     1668written in &lt;b&gt;bold&lt;/b&gt;. Select &lt;i&gt;Default&lt;/i&gt; to reset
     1669to the system default language.
     1670                                    </source>
     1671        <translation type="unfinished"></translation>
     1672    </message>
     1673    <message>
     1674        <source>Default</source>
     1675        <comment>Language</comment>
    16701676        <translation type="unfinished"></translation>
    16711677    </message>
     
    37773783        <translation type="unfinished"></translation>
    37783784    </message>
     3785    <message>
     3786        <source>Cannot delete the key &apos;%1&apos;.</source>
     3787        <translation type="unfinished"></translation>
     3788    </message>
    37793789</context>
    37803790</TS>
  • trunk/src/VBox/Frontends/VirtualBox/nls/VirtualBox_zh_CN.ts

    r2048 r2068  
    16491649    </message>
    16501650    <message>
    1651         <source>
    1652 Lists all available user interface languages. The effective language
    1653 is written in &lt;b&gt;bold&lt;/b&gt;.
    1654                                     </source>
    1655         <translation type="unfinished"></translation>
    1656     </message>
    1657     <message>
    16581651        <source>Author(s):</source>
    16591652        <translation type="unfinished"></translation>
     
    16761669        <source>&lt;unknown&gt;</source>
    16771670        <comment>Author(s)</comment>
     1671        <translation type="unfinished"></translation>
     1672    </message>
     1673    <message>
     1674        <source>
     1675Lists all available user interface languages. The effective language is
     1676written in &lt;b&gt;bold&lt;/b&gt;. Select &lt;i&gt;Default&lt;/i&gt; to reset
     1677to the system default language.
     1678                                    </source>
     1679        <translation type="unfinished"></translation>
     1680    </message>
     1681    <message>
     1682        <source>Default</source>
     1683        <comment>Language</comment>
    16781684        <translation type="unfinished"></translation>
    16791685    </message>
     
    38133819        <translation>关键字 &apos;%2&apos; 的值 &apos;%1&apos; 不能通过正则表达式 &apos;%3&apos; 的强制性检查.</translation>
    38143820    </message>
     3821    <message>
     3822        <source>Cannot delete the key &apos;%1&apos;.</source>
     3823        <translation type="unfinished"></translation>
     3824    </message>
    38153825</context>
    38163826</TS>
  • trunk/src/VBox/Frontends/VirtualBox/nls/VirtualBox_zh_TW.ts

    r2048 r2068  
    19541954    </message>
    19551955    <message>
    1956         <source>
    1957 Lists all available user interface languages. The effective language
    1958 is written in &lt;b&gt;bold&lt;/b&gt;.
    1959                                     </source>
    1960         <translation type="unfinished"></translation>
    1961     </message>
    1962     <message>
    19631956        <source>Author(s):</source>
    19641957        <translation type="unfinished"></translation>
     
    19811974        <source>&lt;unknown&gt;</source>
    19821975        <comment>Author(s)</comment>
     1976        <translation type="unfinished"></translation>
     1977    </message>
     1978    <message>
     1979        <source>
     1980Lists all available user interface languages. The effective language is
     1981written in &lt;b&gt;bold&lt;/b&gt;. Select &lt;i&gt;Default&lt;/i&gt; to reset
     1982to the system default language.
     1983                                    </source>
     1984        <translation type="unfinished"></translation>
     1985    </message>
     1986    <message>
     1987        <source>Default</source>
     1988        <comment>Language</comment>
    19831989        <translation type="unfinished"></translation>
    19841990    </message>
     
    44844490        <translation type="unfinished"></translation>
    44854491    </message>
     4492    <message>
     4493        <source>Cannot delete the key &apos;%1&apos;.</source>
     4494        <translation type="unfinished"></translation>
     4495    </message>
    44864496</context>
    44874497</TS>
  • trunk/src/VBox/Frontends/VirtualBox/src/VBoxGlobal.cpp

    r2055 r2068  
    18681868/**
    18691869 *  Loads the language by language ID.
    1870  *  @param aLang language ID in in form of xx_YY
     1870 *
     1871 *  @param aLangId Language ID in in form of xx_YY. QString::null means the
     1872 *                 system default language.
    18711873 */
    18721874/* static */
    1873 void VBoxGlobal::loadLanguage (const QString &aLang)
    1874 {
    1875     QString langId = aLang.isNull() ?
    1876         VBoxGlobal::systemLanguageId() : aLang;
    1877     QString languageFileName = QString::null;
     1875void VBoxGlobal::loadLanguage (const QString &aLangId)
     1876{
     1877    QString langId = aLangId.isNull() ?
     1878        VBoxGlobal::systemLanguageId() : aLangId;
     1879    QString languageFileName;
    18781880    QString selectedLangId = gVBoxBuiltInLangName;
    18791881
    1880     if (aLang != gVBoxBuiltInLangName)
     1882    if (!aLangId.isNull() && aLangId != gVBoxBuiltInLangName)
    18811883    {
    18821884        QRegExp regExp (gVBoxLangIDRegExp);
    18831885        int rule = regExp.search (langId);
    18841886        /* this rule should match the language id completely */
    1885         Assert (!rule);
    1886         if (rule == -1) return;
    1887 
    1888         QString mId1part = regExp.cap (2);
    1889         QString mId2part = regExp.cap (4);
    1890         /* language localization (second part) should not be empty? */
    1891         // Assert (!mId2part.isEmpty());
     1887        AssertReturnVoid (rule == 0);
     1888
     1889        QString lang = regExp.cap (2);
    18921890
    18931891        QString nlsPath = qApp->applicationDirPath() + gVBoxLangSubDir;
     
    18991897            selectedLangId = langId;
    19001898        }
    1901         else if (nlsDir.exists (gVBoxLangFileBase + mId1part + gVBoxLangFileExt))
    1902         {
    1903             languageFileName = nlsDir.absFilePath (gVBoxLangFileBase + mId1part +
     1899        else if (nlsDir.exists (gVBoxLangFileBase + lang + gVBoxLangFileExt))
     1900        {
     1901            languageFileName = nlsDir.absFilePath (gVBoxLangFileBase + lang +
    19041902                                                   gVBoxLangFileExt);
    1905             selectedLangId = mId1part;
    1906         }
    1907 
    1908         if (sTranslator && languageFileName.isNull())
     1903            selectedLangId = lang;
     1904        }
     1905
     1906        if (languageFileName.isNull())
    19091907        {
    19101908            vboxProblem().cannotFindLanguage (langId, nlsPath);
     
    19241922    if (sTranslator)
    19251923    {
    1926         /* an empty file name means built-in English*/
    19271924        if (selectedLangId != gVBoxBuiltInLangName)
    19281925        {
  • trunk/src/VBox/Frontends/VirtualBox/ui/VBoxGlobalSettingsDlg.ui

    r2044 r2068  
    813813                                <property name="whatsThis" stdset="0">
    814814                                    <string>
    815 Lists all available user interface languages. The effective language
    816 is written in &lt;b&gt;bold&lt;/b&gt;.
     815Lists all available user interface languages. The effective language is
     816written in &lt;b&gt;bold&lt;/b&gt;. Select &lt;i&gt;Default&lt;/i&gt; to reset
     817to the system default language.
    817818                                    </string>
    818819                                </property>
  • trunk/src/VBox/Frontends/VirtualBox/ui/VBoxGlobalSettingsDlg.ui.h

    r2045 r2068  
    9090        : QListViewItem (aParent), mBuiltIn (aBuiltIn), mInvalid (false)
    9191    {
     92        Assert (!aId.isEmpty());
     93
    9294        QTranslatorMessage transMes;
    9395
     
    143145        : QListViewItem (aParent), mBuiltIn (false), mInvalid (true)
    144146    {
     147        Assert (!aId.isEmpty());
     148
    145149        setText (0, QString ("<%1>").arg (aId));
    146150        setText (1, aId);
     
    149153    }
    150154
     155    /* Constructs an item for the default language ID (column 1 will be set
     156     * to QString::null) */
     157    LanguageItem (QListView *aParent)
     158        : QListViewItem (aParent), mBuiltIn (false), mInvalid (false)
     159    {
     160        setText (0, VBoxGlobalSettingsDlg::tr ("Default", "Language"));
     161        setText (1, QString::null);
     162        setText (2, QString::null);
     163        setText (3, QString::null);
     164    }
     165
    151166    int rtti() const { return TypeId; }
    152167
    153168    int compare (QListViewItem *aItem, int aColumn, bool aAscending) const
    154169    {
    155         QString thisValue = text (1);
    156         QString thatValue = aItem->text (1);
    157         if (thisValue == gVBoxBuiltInLangName)
     170        QString thisId = text (1);
     171        QString thatId = aItem->text (1);
     172        if (thisId.isNull())
    158173            return -1;
    159         else if (thatValue == gVBoxBuiltInLangName)
     174        if (thatId.isNull())
    160175            return 1;
    161         else
    162             return QListViewItem::compare (aItem, aColumn, aAscending);
     176        if (mBuiltIn)
     177            return -1;
     178        if (aItem->rtti() == TypeId && ((LanguageItem *) aItem)->mBuiltIn)
     179            return 1;
     180        return QListViewItem::compare (aItem, aColumn, aAscending);
    163181    }
    164182
     
    362380                                          QDir::Files);
    363381    QTranslator translator;
     382    /* add the default language */
     383    new LanguageItem (lvLanguages);
    364384    /* add the built-in language */
    365385    new LanguageItem (lvLanguages, translator, gVBoxBuiltInLangName, true /* built-in */);
     
    565585
    566586    QString langId = gs.languageId();
    567     if (langId.isNull())
    568         langId = VBoxGlobal::languageId();
    569587    QListViewItem *item = lvLanguages->findItem (langId, 1);
    570588    if (!item)
     
    643661
    644662    QListViewItem *selItem = lvLanguages->selectedItem();
     663    Assert (selItem);
    645664    if (mLanguageChanged && selItem)
    646665    {
    647         gs.setLanguageId (selItem->text (1) == VBoxGlobal::systemLanguageId() ?
    648                           QString::null : selItem->text (1));
     666        gs.setLanguageId (selItem->text (1));
    649667        VBoxGlobal::loadLanguage (selItem->text (1));
    650668    }
     
    914932void VBoxGlobalSettingsDlg::lvLanguages_currentChanged (QListViewItem *aItem)
    915933{
     934    Assert (aItem);
    916935    if (!aItem) return;
    917936
     937    /* disable labels for the Default language item */
     938    bool enabled = !aItem->text (1).isNull();
     939
     940    tlLangName->setEnabled (enabled);
     941    tlAuthorName->setEnabled (enabled);
    918942    tlLangData->setText (aItem->text (2));
    919943    tlAuthorData->setText (aItem->text (3));
     944
    920945    mLanguageChanged = true;
    921946}
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette