Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Portuguese
  4. Internacionalização e QUiLoader
Forum Updated to NodeBB v4.3 + New Features

Internacionalização e QUiLoader

Scheduled Pinned Locked Moved Portuguese
12 Posts 2 Posters 4.4k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    TioRoy
    wrote on last edited by
    #3

    O lupdate lê os arquivos .ui sem problemas.

    Chame o lupdate para cada arquivo ui para gerar os arquivos .ts

    1 Reply Last reply
    0
    • E Offline
      E Offline
      Exotic_Devel
      wrote on last edited by
      #4

      Um......
      Fiquei na dúvida pois a documentação não menciona os arquivos ui.
      Aproveitando o gacho, na "documentação":http://qt-project.org/doc/qt-4.8/linguist-programmers.html#creating-translation-files diz que deve-se definir os arquivos de deverão ser gerados, essa definição deve estar no .pro da aplicação.
      Sobre isso tenho duas dúvidas. 1 - Usa-se apenas um arquivos para toda a aplicação? 2 - Em um projeto dividido em subdirs, onde devo comolar a definição, ou seja, em qual dos arquivos .pro?

      Eu pretendo gerar os arquivos .ts com o Qt Creator e não via linha de comando.

      1 Reply Last reply
      0
      • T Offline
        T Offline
        TioRoy
        wrote on last edited by
        #5

        Eu acho interessante 1 arquivo para cada fonte e não apenas 1.
        Em relação aos subdirs, eu colocaria em cada pro os seus .ts correspondentes.

        O lupdate se chama assim:

        lupdate <arquivo de entrada> -ts <arquivo de saida .ts>

        Depois, coloca os arquivos .ts no .pro assim:

        @
        TRANSLATIONS += <arquivo de saida .ts>
        @

        De dentro do QtCreator, quando o formulário estiver aberto, use o menu Tools / External / Linguist para atualizar o .ts

        1 Reply Last reply
        0
        • E Offline
          E Offline
          Exotic_Devel
          wrote on last edited by
          #6

          Foi o que fiz, mas na hora que eu executo o lupdate pelo Qt Creator (Tools/External/Linguist/lupdate) recebo a seguinte menssagem:

          !http://i57.tinypic.com/wlsojm.png(Screen)!

          Minha intenção é traduzir as strings do arquivo connecdialog.ui

          1 Reply Last reply
          0
          • E Offline
            E Offline
            Exotic_Devel
            wrote on last edited by
            #7

            O erro é

            @Starting external tool '/opt/Qt/5.3/gcc_64/bin/lupdate' /home/matheus/Dropbox/Projetos/Freedom/TecTracker/TecTracker.pro
            lupdate warning: no TS files specified. Only diagnostics will be produced for '/home/matheus/Dropbox/Projetos/Freedom/TecTracker/TecTracker.pro'.

            Updating 'Core/gui/core_connecdialog_ptBr.ts'...
            Found 0 source text(s) (0 new and 0 already existing)

            '/opt/Qt/5.3/gcc_64/bin/lupdate' finished@

            Caso fique ruin para visualizar na imagem.

            1 Reply Last reply
            0
            • E Offline
              E Offline
              Exotic_Devel
              wrote on last edited by
              #8

              Testei via linha de comando e funcionou mas via Creator dá esse erro.

              1 Reply Last reply
              0
              • E Offline
                E Offline
                Exotic_Devel
                wrote on last edited by
                #9

                Fiz uns testes aqui, lupdate não encontra o arquivo ui, porque eu não faço uso da variável FORMS no meu arquivo .pro.
                Eu não uso FORMS porque como meu projeto é todo baseado em QUiLoader, eu não preciso dos arquivos moc e headers que são gerados a partir da variável FORMS durante a compilação.
                Existe alguma forma de contornar isso? Ou ao menos evitar que os arquivos headers e moc do formulário sejam criando quando uso a variável FORMS?

                1 Reply Last reply
                0
                • T Offline
                  T Offline
                  TioRoy
                  wrote on last edited by
                  #10

                  Achei um "bug cadastrado":https://bugreports.qt-project.org/browse/QTBUG-14056 (já resolvido), mas me deu uma idéia.

                  Coloque as linhas abaixo no seu .pro.

                  translateUiHack{
                  FORMS +=
                  arquivo1.ui
                  arquivo2.ui
                  }

                  TRANSLATIONS = arquivo1.ts
                  arquivo2.ts

                  Por estar assim, o qmake não usa o FORMS (dentro da estrutura) para rodar o moc, mas o lupdate lê.

                  1 Reply Last reply
                  0
                  • E Offline
                    E Offline
                    Exotic_Devel
                    wrote on last edited by
                    #11

                    Ok, funcionou, porém esbarrei e outro problema, Na ferramenta Qt Linguist não permite trazudir os nomes de botões do tipo QDialogButtonBox.
                    Pesquisei pela nete sobre o assunto, encontrei algumas coisas mas nada muito concreto.

                    1 Reply Last reply
                    0
                    • T Offline
                      T Offline
                      TioRoy
                      wrote on last edited by
                      #12

                      O nome do controle ou o texto?

                      1 Reply Last reply
                      0

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt Extensions
                      • Unsolved