QmlProfiler: Convert to using Tr::tr

Change-Id: I9f4f8c0e499eeb1e686d1094f3442c415b845c21
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Alessandro Portale
2022-08-30 20:37:31 +02:00
parent 88489fa956
commit 59ae002e92
43 changed files with 541 additions and 4737 deletions

View File

@@ -30733,7 +30733,7 @@ Při GDB může být zadána posloupnost příkazů oddělená oddělovačem &ap
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>Dialog</source> <source>Dialog</source>
<translation type="obsolete">Dialog</translation> <translation type="obsolete">Dialog</translation>
@@ -37498,7 +37498,7 @@ Vytvořte, prosím, součástky pomocné knihovny pro výstup dat o ladění na
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerEngine</name> <name>QmlProfiler</name>
<message> <message>
<source>No executable file to launch.</source> <source>No executable file to launch.</source>
<translation>Nebyl zadán žádný spustitelný soubor ke spuštění.</translation> <translation>Nebyl zadán žádný spustitelný soubor ke spuštění.</translation>
@@ -37542,102 +37542,18 @@ Použijte, prosím, místo toho tlačítko Zastavit.</translation>
<translation>Ladicí program QML: Nepodařilo se vytvořit žádné spojení se součástkou ladění v procesu: <translation>Ladicí program QML: Nepodařilo se vytvořit žádné spojení se součástkou ladění v procesu:
%1</translation> %1</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>Profiler QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventStatistics</name>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation type="obsolete">Není dostupný žádný zdrojový kód</translation> <translation type="obsolete">Není dostupný žádný zdrojový kód</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="obsolete">&lt;bytecode&gt;</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsView</name>
<message>
<source>Location</source>
<translation type="obsolete">Umístění</translation>
</message>
<message>
<source>Type</source>
<translation type="obsolete">Typ</translation>
</message>
<message> <message>
<source>Time in Percent</source> <source>Time in Percent</source>
<translation type="obsolete">Čas v procentu</translation> <translation>Čas v procentu</translation>
</message>
<message>
<source>Total Time</source>
<translation type="obsolete">Celkový čas</translation>
</message>
<message>
<source>Calls</source>
<translation type="obsolete">Volání</translation>
</message> </message>
<message> <message>
<source>Time per Call</source> <source>Time per Call</source>
<translation type="obsolete">Čas na volání</translation> <translation type="obsolete">Čas na volání</translation>
</message> </message>
<message>
<source>Mean Time</source>
<translation type="obsolete">Střední čas</translation>
</message>
<message>
<source>Median Time</source>
<translation type="obsolete">Střední hodnota času</translation>
</message>
<message>
<source>Longest Time</source>
<translation type="obsolete">Nejdelší čas</translation>
</message>
<message>
<source>Shortest Time</source>
<translation type="obsolete">Nejkratší čas</translation>
</message>
<message>
<source>Details</source>
<translation type="obsolete">Podrobnosti</translation>
</message>
<message>
<source>Paint</source>
<translation type="obsolete">Barva</translation>
</message>
<message>
<source>Compile</source>
<translation type="obsolete">Sestavit</translation>
</message>
<message>
<source>Create</source>
<translation type="obsolete">Vytvořit</translation>
</message>
<message>
<source>Binding</source>
<translation type="obsolete">Přiřazená klávesa</translation>
</message>
<message>
<source>Signal</source>
<translation type="obsolete">Signál</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControlFactory</name>
<message>
<source>QML Profiler</source>
<translation type="obsolete">Profiler QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message>
<source>QML Profiler</source>
<translation>Profiler QML</translation>
</message>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>Profiler QML se použít k nalezení výkonnostních překážek v programech používajících QML.</translation> <translation>Profiler QML se použít k nalezení výkonnostních překážek v programech používajících QML.</translation>
@@ -37660,26 +37576,10 @@ Please use the stop button instead.</source>
<translation>Program byl před nahráním profilovaných dat ukončen. <translation>Program byl před nahráním profilovaných dat ukončen.
Použijte, prosím, místo toho tlačítko Zastavit.</translation> Použijte, prosím, místo toho tlačítko Zastavit.</translation>
</message> </message>
<message>
<source>Extended Event Statistics</source>
<translation type="obsolete">Rozšířená statistika událostí</translation>
</message>
<message>
<source>Limit Events Pane to Current Range</source>
<translation type="obsolete">Omezit tabulku na nynější rozsah</translation>
</message>
<message>
<source>Reset Events Pane</source>
<translation type="obsolete">Vynulovat tabulku událostí</translation>
</message>
<message> <message>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation type="obsolete">Nastavit zvětšení znovu</translation> <translation type="obsolete">Nastavit zvětšení znovu</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation type="obsolete">JavaScript</translation>
</message>
<message> <message>
<source>%1 s</source> <source>%1 s</source>
<translation>%1 s</translation> <translation>%1 s</translation>
@@ -37692,20 +37592,6 @@ Použijte, prosím, místo toho tlačítko Zastavit.</translation>
<source>QML traces (*%1)</source> <source>QML traces (*%1)</source>
<translation>Výpisy volání QML (*%1)</translation> <translation>Výpisy volání QML (*%1)</translation>
</message> </message>
<message>
<source>Application finished before loading profiled data.
Please use the stop button instead.</source>
<translation type="obsolete">Program byl před nahráním profilovaných dat ukončen.
Použijte, prosím, místo toho tlačítko Zastavit.</translation>
</message>
<message>
<source>Copy Row</source>
<translation type="obsolete">Kopírovat řádek</translation>
</message>
<message>
<source>Copy Table</source>
<translation type="obsolete">Kopírovat tabulku</translation>
</message>
<message> <message>
<source>The QML profiler requires Qt 4.7.4 or newer. <source>The QML profiler requires Qt 4.7.4 or newer.
The Qt version configured in your active build configuration is too old. The Qt version configured in your active build configuration is too old.
@@ -37714,14 +37600,6 @@ Do you want to continue?</source>
Verze Qt, která je nastavena ve vašem současném nastavení sestavování, je příliš stará. Verze Qt, která je nastavena ve vašem současném nastavení sestavování, je příliš stará.
Chcete pokračovat?</translation> Chcete pokračovat?</translation>
</message> </message>
<message>
<source>Events</source>
<translation type="obsolete">Události</translation>
</message>
<message>
<source>Timeline</source>
<translation type="obsolete">Časová přímka</translation>
</message>
<message> <message>
<source>Callees</source> <source>Callees</source>
<translation type="obsolete">Volané funkce</translation> <translation type="obsolete">Volané funkce</translation>
@@ -37750,23 +37628,10 @@ Chcete pokračovat?</translation>
<source>Elapsed: %1 s</source> <source>Elapsed: %1 s</source>
<translation type="obsolete">Uplynulo: %1 s</translation> <translation type="obsolete">Uplynulo: %1 s</translation>
</message> </message>
<message>
<source>Qt Creator</source>
<translation type="obsolete">Qt Creator</translation>
</message>
<message>
<source>Could not connect to the in-process QML profiler.
Do you want to retry?</source>
<translation type="obsolete">Qt Creatoru se nepodařilo vytvořit žádné spojení s profilerem QML v procesu.
se to zkusit ještě jednou?</translation>
</message>
<message> <message>
<source>QML traces (%1)</source> <source>QML traces (%1)</source>
<translation type="obsolete">Stopy QML (%1)</translation> <translation type="obsolete">Stopy QML (%1)</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::RemoteLinuxQmlProfilerRunner</name>
<message> <message>
<source>Gathering ports failed: %1</source> <source>Gathering ports failed: %1</source>
<translation type="obsolete">Chyba při ověřování portů: %1</translation> <translation type="obsolete">Chyba při ověřování portů: %1</translation>
@@ -37799,9 +37664,6 @@ Má se to zkusit ještě jednou?</translation>
<translation type="obsolete">Vzdálený proces byl ukončen. Vrácená hodnota %1. <translation type="obsolete">Vzdálený proces byl ukončen. Vrácená hodnota %1.
</translation> </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::TraceWindow</name>
<message> <message>
<source>Jump to previous event</source> <source>Jump to previous event</source>
<translation type="obsolete">Jít na předchozí událost</translation> <translation type="obsolete">Jít na předchozí událost</translation>
@@ -42692,7 +42554,7 @@ Prověřte, prosím, oprávnění pro přístup k adresáři.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Painting</source> <source>Painting</source>
<translation>Vykreslení</translation> <translation>Vykreslení</translation>
@@ -50428,11 +50290,7 @@ Chcete jej ukončit?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerClientManager</name> <name>QmlProfiler</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
<message> <message>
<source>Could not connect to the in-process QML profiler. <source>Could not connect to the in-process QML profiler.
Do you want to retry?</source> Do you want to retry?</source>
@@ -50447,13 +50305,6 @@ Má se to zkusit ještě jednou?</translation>
<source>QML Profiler: connected and running</source> <source>QML Profiler: connected and running</source>
<translation>Profiler QML: Připojujen a běží</translation> <translation>Profiler QML: Připojujen a běží</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerDataModel</name>
<message>
<source>Source code not available</source>
<translation type="obsolete">Není dostupný žádný zdrojový kód</translation>
</message>
<message> <message>
<source>Source code not available.</source> <source>Source code not available.</source>
<translation>Není dostupný žádný zdrojový kód.</translation> <translation>Není dostupný žádný zdrojový kód.</translation>
@@ -50530,9 +50381,6 @@ Má se to zkusit ještě jednou?</translation>
<source>Invalid version of QML Trace file.</source> <source>Invalid version of QML Trace file.</source>
<translation>Neplatná verze souboru QML Trace.</translation> <translation>Neplatná verze souboru QML Trace.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsWidget</name>
<message> <message>
<source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications</source> <source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications</source>
<translation type="obsolete">Sledovat informace ze stroje v8 JavaScript. Dostupné pouze v programech založených na Qt5</translation> <translation type="obsolete">Sledovat informace ze stroje v8 JavaScript. Dostupné pouze v programech založených na Qt5</translation>
@@ -50577,9 +50425,6 @@ Má se to zkusit ještě jednou?</translation>
<source>Reset Events Pane</source> <source>Reset Events Pane</source>
<translation>Vynulovat tabulku událostí</translation> <translation>Vynulovat tabulku událostí</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name>
<message> <message>
<source>Location</source> <source>Location</source>
<translation>Umístění</translation> <translation>Umístění</translation>
@@ -50588,10 +50433,6 @@ Má se to zkusit ještě jednou?</translation>
<source>Type</source> <source>Type</source>
<translation>Typ</translation> <translation>Typ</translation>
</message> </message>
<message>
<source>Time in Percent</source>
<translation>Čas v %</translation>
</message>
<message> <message>
<source>Total Time</source> <source>Total Time</source>
<translation>Celkový čas</translation> <translation>Celkový čas</translation>
@@ -50692,21 +50533,10 @@ reference k prvkům v jiných souborech, smyčkách atd.)</translation>
<source>Create</source> <source>Create</source>
<translation>Vytvoření</translation> <translation>Vytvoření</translation>
</message> </message>
<message>
<source>Binding</source>
<translation>Vázání</translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation>Signál</translation> <translation>Signál</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsParentsAndChildrenView</name>
<message> <message>
<source>Part of binding loop</source> <source>Part of binding loop</source>
<translation type="obsolete">Část smyčky vázaní</translation> <translation type="obsolete">Část smyčky vázaní</translation>
@@ -50723,18 +50553,6 @@ reference k prvkům v jiných souborech, smyčkách atd.)</translation>
<source>Caller</source> <source>Caller</source>
<translation>Volající</translation> <translation>Volající</translation>
</message> </message>
<message>
<source>Type</source>
<translation>Typ</translation>
</message>
<message>
<source>Total Time</source>
<translation>Celkový čas</translation>
</message>
<message>
<source>Calls</source>
<translation>Volání</translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation>Popis volané</translation> <translation>Popis volané</translation>
@@ -50743,16 +50561,13 @@ reference k prvkům v jiných souborech, smyčkách atd.)</translation>
<source>Caller Description</source> <source>Caller Description</source>
<translation>Popis volající</translation> <translation>Popis volající</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateManager</name>
<message> <message>
<source>Switching to unknown state in %1:%2</source> <source>Switching to unknown state in %1:%2</source>
<translation type="obsolete">Přepnutí do neznámého stavu v %1:%2</translation> <translation type="obsolete">Přepnutí do neznámého stavu v %1:%2</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name> <name>ButtonsBar</name>
<message> <message>
<source>Jump to previous event</source> <source>Jump to previous event</source>
<translation>Jít na předchozí událost</translation> <translation>Jít na předchozí událost</translation>
@@ -50811,7 +50626,7 @@ reference k prvkům v jiných souborech, smyčkách atd.)</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name> <name>QmlProfiler</name>
<message> <message>
<source>Events</source> <source>Events</source>
<translation>Události</translation> <translation>Události</translation>
@@ -50820,10 +50635,6 @@ reference k prvkům v jiných souborech, smyčkách atd.)</translation>
<source>Timeline</source> <source>Timeline</source>
<translation>Časová přímka</translation> <translation>Časová přímka</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
</context> </context>
<context> <context>
<name>QmakeProjectManager::SymbianIDevice</name> <name>QmakeProjectManager::SymbianIDevice</name>
@@ -53693,7 +53504,7 @@ o pravděpodobném URI.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name> <name>QmlProfiler</name>
<message> <message>
<source>Loading data</source> <source>Loading data</source>
<translation>Nahrávají se data</translation> <translation>Nahrávají se data</translation>
@@ -61510,94 +61321,7 @@ Zavřete, prosím, všechny běžící instance své aplikace, předtím než za
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::LocalQmlProfilerRunner</name> <name>QmlProfiler</name>
<message>
<source>No executable file to launch.</source>
<translation>Nebyl zadán žádný spustitelný soubor ke spuštění.</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControl</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
<message>
<source>Could not connect to the in-process QML debugger:
%1</source>
<extracomment>%1 is detailed error message</extracomment>
<translation>Ladicí program QML: Nepodařilo se vytvořit žádné spojení se součástkou ladění v procesu:
%1</translation>
</message>
<message>
<source>QML Profiler</source>
<translation>Profiler QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;program&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation>Hlavní program</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventParentsModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;program&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation>Hlavní program</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventChildrenModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;program&gt;</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventRelativesView</name>
<message>
<source>Part of binding loop.</source>
<translation>Část smyčky vázaní.</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerDataState</name>
<message>
<source>Trying to set unknown state in events list.</source>
<translation>Pokus o nastavení neznámého stavu v seznamu událostí.</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerModelManager</name>
<message>
<source>Unexpected complete signal in data model.</source>
<translation>Neočekávaný signál v datovém modelu.</translation>
</message>
<message>
<source>Could not open %1 for writing.</source>
<translation>Soubor &apos;%1&apos; se nepodařilo otevřít pro zápis.</translation>
</message>
<message>
<source>Could not open %1 for reading.</source>
<translation>Soubor %1 se nepodařilo otevřít pro čtení.</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PaintEventsModelProxy</name>
<message>
<source>Painting</source>
<translation>Vykreslení</translation>
</message>
<message> <message>
<source>Animations</source> <source>Animations</source>
<translation>Animace</translation> <translation>Animace</translation>
@@ -61610,116 +61334,15 @@ Zavřete, prosím, všechny běžící instance své aplikace, předtím než za
<source>Render Thread</source> <source>Render Thread</source>
<translation>Vlákno vykreslování</translation> <translation>Vlákno vykreslování</translation>
</message> </message>
<message>
<source> µs</source>
<translation> µs</translation>
</message>
<message>
<source> ms</source>
<translation> ms</translation>
</message>
<message>
<source> s</source>
<translation> s</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerPlugin</name>
<message>
<source>QML Profiler</source>
<translation>Profiler QML</translation>
</message>
<message> <message>
<source>QML Profiler (External)</source> <source>QML Profiler (External)</source>
<translation>Profiler QML (externí)</translation> <translation>Profiler QML (externí)</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerProcessedModel</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;bytecode&gt;</translation>
</message>
<message>
<source>Source code not available.</source>
<translation>Není dostupný žádný zdrojový kód.</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerSimpleModel</name>
<message>
<source>Animations</source>
<translation>Animace</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::BasicTimelineModel</name>
<message>
<source> µs</source>
<translation> µs</translation>
</message>
<message>
<source> ms</source>
<translation> ms</translation>
</message>
<message>
<source> s</source>
<translation> s</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerFileReader</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation>Chyba při vyhodnocování souboru se sledováním dat %1</translation> <translation>Chyba při vyhodnocování souboru se sledováním dat %1</translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::QV8ProfilerDataModel</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;program&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation>Hlavní program</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QV8ProfilerEventsMainView</name>
<message>
<source> µs</source>
<translation> µs</translation>
</message>
<message>
<source> ms</source>
<translation> ms</translation>
</message>
<message>
<source> s</source>
<translation> s</translation>
</message>
<message>
<source>Paint</source>
<translation>Vykreslení</translation>
</message>
<message>
<source>Compile</source>
<translation>Překlad</translation>
</message>
<message>
<source>Create</source>
<translation>Vytvoření</translation>
</message>
<message>
<source>Binding</source>
<translation>Vázání</translation>
</message>
<message>
<source>Signal</source>
<translation>Signál</translation>
</message>
</context>
<context> <context>
<name>QmlProjectManager::QmlProjectFileFormat</name> <name>QmlProjectManager::QmlProjectFileFormat</name>
<message> <message>
@@ -63626,49 +63249,11 @@ Tyto soubory jsou zachovány.</numerusform>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::QmlProfilerBaseModel</name> <name>QmlProfiler</name>
<message>
<source> µs</source>
<translation> µs</translation>
</message>
<message>
<source> ms</source>
<translation> ms</translation>
</message>
<message>
<source> s</source>
<translation> s</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerDataModel</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;bytecode&gt;</translation>
</message>
<message>
<source>Source code not available.</source>
<translation>Není dostupný žádný zdrojový kód.</translation>
</message>
<message> <message>
<source>anonymous function</source> <source>anonymous function</source>
<translation>Anonymní funkce</translation> <translation>Anonymní funkce</translation>
</message> </message>
<message>
<source>Animations</source>
<translation>Animace</translation>
</message>
</context>
<context>
<name>QmlProfiler::QV8ProfilerDataModel</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;program&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation>Hlavní program</translation>
</message>
</context> </context>
<context> <context>
<name>Qnx</name> <name>Qnx</name>

View File

@@ -10855,7 +10855,7 @@ Flag: %3</translation>
</message> </message>
</context> </context>
<context> <context>
<name>DebugMessagesModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Debug Message</source> <source>Debug Message</source>
<translation>Fejlretmeddelelse</translation> <translation>Fejlretmeddelelse</translation>
@@ -21008,7 +21008,7 @@ Fejl: %5</translation>
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>JavaScript</source> <source>JavaScript</source>
<translation>JavaScript</translation> <translation>JavaScript</translation>
@@ -32885,7 +32885,7 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::DebugMessagesModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Unknown Message %1</source> <source>Unknown Message %1</source>
<translation>Ukendt meddelelse %1</translation> <translation>Ukendt meddelelse %1</translation>
@@ -32902,24 +32902,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Location</source> <source>Location</source>
<translation>Placering</translation> <translation>Placering</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModelTest</name>
<message>
<source>Timestamp</source>
<translation>Tidsstempel</translation>
</message>
<message>
<source>Message</source>
<translation>Meddelelse</translation>
</message>
<message>
<source>Location</source>
<translation>Placering</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphModel</name>
<message> <message>
<source>Could not re-read events from temporary trace file: %1</source> <source>Could not re-read events from temporary trace file: %1</source>
<translation>Kunne ikke genlæse begivenheder fra midlertidig spor-fil: %1</translation> <translation>Kunne ikke genlæse begivenheder fra midlertidig spor-fil: %1</translation>
@@ -32932,25 +32914,14 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Create</source> <source>Create</source>
<translation>Opret</translation> <translation>Opret</translation>
</message> </message>
<message>
<source>Binding</source>
<translation>Binding</translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation>Signal</translation> <translation>Signal</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation>Kildekode ikke tilgængelig</translation> <translation>Kildekode ikke tilgængelig</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphView</name>
<message> <message>
<source>Flame Graph</source> <source>Flame Graph</source>
<translation>Flammegraf</translation> <translation>Flammegraf</translation>
@@ -32959,9 +32930,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Show Full Range</source> <source>Show Full Range</source>
<translation>Vis fulde område</translation> <translation>Vis fulde område</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModel</name>
<message> <message>
<source>Mouse Events</source> <source>Mouse Events</source>
<translation>Muse-begivenheder</translation> <translation>Muse-begivenheder</translation>
@@ -32970,10 +32938,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Keyboard Events</source> <source>Keyboard Events</source>
<translation>Tastatur-begivenheder</translation> <translation>Tastatur-begivenheder</translation>
</message> </message>
<message>
<source>Timestamp</source>
<translation>Tidsstempel</translation>
</message>
<message> <message>
<source>Key Press</source> <source>Key Press</source>
<translation>Tast tryk</translation> <translation>Tast tryk</translation>
@@ -33046,104 +33010,10 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Unknown</source> <source>Unknown</source>
<translation>Ukendt</translation> <translation>Ukendt</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModelTest</name>
<message>
<source>Mouse Events</source>
<translation>Muse-begivenheder</translation>
</message>
<message>
<source>Keyboard Events</source>
<translation>Tastatur-begivenheder</translation>
</message>
<message>
<source>Timestamp</source>
<translation>Tidsstempel</translation>
</message>
<message>
<source>Key Press</source>
<translation>Tast tryk</translation>
</message>
<message>
<source>Key</source>
<translation>Tast</translation>
</message>
<message>
<source>Modifiers</source>
<translation>Modifere</translation>
</message>
<message>
<source>Key Release</source>
<translation>Tast slip</translation>
</message>
<message>
<source>Keyboard Event</source>
<translation>Tastatur-begivenhed</translation>
</message>
<message>
<source>Mouse Press</source>
<translation>Mus tryk</translation>
</message>
<message>
<source>Button</source>
<translation>Knap</translation>
</message>
<message>
<source>Result</source>
<translation>Resultat</translation>
</message>
<message>
<source>Mouse Release</source>
<translation>Mus slip</translation>
</message>
<message>
<source>Mouse Move</source>
<translation>Mus flyt</translation>
</message>
<message>
<source>X</source>
<translation>X</translation>
</message>
<message>
<source>Y</source>
<translation>Y</translation>
</message>
<message>
<source>Double Click</source>
<translation>Dobbeltklik</translation>
</message>
<message>
<source>Mouse Wheel</source>
<translation>Musehjul</translation>
</message>
<message>
<source>Angle X</source>
<translation>Vinkel X</translation>
</message>
<message>
<source>Angle Y</source>
<translation>Vinkel Y</translation>
</message>
<message>
<source>Mouse Event</source>
<translation>Muse-begivenhed</translation>
</message>
<message>
<source>Unknown</source>
<translation>Ukendt</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModel</name>
<message> <message>
<source>Memory Allocation</source> <source>Memory Allocation</source>
<translation>Hukommelsesallokering</translation> <translation>Hukommelsesallokering</translation>
</message> </message>
<message>
<source>Memory Usage</source>
<translation>Hukommelsesforbrug</translation>
</message>
<message> <message>
<source>Memory Allocated</source> <source>Memory Allocated</source>
<translation>Hukommelse allokeret</translation> <translation>Hukommelse allokeret</translation>
@@ -33195,79 +33065,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Type</source> <source>Type</source>
<translation>Type</translation> <translation>Type</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Placering</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModelTest</name>
<message>
<source>Memory Allocation</source>
<translation>Hukommelsesallokering</translation>
</message>
<message>
<source>Memory Usage</source>
<translation>Hukommelsesforbrug</translation>
</message>
<message>
<source>Memory Allocated</source>
<translation>Hukommelse allokeret</translation>
</message>
<message>
<source>Total</source>
<translation>Sammenlagt</translation>
</message>
<message numerus="yes">
<source>%1 byte(s)</source>
<translation>
<numerusform>%1 byte</numerusform>
<numerusform>%1 byte</numerusform>
</translation>
</message>
<message>
<source>Allocated</source>
<translation>Allokeret</translation>
</message>
<message>
<source>Allocations</source>
<translation>Allokationer</translation>
</message>
<message>
<source>Type</source>
<translation>Type</translation>
</message>
<message>
<source>Heap Allocation</source>
<translation>Heap allokering</translation>
</message>
<message>
<source>Location</source>
<translation>Placering</translation>
</message>
<message>
<source>Deallocated</source>
<translation>Afallokeret</translation>
</message>
<message>
<source>Deallocations</source>
<translation>Afallokeringer</translation>
</message>
<message>
<source>Large Item Allocation</source>
<translation>Stor post allokering</translation>
</message>
<message>
<source>Memory Freed</source>
<translation>Hukommelse frigivet</translation>
</message>
<message>
<source>Heap Usage</source>
<translation>Heap forbrug</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModel</name>
<message> <message>
<source>Cache Size</source> <source>Cache Size</source>
<translation>Mellemlagerstørrelse</translation> <translation>Mellemlagerstørrelse</translation>
@@ -33280,10 +33077,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Image Loaded</source> <source>Image Loaded</source>
<translation>Billede indlæst</translation> <translation>Billede indlæst</translation>
</message> </message>
<message>
<source>Result</source>
<translation>Resultat</translation>
</message>
<message> <message>
<source>Load Error</source> <source>Load Error</source>
<translation>Indlæsningsfejl</translation> <translation>Indlæsningsfejl</translation>
@@ -33304,56 +33097,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Height</source> <source>Height</source>
<translation>Højde</translation> <translation>Højde</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModelTest</name>
<message>
<source>Image Cached</source>
<translation>Billede mellemlagret</translation>
</message>
<message>
<source>Cache Size</source>
<translation>Mellemlagerstørrelse</translation>
</message>
<message>
<source>Image Loaded</source>
<translation>Billede indlæst</translation>
</message>
<message>
<source>Duration</source>
<translation>Varighed</translation>
</message>
<message>
<source>File</source>
<translation>Fil</translation>
</message>
<message>
<source>Width</source>
<translation>Bredde</translation>
</message>
<message>
<source>Height</source>
<translation>Højde</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerAnimationsModel</name>
<message>
<source>Animations</source>
<translation>Animationer</translation>
</message>
<message>
<source>GUI Thread</source>
<translation>GUI-tråd</translation>
</message>
<message>
<source>Render Thread</source>
<translation>Renderingstråd</translation>
</message>
<message>
<source>Duration</source>
<translation>Varighed</translation>
</message>
<message> <message>
<source>Framerate</source> <source>Framerate</source>
<translation>Billedhastighed</translation> <translation>Billedhastighed</translation>
@@ -33362,9 +33105,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Context</source> <source>Context</source>
<translation>Kontekst</translation> <translation>Kontekst</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>QML-profilering</translation> <translation>QML-profilering</translation>
@@ -33397,9 +33137,6 @@ QML-redigeringen skal kende til en sandsynlig URI.</translation>
<source>Kit:</source> <source>Kit:</source>
<translation>Kit:</translation> <translation>Kit:</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerConfigWidget</name>
<message> <message>
<source>Flush data while profiling:</source> <source>Flush data while profiling:</source>
<translation>Tøm data under profilering:</translation> <translation>Tøm data under profilering:</translation>
@@ -33430,35 +33167,14 @@ itself takes time.</source>
og programmets hukommelsesforbrug. Det forvrænger profilen eftersom selve tømningen og programmets hukommelsesforbrug. Det forvrænger profilen eftersom selve tømningen
tager tid.</translation> tager tid.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerOptionsPage</name>
<message>
<source>QML Profiler</source>
<translation>QML-profilering</translation>
</message>
<message> <message>
<source>Analyzer</source> <source>Analyzer</source>
<translation>Analysator</translation> <translation>Analysator</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRangeModel</name>
<message>
<source>Duration</source>
<translation>Varighed</translation>
</message>
<message> <message>
<source>Details</source> <source>Details</source>
<translation>Detaljer</translation> <translation>Detaljer</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Placering</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message numerus="yes"> <message numerus="yes">
<source>Profiling application: %n events</source> <source>Profiling application: %n events</source>
<translation> <translation>
@@ -33492,9 +33208,6 @@ tager tid.</translation>
<source>Waiting for data</source> <source>Waiting for data</source>
<translation>Venter data</translation> <translation>Venter data</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsView</name>
<message> <message>
<source>Statistics</source> <source>Statistics</source>
<translation>Statistik</translation> <translation>Statistik</translation>
@@ -33511,13 +33224,6 @@ tager tid.</translation>
<source>Extended Event Statistics</source> <source>Extended Event Statistics</source>
<translation>Udvidet begivenhedsstatisik</translation> <translation>Udvidet begivenhedsstatisik</translation>
</message> </message>
<message>
<source>Show Full Range</source>
<translation>Vis fulde område</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message> <message>
<source>Load QML Trace</source> <source>Load QML Trace</source>
<translation>Indlæs QML-spor</translation> <translation>Indlæs QML-spor</translation>
@@ -33538,10 +33244,6 @@ tager tid.</translation>
<source>Hide or show event categories.</source> <source>Hide or show event categories.</source>
<translation>Skjul eller vis begivenhedskategorier.</translation> <translation>Skjul eller vis begivenhedskategorier.</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>QML-profilering</translation>
</message>
<message> <message>
<source>QML traces (*%1 *%2)</source> <source>QML traces (*%1 *%2)</source>
<translation>QML-spor (*%1 *%2)</translation> <translation>QML-spor (*%1 *%2)</translation>
@@ -33608,9 +33310,6 @@ Do you want to save the data first?</source>
<translation>Start af ny profileringssession vil forkaste de forrige data, inklusiv noter som ikke er gemt. <translation>Start af ny profileringssession vil forkaste de forrige data, inklusiv noter som ikke er gemt.
Vil du gemme dataene først?</translation> Vil du gemme dataene først?</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Timeline</source> <source>Timeline</source>
<translation>Tidslinje</translation> <translation>Tidslinje</translation>
@@ -33627,31 +33326,14 @@ Vil du gemme dataene først?</translation>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation>Nulstil zoom</translation> <translation>Nulstil zoom</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message>
<source>QML Profiler</source>
<translation>QML-profilering</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::SceneGraphTimelineModel</name>
<message> <message>
<source>Stage</source> <source>Stage</source>
<translation>Stage</translation> <translation>Stage</translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Varighed</translation>
</message>
<message> <message>
<source>Glyphs</source> <source>Glyphs</source>
<translation>Glyffer</translation> <translation>Glyffer</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerModelManager</name>
<message> <message>
<source>Failed to replay QML events from stash file.</source> <source>Failed to replay QML events from stash file.</source>
<translation>Kunne ikke genafspille QML-begivenheder fra stash-fil.</translation> <translation>Kunne ikke genafspille QML-begivenheder fra stash-fil.</translation>
@@ -33668,37 +33350,6 @@ Vil du gemme dataene først?</translation>
<source>Read past end in temporary trace file.</source> <source>Read past end in temporary trace file.</source>
<translation>Læs udover slutningen af midlertidig spor-fil.</translation> <translation>Læs udover slutningen af midlertidig spor-fil.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsModel</name>
<message>
<source>Painting</source>
<translation>Maler</translation>
</message>
<message>
<source>Compiling</source>
<translation>Kompilerer</translation>
</message>
<message>
<source>Creating</source>
<translation>Opretter</translation>
</message>
<message>
<source>Binding</source>
<translation>Binding</translation>
</message>
<message>
<source>Handling Signal</source>
<translation>Håndterer signal</translation>
</message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Could not re-read events from temporary trace file: %1</source>
<translation>Kunne ikke genlæse begivenheder fra midlertidig spor-fil: %1</translation>
</message>
<message> <message>
<source>Main program</source> <source>Main program</source>
<translation>Hovedprogram</translation> <translation>Hovedprogram</translation>
@@ -33707,26 +33358,10 @@ Vil du gemme dataene først?</translation>
<source>+%1 in recursive calls</source> <source>+%1 in recursive calls</source>
<translation>+%1 i rekursive kald</translation> <translation>+%1 i rekursive kald</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;bytekode&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Kildekode ikke tilgængelig</translation>
</message>
<message> <message>
<source>Calls</source> <source>Calls</source>
<translation>Kald</translation> <translation>Kald</translation>
</message> </message>
<message>
<source>Details</source>
<translation>Detaljer</translation>
</message>
<message>
<source>Location</source>
<translation>Placering</translation>
</message>
<message> <message>
<source>Longest Time</source> <source>Longest Time</source>
<translation>Længste tid</translation> <translation>Længste tid</translation>
@@ -33755,45 +33390,14 @@ Vil du gemme dataene først?</translation>
<source>Total Time</source> <source>Total Time</source>
<translation>Sammenlagt tid</translation> <translation>Sammenlagt tid</translation>
</message> </message>
<message>
<source>Type</source>
<translation>Type</translation>
</message>
<message> <message>
<source>Median Time</source> <source>Median Time</source>
<translation>Mediantid</translation> <translation>Mediantid</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerFlameGraphView</name>
<message>
<source>Total Time</source>
<translation>Sammenlagt tid</translation>
</message>
<message>
<source>Calls</source>
<translation>Kald</translation>
</message>
<message>
<source>Details</source>
<translation>Detaljer</translation>
</message>
<message>
<source>Mean Time</source>
<translation>Mean-tid</translation>
</message>
<message> <message>
<source>In Percent</source> <source>In Percent</source>
<translation>I procent</translation> <translation>I procent</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Placering</translation>
</message>
<message>
<source>Allocations</source>
<translation>Allokationer</translation>
</message>
<message> <message>
<source>Memory</source> <source>Memory</source>
<translation>Hukommelse</translation> <translation>Hukommelse</translation>
@@ -33806,9 +33410,6 @@ Vil du gemme dataene først?</translation>
<source>others</source> <source>others</source>
<translation>andre</translation> <translation>andre</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerRunConfiguration</name>
<message> <message>
<source>QML Profiler Settings</source> <source>QML Profiler Settings</source>
<translation>QML-profileringsindstillinger</translation> <translation>QML-profileringsindstillinger</translation>
@@ -44577,34 +44178,19 @@ Vil du overskrive dem?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerActions</name> <name>QmlProfiler</name>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>QML-profileringen kan bruges til at finde ydelsesflaskehalse i programmer som bruger QML.</translation> <translation>QML-profileringen kan bruges til at finde ydelsesflaskehalse i programmer som bruger QML.</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>QML-profilering</translation>
</message>
<message> <message>
<source>QML Profiler (Attach to Waiting Application)</source> <source>QML Profiler (Attach to Waiting Application)</source>
<translation>QML-profilering (tilkobl til ventende program)</translation> <translation>QML-profilering (tilkobl til ventende program)</translation>
</message> </message>
<message>
<source>Load QML Trace</source>
<translation>Indlæs QML-spor</translation>
</message>
<message>
<source>Save QML Trace</source>
<translation>Gem QML-spor</translation>
</message>
<message> <message>
<source>QML Profiler Options</source> <source>QML Profiler Options</source>
<translation>QML-profilering-valgmuligheder</translation> <translation>QML-profilering-valgmuligheder</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerEventStorage</name>
<message> <message>
<source>Cannot open temporary trace file to store events.</source> <source>Cannot open temporary trace file to store events.</source>
<translation>Kan ikke åbne midlertidig spor-fil til at lagre begivenheder.</translation> <translation>Kan ikke åbne midlertidig spor-fil til at lagre begivenheder.</translation>
@@ -44621,13 +44207,6 @@ Vil du overskrive dem?</translation>
<source>Could not re-open temporary trace file.</source> <source>Could not re-open temporary trace file.</source>
<translation>Kunne ikke genåbne midlertidig spor-fil.</translation> <translation>Kunne ikke genåbne midlertidig spor-fil.</translation>
</message> </message>
<message>
<source>Read past end in temporary trace file.</source>
<translation>Læs udover slutningen af midlertidig spor-fil.</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsRelativesModel</name>
<message> <message>
<source>Main Program</source> <source>Main Program</source>
<translation>Hovedprogram</translation> <translation>Hovedprogram</translation>
@@ -44636,14 +44215,6 @@ Vil du overskrive dem?</translation>
<source>called recursively</source> <source>called recursively</source>
<translation>kaldt rekursivt</translation> <translation>kaldt rekursivt</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;bytekode&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Kildekode ikke tilgængelig</translation>
</message>
<message> <message>
<source>Callee</source> <source>Callee</source>
<translation>Modtager</translation> <translation>Modtager</translation>
@@ -44652,18 +44223,6 @@ Vil du overskrive dem?</translation>
<source>Caller</source> <source>Caller</source>
<translation>Kalder</translation> <translation>Kalder</translation>
</message> </message>
<message>
<source>Type</source>
<translation>Type</translation>
</message>
<message>
<source>Total Time</source>
<translation>Sammenlagt tid</translation>
</message>
<message>
<source>Calls</source>
<translation>Kald</translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation>Modtager-beskrivelse</translation> <translation>Modtager-beskrivelse</translation>
@@ -44672,9 +44231,6 @@ Vil du overskrive dem?</translation>
<source>Caller Description</source> <source>Caller Description</source>
<translation>Kalder-beskrivelse</translation> <translation>Kalder-beskrivelse</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceFile</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation>Fejl under parsing af spordata-fil: %1</translation> <translation>Fejl under parsing af spordata-fil: %1</translation>

View File

@@ -14418,7 +14418,7 @@ Gibt an, wie sich die Rücktaste bezüglich Einrückung verhält.
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>QML-Profiler</translation> <translation>QML-Profiler</translation>
@@ -15374,11 +15374,7 @@ Bei vollständiger Cache-Simulation werden weitere Ereigniszähler aktiviert:
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerTool</name> <name>QmlProfiler</name>
<message>
<source>QML Profiler</source>
<translation>QML-Profiler</translation>
</message>
<message> <message>
<source>Load QML Trace</source> <source>Load QML Trace</source>
<translation>QML-Trace laden</translation> <translation>QML-Trace laden</translation>
@@ -16364,7 +16360,7 @@ Wenn falsch, wird das Zielobjekt sofort zur aktuellen Mouseposition bewegt.</tra
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Memory Usage</source> <source>Memory Usage</source>
<translation>Speicherverbrauch</translation> <translation>Speicherverbrauch</translation>
@@ -16397,10 +16393,6 @@ Wenn falsch, wird das Zielobjekt sofort zur aktuellen Mouseposition bewegt.</tra
<source>Binding</source> <source>Binding</source>
<translation>Binding</translation> <translation>Binding</translation>
</message> </message>
<message>
<source>Handling Signal</source>
<translation>Signal wird behandelt</translation>
</message>
<message> <message>
<source>Input Events</source> <source>Input Events</source>
<translation>Eingabeereignisse</translation> <translation>Eingabeereignisse</translation>
@@ -19823,7 +19815,7 @@ gehören nicht zu den verifizierten Remotes in %3. Anderes Verzeichnis angeben?<
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name> <name>QmlProfiler</name>
<message numerus="yes"> <message numerus="yes">
<source>Profiling application: %n events</source> <source>Profiling application: %n events</source>
<translation> <translation>
@@ -19857,9 +19849,6 @@ gehören nicht zu den verifizierten Remotes in %3. Anderes Verzeichnis angeben?<
<source>Waiting for data</source> <source>Waiting for data</source>
<translation>Warte auf Daten</translation> <translation>Warte auf Daten</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Timeline</source> <source>Timeline</source>
<translation>Zeitleiste</translation> <translation>Zeitleiste</translation>
@@ -19877,13 +19866,6 @@ gehören nicht zu den verifizierten Remotes in %3. Anderes Verzeichnis angeben?<
<translation>Vergrößerung zurücksetzen</translation> <translation>Vergrößerung zurücksetzen</translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message>
<source>QML Profiler</source>
<translation>QML-Profiler</translation>
</message>
</context>
<context> <context>
<name>Qnx</name> <name>Qnx</name>
<message> <message>
@@ -23687,7 +23669,7 @@ Bitte schließen Sie alle laufenden Instanzen Ihrer Anwendung vor dem Erstellen.
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::QmlProfilerModelManager</name> <name>QmlProfiler</name>
<message> <message>
<source>Failed to replay QML events from stash file.</source> <source>Failed to replay QML events from stash file.</source>
<translation>QML-Ereignisse aus der Stash-Datei konnten nicht wieder abgespielt werden.</translation> <translation>QML-Ereignisse aus der Stash-Datei konnten nicht wieder abgespielt werden.</translation>
@@ -31588,7 +31570,7 @@ konnte dem Projekt &quot;%2&quot; nicht hinzugefügt werden.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerConfigWidget</name> <name>QmlProfiler</name>
<message> <message>
<source>Flush data while profiling:</source> <source>Flush data while profiling:</source>
<translation>Daten während Profiling übertragen:</translation> <translation>Daten während Profiling übertragen:</translation>
@@ -31619,10 +31601,6 @@ itself takes time.</source>
Daten und den Speicherverbrauch der Applikation. Es stört das Profiling, weil das Daten und den Speicherverbrauch der Applikation. Es stört das Profiling, weil das
Senden selbst auch Zeit benötigt.</translation> Senden selbst auch Zeit benötigt.</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>QML-Profiler</translation>
</message>
<message> <message>
<source>Analyzer</source> <source>Analyzer</source>
<translation>Analyzer</translation> <translation>Analyzer</translation>
@@ -33391,19 +33369,7 @@ Das Setzen von Haltepunkten anhand von Dateinamen und Zeilennummern könnte fehl
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAnimationsModel</name> <name>QmlProfiler</name>
<message>
<source>Animations</source>
<translation>Animationen</translation>
</message>
<message>
<source>GUI Thread</source>
<translation>GUI-Thread</translation>
</message>
<message>
<source>Render Thread</source>
<translation>Render-Thread</translation>
</message>
<message> <message>
<source>Duration</source> <source>Duration</source>
<translation>Dauer</translation> <translation>Dauer</translation>
@@ -33416,13 +33382,6 @@ Das Setzen von Haltepunkten anhand von Dateinamen und Zeilennummern könnte fehl
<source>Context</source> <source>Context</source>
<translation>Kontext</translation> <translation>Kontext</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRangeModel</name>
<message>
<source>Duration</source>
<translation>Dauer</translation>
</message>
<message> <message>
<source>Details</source> <source>Details</source>
<translation>Details</translation> <translation>Details</translation>
@@ -33431,9 +33390,6 @@ Das Setzen von Haltepunkten anhand von Dateinamen und Zeilennummern könnte fehl
<source>Location</source> <source>Location</source>
<translation>Ort</translation> <translation>Ort</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerRunConfiguration</name>
<message> <message>
<source>QML Profiler Settings</source> <source>QML Profiler Settings</source>
<translation>Einstellungen des QML-Profilers</translation> <translation>Einstellungen des QML-Profilers</translation>
@@ -35497,7 +35453,7 @@ Sie werden erhalten.</numerusform>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsView</name> <name>QmlProfiler</name>
<message> <message>
<source>Statistics</source> <source>Statistics</source>
<translation>Statistik</translation> <translation>Statistik</translation>
@@ -35518,9 +35474,6 @@ Sie werden erhalten.</numerusform>
<source>Show Full Range</source> <source>Show Full Range</source>
<translation>Ganzen Bereich anzeigen</translation> <translation>Ganzen Bereich anzeigen</translation>
</message> </message>
</context>
<context>
<name>DebugMessagesModel</name>
<message> <message>
<source>Debug Message</source> <source>Debug Message</source>
<translation>Debugnachricht</translation> <translation>Debugnachricht</translation>
@@ -36454,7 +36407,7 @@ Siehe auch die Einstellungen für Google Test.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::DebugMessagesModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Unknown Message %1</source> <source>Unknown Message %1</source>
<translation>Unbekannte Nachricht %1</translation> <translation>Unbekannte Nachricht %1</translation>
@@ -36467,13 +36420,6 @@ Siehe auch die Einstellungen für Google Test.</translation>
<source>Message</source> <source>Message</source>
<translation>Nachricht</translation> <translation>Nachricht</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Ort</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphModel</name>
<message> <message>
<source>Could not re-read events from temporary trace file: %1</source> <source>Could not re-read events from temporary trace file: %1</source>
<translation>Ereignisse konnten nicht erneut aus der temporären Trace-Datei eingelesen werden: %1</translation> <translation>Ereignisse konnten nicht erneut aus der temporären Trace-Datei eingelesen werden: %1</translation>
@@ -36486,40 +36432,22 @@ Siehe auch die Einstellungen für Google Test.</translation>
<source>Create</source> <source>Create</source>
<translation>Erzeugung</translation> <translation>Erzeugung</translation>
</message> </message>
<message>
<source>Binding</source>
<translation>Binding</translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation>Signal</translation> <translation>Signal</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation>Kein Quelltext verfügbar</translation> <translation>Kein Quelltext verfügbar</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphView</name>
<message> <message>
<source>Flame Graph</source> <source>Flame Graph</source>
<translation>Flame Graph</translation> <translation>Flame Graph</translation>
</message> </message>
<message>
<source>Show Full Range</source>
<translation>Ganzen Bereich anzeigen</translation>
</message>
<message> <message>
<source>Reset Flame Graph</source> <source>Reset Flame Graph</source>
<translation>Flame Graph zurücksetzen</translation> <translation>Flame Graph zurücksetzen</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModel</name>
<message> <message>
<source>Mouse Events</source> <source>Mouse Events</source>
<translation>Mausereignisse</translation> <translation>Mausereignisse</translation>
@@ -36528,10 +36456,6 @@ Siehe auch die Einstellungen für Google Test.</translation>
<source>Keyboard Events</source> <source>Keyboard Events</source>
<translation>Tastaturereignisse</translation> <translation>Tastaturereignisse</translation>
</message> </message>
<message>
<source>Timestamp</source>
<translation>Zeitstempel</translation>
</message>
<message> <message>
<source>Key Press</source> <source>Key Press</source>
<translation>Tastendruck</translation> <translation>Tastendruck</translation>
@@ -36604,17 +36528,10 @@ Siehe auch die Einstellungen für Google Test.</translation>
<source>Unknown</source> <source>Unknown</source>
<translation>Unbekannt</translation> <translation>Unbekannt</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModel</name>
<message> <message>
<source>Memory Allocation</source> <source>Memory Allocation</source>
<translation>Speicherallokation</translation> <translation>Speicherallokation</translation>
</message> </message>
<message>
<source>Memory Usage</source>
<translation>Speicherverbrauch</translation>
</message>
<message> <message>
<source>Memory Allocated</source> <source>Memory Allocated</source>
<translation>Speicher allokiert</translation> <translation>Speicher allokiert</translation>
@@ -36666,13 +36583,6 @@ Siehe auch die Einstellungen für Google Test.</translation>
<source>Type</source> <source>Type</source>
<translation>Typ</translation> <translation>Typ</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Ort</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModel</name>
<message> <message>
<source>Cache Size</source> <source>Cache Size</source>
<translation>Puffergröße</translation> <translation>Puffergröße</translation>
@@ -36685,18 +36595,10 @@ Siehe auch die Einstellungen für Google Test.</translation>
<source>Image Loaded</source> <source>Image Loaded</source>
<translation>Bild geladen</translation> <translation>Bild geladen</translation>
</message> </message>
<message>
<source>Result</source>
<translation>Ergebnis</translation>
</message>
<message> <message>
<source>Load Error</source> <source>Load Error</source>
<translation>Ladefehler</translation> <translation>Ladefehler</translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Dauer</translation>
</message>
<message> <message>
<source>File</source> <source>File</source>
<translation>Datei</translation> <translation>Datei</translation>
@@ -36709,221 +36611,15 @@ Siehe auch die Einstellungen für Google Test.</translation>
<source>Height</source> <source>Height</source>
<translation>Höhe</translation> <translation>Höhe</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::SceneGraphTimelineModel</name>
<message> <message>
<source>Stage</source> <source>Stage</source>
<translation>Phase</translation> <translation>Phase</translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Dauer</translation>
</message>
<message> <message>
<source>Glyphs</source> <source>Glyphs</source>
<translation>Glyphen</translation> <translation>Glyphen</translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModelTest</name>
<message>
<source>Timestamp</source>
<translation>Zeitstempel</translation>
</message>
<message>
<source>Message</source>
<translation>Nachricht</translation>
</message>
<message>
<source>Location</source>
<translation>Ort</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModelTest</name>
<message>
<source>Mouse Events</source>
<translation>Mausereignisse</translation>
</message>
<message>
<source>Keyboard Events</source>
<translation>Tastaturereignisse</translation>
</message>
<message>
<source>Timestamp</source>
<translation>Zeitstempel</translation>
</message>
<message>
<source>Key Press</source>
<translation>Tastendruck</translation>
</message>
<message>
<source>Key</source>
<translation>Taste</translation>
</message>
<message>
<source>Modifiers</source>
<translation>Modifizierer</translation>
</message>
<message>
<source>Key Release</source>
<translation>Tastenfreigabe</translation>
</message>
<message>
<source>Keyboard Event</source>
<translation>Tastaturereignis</translation>
</message>
<message>
<source>Mouse Press</source>
<translation>Mausdruck</translation>
</message>
<message>
<source>Button</source>
<translation>Maustaste</translation>
</message>
<message>
<source>Result</source>
<translation>Ergebnis</translation>
</message>
<message>
<source>Mouse Release</source>
<translation>Mausfreigabe</translation>
</message>
<message>
<source>Mouse Move</source>
<translation>Mausbewegung</translation>
</message>
<message>
<source>X</source>
<translation>X</translation>
</message>
<message>
<source>Y</source>
<translation>Y</translation>
</message>
<message>
<source>Double Click</source>
<translation>Doppelklick</translation>
</message>
<message>
<source>Mouse Wheel</source>
<translation>Mausrad</translation>
</message>
<message>
<source>Angle X</source>
<translation>X-Winkel</translation>
</message>
<message>
<source>Angle Y</source>
<translation>Y-Winkel</translation>
</message>
<message>
<source>Mouse Event</source>
<translation>Mausereignis</translation>
</message>
<message>
<source>Unknown</source>
<translation>Unbekannt</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModelTest</name>
<message>
<source>Memory Allocation</source>
<translation>Speicherallokation</translation>
</message>
<message>
<source>Memory Usage</source>
<translation>Speicherverbrauch</translation>
</message>
<message>
<source>Memory Allocated</source>
<translation>Speicher allokiert</translation>
</message>
<message>
<source>Total</source>
<translation>Summe</translation>
</message>
<message numerus="yes">
<source>%n byte(s)</source>
<translation>
<numerusform>Ein Byte</numerusform>
<numerusform>%n Bytes</numerusform>
</translation>
</message>
<message>
<source>Allocated</source>
<translation>Allokiert</translation>
</message>
<message>
<source>Allocations</source>
<translation>Allokationen</translation>
</message>
<message>
<source>Type</source>
<translation>Typ</translation>
</message>
<message>
<source>Heap Allocation</source>
<translation>Heap-Allokation</translation>
</message>
<message>
<source>Location</source>
<translation>Ort</translation>
</message>
<message>
<source>Deallocated</source>
<translation>Freigegeben</translation>
</message>
<message>
<source>Deallocations</source>
<translation>Freigaben</translation>
</message>
<message>
<source>Large Item Allocation</source>
<translation>Allokation großer Elemente</translation>
</message>
<message>
<source>Memory Freed</source>
<translation>Speicher freigegeben</translation>
</message>
<message>
<source>Heap Usage</source>
<translation>Heap-Verbrauch</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModelTest</name>
<message>
<source>Image Cached</source>
<translation>Bild gepuffert</translation>
</message>
<message>
<source>Image Loaded</source>
<translation>Bild geladen</translation>
</message>
<message>
<source>Duration</source>
<translation>Dauer</translation>
</message>
<message>
<source>Cache Size</source>
<translation>Puffergröße</translation>
</message>
<message>
<source>File</source>
<translation>Datei</translation>
</message>
<message>
<source>Width</source>
<translation>Breite</translation>
</message>
<message>
<source>Height</source>
<translation>Höhe</translation>
</message>
</context>
<context> <context>
<name>Qnx</name> <name>Qnx</name>
<message> <message>
@@ -37430,7 +37126,7 @@ Fehler: %5</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfilerFlameGraphView</name> <name>QmlProfiler</name>
<message> <message>
<source>Total Time</source> <source>Total Time</source>
<translation>Gesamtdauer</translation> <translation>Gesamtdauer</translation>
@@ -37439,26 +37135,10 @@ Fehler: %5</translation>
<source>Calls</source> <source>Calls</source>
<translation>Aufrufe</translation> <translation>Aufrufe</translation>
</message> </message>
<message>
<source>Details</source>
<translation>Details</translation>
</message>
<message>
<source>Mean Time</source>
<translation>Durchschnittsdauer</translation>
</message>
<message> <message>
<source>In Percent</source> <source>In Percent</source>
<translation>In Prozent</translation> <translation>In Prozent</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Ort</translation>
</message>
<message>
<source>Allocations</source>
<translation>Allokationen</translation>
</message>
<message> <message>
<source>Memory</source> <source>Memory</source>
<translation>Speicher</translation> <translation>Speicher</translation>
@@ -39120,35 +38800,11 @@ Bitte aktualisieren Sie Ihr Kit (%3) oder wählen Sie eine mkspec für qmake, di
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::QmlProfilerStatisticsModel</name> <name>QmlProfiler</name>
<message>
<source>Painting</source>
<translation>Zeichnen</translation>
</message>
<message>
<source>Compiling</source>
<translation>Kompilieren</translation>
</message>
<message>
<source>Creating</source>
<translation>Erstellen</translation>
</message>
<message>
<source>Binding</source>
<translation>Binding</translation>
</message>
<message> <message>
<source>Handling Signal</source> <source>Handling Signal</source>
<translation>Signalverarbeitung</translation> <translation>Signalverarbeitung</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Could not re-read events from temporary trace file: %1</source>
<translation>Ereignisse konnten nicht erneut aus der temporären Trace-Datei eingelesen werden: %1</translation>
</message>
<message> <message>
<source>Main program</source> <source>Main program</source>
<translation>Hauptprogramm</translation> <translation>Hauptprogramm</translation>
@@ -39157,26 +38813,6 @@ Bitte aktualisieren Sie Ihr Kit (%3) oder wählen Sie eine mkspec für qmake, di
<source>+%1 in recursive calls</source> <source>+%1 in recursive calls</source>
<translation>+%1 in rekursiven Aufrufen</translation> <translation>+%1 in rekursiven Aufrufen</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;bytecode&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Kein Quellcode verfügbar</translation>
</message>
<message>
<source>Calls</source>
<translation>Aufrufe</translation>
</message>
<message>
<source>Details</source>
<translation>Details</translation>
</message>
<message>
<source>Location</source>
<translation>Ort</translation>
</message>
<message> <message>
<source>Longest Time</source> <source>Longest Time</source>
<translation>Längste Dauer</translation> <translation>Längste Dauer</translation>
@@ -39201,14 +38837,6 @@ Bitte aktualisieren Sie Ihr Kit (%3) oder wählen Sie eine mkspec für qmake, di
<source>Time in Percent</source> <source>Time in Percent</source>
<translation>Dauer in Prozent</translation> <translation>Dauer in Prozent</translation>
</message> </message>
<message>
<source>Total Time</source>
<translation>Gesamtdauer</translation>
</message>
<message>
<source>Type</source>
<translation>Typ</translation>
</message>
<message> <message>
<source>Median Time</source> <source>Median Time</source>
<translation>Mediandauer</translation> <translation>Mediandauer</translation>
@@ -42002,34 +41630,19 @@ Was soll Qt Creator tun?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerActions</name> <name>QmlProfiler</name>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>Der QML-Profiler kann zum Auffinden geschwindigkeitsrelevanter Engpässe in QML-Anwendungen verwendet werden.</translation> <translation>Der QML-Profiler kann zum Auffinden geschwindigkeitsrelevanter Engpässe in QML-Anwendungen verwendet werden.</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>QML-Profiler</translation>
</message>
<message> <message>
<source>QML Profiler (Attach to Waiting Application)</source> <source>QML Profiler (Attach to Waiting Application)</source>
<translation>QML-Profiler (mit wartender Anwendung verbinden)</translation> <translation>QML-Profiler (mit wartender Anwendung verbinden)</translation>
</message> </message>
<message>
<source>Load QML Trace</source>
<translation>QML-Trace laden</translation>
</message>
<message>
<source>Save QML Trace</source>
<translation>QML-Trace speichern</translation>
</message>
<message> <message>
<source>QML Profiler Options</source> <source>QML Profiler Options</source>
<translation>Einstellungen des QML-Profilers</translation> <translation>Einstellungen des QML-Profilers</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerEventStorage</name>
<message> <message>
<source>Cannot open temporary trace file to store events.</source> <source>Cannot open temporary trace file to store events.</source>
<translation>Eine temporäre Trace-Datei kann nicht geöffnet werden um Ereignisse zu speichern.</translation> <translation>Eine temporäre Trace-Datei kann nicht geöffnet werden um Ereignisse zu speichern.</translation>
@@ -42054,13 +41667,6 @@ Was soll Qt Creator tun?</translation>
<source>Could not re-open temporary trace file.</source> <source>Could not re-open temporary trace file.</source>
<translation>Eine temporäre Trace-Datei konnte nicht neu geöffnet werden.</translation> <translation>Eine temporäre Trace-Datei konnte nicht neu geöffnet werden.</translation>
</message> </message>
<message>
<source>Read past end in temporary trace file.</source>
<translation>Über das Ende der temporären Trace-Datei hinaus gelesen.</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsRelativesModel</name>
<message> <message>
<source>Main Program</source> <source>Main Program</source>
<translation>Hauptprogramm</translation> <translation>Hauptprogramm</translation>
@@ -42069,14 +41675,6 @@ Was soll Qt Creator tun?</translation>
<source>called recursively</source> <source>called recursively</source>
<translation>rekursiv aufgerufen</translation> <translation>rekursiv aufgerufen</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;bytecode&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Kein Quellcode verfügbar</translation>
</message>
<message> <message>
<source>Callee</source> <source>Callee</source>
<translation>Aufgerufene Funktion</translation> <translation>Aufgerufene Funktion</translation>
@@ -42085,18 +41683,6 @@ Was soll Qt Creator tun?</translation>
<source>Caller</source> <source>Caller</source>
<translation>Aufrufende Funktion</translation> <translation>Aufrufende Funktion</translation>
</message> </message>
<message>
<source>Type</source>
<translation>Typ</translation>
</message>
<message>
<source>Total Time</source>
<translation>Gesamtdauer</translation>
</message>
<message>
<source>Calls</source>
<translation>Aufrufe</translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation>Bescheibung der aufgerufenen Funktion</translation> <translation>Bescheibung der aufgerufenen Funktion</translation>
@@ -42105,9 +41691,6 @@ Was soll Qt Creator tun?</translation>
<source>Caller Description</source> <source>Caller Description</source>
<translation>Beschreibung der aufrufenden Funktion</translation> <translation>Beschreibung der aufrufenden Funktion</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceFile</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation>Fehler beim Auswerten der Trace-Datei: %1</translation> <translation>Fehler beim Auswerten der Trace-Datei: %1</translation>

View File

@@ -36308,12 +36308,6 @@ Do you want to retry?</source>
<extracomment>Error message shown after &apos;Could not connect ... debugger:&quot;</extracomment> <extracomment>Error message shown after &apos;Could not connect ... debugger:&quot;</extracomment>
<translation type="obsolete">L&apos;application n&apos;est pas configurée pour du débogage QML/JS. </translation> <translation type="obsolete">L&apos;application n&apos;est pas configurée pour du débogage QML/JS. </translation>
</message> </message>
<message>
<source>Could not connect to the in-process QML debugger:
%1</source>
<extracomment>%1 is detailed error message</extracomment>
<translation type="obsolete">Impossible de se connecter au processus de débogage QML : %1</translation>
</message>
<message> <message>
<source>Starting %1 %2</source> <source>Starting %1 %2</source>
<translation>Démarrer %1 %2</translation> <translation>Démarrer %1 %2</translation>
@@ -38719,7 +38713,7 @@ if (a &amp;&amp;
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>Dialog</source> <source>Dialog</source>
<translation type="obsolete">Boîte de dialogue</translation> <translation type="obsolete">Boîte de dialogue</translation>
@@ -40744,20 +40738,12 @@ These files are preserved.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerEngine</name> <name>QmlProfiler</name>
<message>
<source>QML Profiler</source>
<translation>Profileur QML</translation>
</message>
<message> <message>
<source>Application finished before loading profiled data. <source>Application finished before loading profiled data.
Please use the stop button instead.</source> Please use the stop button instead.</source>
<translation type="obsolete">L&apos;application s&apos;est terminée avant le chargement des données de profilage. Veuillez utiliser le bouton d&apos;arrêt à la place. </translation> <translation type="obsolete">L&apos;application s&apos;est terminée avant le chargement des données de profilage. Veuillez utiliser le bouton d&apos;arrêt à la place. </translation>
</message> </message>
<message>
<source>No executable file to launch.</source>
<translation>Pas de fichier d&apos;exécutable à lancer. </translation>
</message>
<message> <message>
<source>The port seems to be in use.</source> <source>The port seems to be in use.</source>
<extracomment>Error message shown after &apos;Could not connect ... debugger:&quot;</extracomment> <extracomment>Error message shown after &apos;Could not connect ... debugger:&quot;</extracomment>
@@ -40778,36 +40764,10 @@ These files are preserved.</source>
<extracomment>%1 is detailed error message</extracomment> <extracomment>%1 is detailed error message</extracomment>
<translation>Impossible de se connecter au processus de débogage QML : %1</translation> <translation>Impossible de se connecter au processus de débogage QML : %1</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventStatistics</name>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation type="obsolete">Code source non disponible</translation> <translation type="obsolete">Code source non disponible</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="obsolete">&lt;bytecode&gt;</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsView</name>
<message>
<source>Location</source>
<translation type="obsolete">Emplacement</translation>
</message>
<message>
<source>Type</source>
<translation type="obsolete">Type</translation>
</message>
<message>
<source>Time in Percent</source>
<translation type="obsolete">Temps en pourcent</translation>
</message>
<message>
<source>Total Time</source>
<translation type="obsolete">Temps total</translation>
</message>
<message> <message>
<source>Calls</source> <source>Calls</source>
<translation type="obsolete">Appels</translation> <translation type="obsolete">Appels</translation>
@@ -40816,60 +40776,6 @@ These files are preserved.</source>
<source>Time per Call</source> <source>Time per Call</source>
<translation type="obsolete">Temps par appel</translation> <translation type="obsolete">Temps par appel</translation>
</message> </message>
<message>
<source>Mean Time</source>
<translation type="obsolete">Temps moyen</translation>
</message>
<message>
<source>Median Time</source>
<translation type="obsolete">Temps médian</translation>
</message>
<message>
<source>Longest Time</source>
<translation type="obsolete">Plus long temps</translation>
</message>
<message>
<source>Shortest Time</source>
<translation type="obsolete">Plus court temps</translation>
</message>
<message>
<source>Details</source>
<translation type="obsolete">Détails</translation>
</message>
<message>
<source>Paint</source>
<translation type="obsolete">Peindre</translation>
</message>
<message>
<source>Compile</source>
<translation type="obsolete">Compiler</translation>
</message>
<message>
<source>Create</source>
<translation type="obsolete">Créer</translation>
</message>
<message>
<source>Binding</source>
<translation type="obsolete">Lier</translation>
</message>
<message>
<source>Signal</source>
<translation type="obsolete">Signal</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControlFactory</name>
<message>
<source>QML Profiler</source>
<translation type="obsolete">Profileur QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message>
<source>QML Profiler</source>
<translation>Profileur QML</translation>
</message>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>Le profileur QML peut être utilisé pour trouver les goulots d&apos;étranglement des applications QML. </translation> <translation>Le profileur QML peut être utilisé pour trouver les goulots d&apos;étranglement des applications QML. </translation>
@@ -40896,30 +40802,6 @@ Please use the stop button instead.</source>
<translation>L&apos;application s&apos;est terminée avant le chargement des données de profilage. <translation>L&apos;application s&apos;est terminée avant le chargement des données de profilage.
Veuillez utiliser le bouton d&apos;arrêt à la place.</translation> Veuillez utiliser le bouton d&apos;arrêt à la place.</translation>
</message> </message>
<message>
<source>Copy Row</source>
<translation type="obsolete">Copier la ligne</translation>
</message>
<message>
<source>Copy Table</source>
<translation type="obsolete">Copier la table</translation>
</message>
<message>
<source>Extended Event Statistics</source>
<translation type="obsolete">Statistiques d&apos;événements étendues</translation>
</message>
<message>
<source>Limit Events Pane to Current Range</source>
<translation type="obsolete">Limiter le panneau d&apos;événements à la portée actuelle</translation>
</message>
<message>
<source>Reset Events Pane</source>
<translation type="obsolete">Réinitialisé le panneau d&apos;événements</translation>
</message>
<message>
<source>Reset Zoom</source>
<translation type="obsolete">Réinitialiser le zoom</translation>
</message>
<message> <message>
<source>The QML profiler requires Qt 4.7.4 or newer. <source>The QML profiler requires Qt 4.7.4 or newer.
The Qt version configured in your active build configuration is too old. The Qt version configured in your active build configuration is too old.
@@ -40928,18 +40810,6 @@ Do you want to continue?</source>
La version de Qt configurée dans votre configuration de compilation active est trop ancienne. La version de Qt configurée dans votre configuration de compilation active est trop ancienne.
Voulez vous continuer ?</translation> Voulez vous continuer ?</translation>
</message> </message>
<message>
<source>Events</source>
<translation type="obsolete">Événements</translation>
</message>
<message>
<source>Timeline</source>
<translation type="obsolete">Ligne du temps</translation>
</message>
<message>
<source>JavaScript</source>
<translation type="obsolete">JavaScript</translation>
</message>
<message> <message>
<source>%1 s</source> <source>%1 s</source>
<translation>%1 s</translation> <translation>%1 s</translation>
@@ -40980,10 +40850,6 @@ Voulez vous continuer ?</translation>
<source>Elapsed: %1 s</source> <source>Elapsed: %1 s</source>
<translation type="obsolete">Écoulé : %1 s</translation> <translation type="obsolete">Écoulé : %1 s</translation>
</message> </message>
<message>
<source>Qt Creator</source>
<translation type="obsolete">Qt Creator</translation>
</message>
<message> <message>
<source>Could not connect to the in-process QML profiler. <source>Could not connect to the in-process QML profiler.
Do you want to retry?</source> Do you want to retry?</source>
@@ -40998,9 +40864,6 @@ Souhaitez-vous réessayer ?</translation>
<source>Detach</source> <source>Detach</source>
<translation type="obsolete">Détacher</translation> <translation type="obsolete">Détacher</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::RemoteLinuxQmlProfilerRunner</name>
<message> <message>
<source>Gathering ports failed: %1</source> <source>Gathering ports failed: %1</source>
<translation type="obsolete">Échec de la récupération des ports : %1 </translation> <translation type="obsolete">Échec de la récupération des ports : %1 </translation>
@@ -41031,7 +40894,7 @@ Souhaitez-vous réessayer ?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::TraceWindow</name> <name>Tracing</name>
<message> <message>
<source>Jump to previous event</source> <source>Jump to previous event</source>
<translation type="obsolete">Sauter à l&apos;événement précédent</translation> <translation type="obsolete">Sauter à l&apos;événement précédent</translation>
@@ -43052,7 +42915,7 @@ Pour compiler l&apos;observateur QML, allez à la page des versions de Qt, séle
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Painting</source> <source>Painting</source>
<translation>Dessin</translation> <translation>Dessin</translation>
@@ -43065,10 +42928,6 @@ Pour compiler l&apos;observateur QML, allez à la page des versions de Qt, séle
<source>Creating</source> <source>Creating</source>
<translation>Création</translation> <translation>Création</translation>
</message> </message>
<message>
<source>Binding</source>
<translation>Liaison</translation>
</message>
<message> <message>
<source>Handling Signal</source> <source>Handling Signal</source>
<translation>Gestion du signal</translation> <translation>Gestion du signal</translation>
@@ -47438,7 +47297,7 @@ Voulez-vous la tuer ?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerEventsWidget</name> <name>QmlProfiler</name>
<message> <message>
<source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications</source> <source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications</source>
<translation type="obsolete">Suivre les informations à partir du moteur JavaScript V8. Disponible uniquement dans les applications basées sur Qt5</translation> <translation type="obsolete">Suivre les informations à partir du moteur JavaScript V8. Disponible uniquement dans les applications basées sur Qt5</translation>
@@ -47467,9 +47326,6 @@ Voulez-vous la tuer ?</translation>
<source>Reset Events Pane</source> <source>Reset Events Pane</source>
<translation>Réinitialiser le panneau d&apos;événements</translation> <translation>Réinitialiser le panneau d&apos;événements</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name>
<message> <message>
<source>Location</source> <source>Location</source>
<translation>Emplacement</translation> <translation>Emplacement</translation>
@@ -47496,10 +47352,6 @@ Voulez-vous la tuer ?</translation>
<translatorcomment>Contexte de &quot;self&quot; ?</translatorcomment> <translatorcomment>Contexte de &quot;self&quot; ?</translatorcomment>
<translation>Temps interne</translation> <translation>Temps interne</translation>
</message> </message>
<message>
<source>Calls</source>
<translation>Appels</translation>
</message>
<message> <message>
<source>Mean Time</source> <source>Mean Time</source>
<translation>Temps moyen</translation> <translation>Temps moyen</translation>
@@ -47562,10 +47414,6 @@ des références à des éléments dans d&apos;autres fichiers, des boucles, etc
<source>Paint</source> <source>Paint</source>
<translation>Peindre</translation> <translation>Peindre</translation>
</message> </message>
<message>
<source>Compile</source>
<translation>Compiler</translation>
</message>
<message> <message>
<source>Create</source> <source>Create</source>
<translation>Créer</translation> <translation>Créer</translation>
@@ -47579,9 +47427,6 @@ des références à des éléments dans d&apos;autres fichiers, des boucles, etc
<source>Signal</source> <source>Signal</source>
<translation>Signal</translation> <translation>Signal</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsParentsAndChildrenView</name>
<message> <message>
<source>Part of binding loop</source> <source>Part of binding loop</source>
<translation type="obsolete">Partie de boucle de liaison</translation> <translation type="obsolete">Partie de boucle de liaison</translation>
@@ -47598,18 +47443,6 @@ des références à des éléments dans d&apos;autres fichiers, des boucles, etc
<source>Caller</source> <source>Caller</source>
<translation>Appelant</translation> <translation>Appelant</translation>
</message> </message>
<message>
<source>Type</source>
<translation>Type</translation>
</message>
<message>
<source>Total Time</source>
<translation>Temps total</translation>
</message>
<message>
<source>Calls</source>
<translation>Appels</translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation>Description de l&apos;appelé</translation> <translation>Description de l&apos;appelé</translation>
@@ -52220,24 +52053,7 @@ pour donner un indice à Qt Creator à propos d&apos;une URI probable.</translat
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerClientManager</name> <name>QmlProfiler</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
<message>
<source>Could not connect to the in-process QML profiler.
Do you want to retry?</source>
<translation>Impossible de connecter au profileur QML du processus.
Souhaitez-vous réessayer ?</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerDataModel</name>
<message>
<source>Source code not available</source>
<translation type="obsolete">Code source non disponible</translation>
</message>
<message> <message>
<source>Source code not available.</source> <source>Source code not available.</source>
<translation>Code source non disponible.</translation> <translation>Code source non disponible.</translation>
@@ -52322,9 +52138,6 @@ Souhaitez-vous réessayer ?</translation>
<source>Trying to set unknown state in events list</source> <source>Trying to set unknown state in events list</source>
<translation type="obsolete">Tentative de définition d&apos;état inconnu dans la liste d&apos;évènements</translation> <translation type="obsolete">Tentative de définition d&apos;état inconnu dans la liste d&apos;évènements</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message> <message>
<source>Loading data</source> <source>Loading data</source>
<translation>Chargement des données</translation> <translation>Chargement des données</translation>
@@ -52341,9 +52154,6 @@ Souhaitez-vous réessayer ?</translation>
<source>Application stopped before loading all data</source> <source>Application stopped before loading all data</source>
<translation>L&apos;application a stoppé avant le chargement de toutes les données</translation> <translation>L&apos;application a stoppé avant le chargement de toutes les données</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Jump to previous event</source> <source>Jump to previous event</source>
<translation>Sauter à l&apos;événement précédent</translation> <translation>Sauter à l&apos;événement précédent</translation>
@@ -52364,21 +52174,10 @@ Souhaitez-vous réessayer ?</translation>
<source>View event information on mouseover</source> <source>View event information on mouseover</source>
<translation>Afficher les informations sur l&apos;événement lorsque du survol de la souris</translation> <translation>Afficher les informations sur l&apos;événement lorsque du survol de la souris</translation>
</message> </message>
<message>
<source>Limit Events Pane to Current Range</source>
<translation>Limiter le panneau d&apos;événements à la portée actuelle</translation>
</message>
<message>
<source>Reset Events Pane</source>
<translation>Réinitialiser le panneau d&apos;événements</translation>
</message>
<message> <message>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation>Réinitialiser le zoom</translation> <translation>Réinitialiser le zoom</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message> <message>
<source>Events</source> <source>Events</source>
<translation>Événements</translation> <translation>Événements</translation>
@@ -59579,203 +59378,27 @@ Veuillez fermer toutes les instances de votre application en cours d&apos;exécu
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::LocalQmlProfilerRunner</name> <name>QmlProfiler</name>
<message> <message>
<source>No executable file to launch.</source> <source>No executable file to launch.</source>
<translation>Pas de fichier d&apos;exécutable à lancer.</translation> <translation>Pas de fichier d&apos;exécutable à lancer.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControl</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
<message>
<source>Could not connect to the in-process QML debugger:
%1</source>
<extracomment>%1 is detailed error message</extracomment>
<translation>Impossible de se connecter au processus de débogage QML :
%1</translation>
</message>
<message>
<source>QML Profiler</source>
<translation>Profileur QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;programme&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation>Programme principal</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventParentsModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;programme&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation>Programme principal</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventChildrenModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;programme&gt;</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventRelativesView</name>
<message>
<source>Part of binding loop.</source>
<translation>Partie d&apos;une boucle de liaison.</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerDataState</name>
<message>
<source>Trying to set unknown state in events list.</source>
<translation>Tentative de définir un état inconnu dans la liste d&apos;évènements.</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerModelManager</name>
<message>
<source>Unexpected complete signal in data model.</source>
<translation>Signal complet inattendu dans le modèle de données.</translation>
</message>
<message>
<source>Could not open %1 for writing.</source>
<translation>Impossible d&apos;ouvrir %1 en écriture.</translation>
</message>
<message>
<source>Could not open %1 for reading.</source>
<translation>Impossible d&apos;ouvrir %1 en lecture.</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PaintEventsModelProxy</name>
<message>
<source>Painting</source>
<translation>Dessin</translation>
</message>
<message>
<source> µs</source>
<translation> µs</translation>
</message>
<message>
<source> ms</source>
<translation> ms</translation>
</message>
<message>
<source> s</source>
<translation> s</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerPlugin</name>
<message>
<source>QML Profiler</source>
<translation>Profileur QML</translation>
</message>
<message> <message>
<source>QML Profiler (External)</source> <source>QML Profiler (External)</source>
<translation>QML Profiler (externe)</translation> <translation>QML Profiler (externe)</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerProcessedModel</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;bytecode&gt;</translation>
</message>
<message>
<source>Source code not available.</source>
<translation>Code source non disponible.</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerSimpleModel</name>
<message> <message>
<source>Animations</source> <source>Animations</source>
<translation>Animations</translation> <translation>Animations</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::BasicTimelineModel</name>
<message>
<source> µs</source>
<translation> µs</translation>
</message>
<message>
<source> ms</source>
<translation> ms</translation>
</message>
<message>
<source> s</source>
<translation> s</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerFileReader</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation>Erreur pendant l&apos;analyse le fichier de données de traçage : %1</translation> <translation>Erreur pendant l&apos;analyse le fichier de données de traçage : %1</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QV8ProfilerDataModel</name>
<message>
<source>&lt;program&gt;</source>
<translation>&lt;programme&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation>Programme principal</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QV8ProfilerEventsMainView</name>
<message>
<source> µs</source>
<translation> µs</translation>
</message>
<message>
<source> ms</source>
<translation> ms</translation>
</message>
<message>
<source> s</source>
<translation> s</translation>
</message>
<message>
<source>Paint</source>
<translation>Peindre</translation>
</message>
<message> <message>
<source>Compile</source> <source>Compile</source>
<translation>Compilation</translation> <translation>Compilation</translation>
</message> </message>
<message>
<source>Create</source>
<translation>Créer</translation>
</message>
<message>
<source>Binding</source>
<translation>Liaison</translation>
</message>
<message>
<source>Signal</source>
<translation>Signal</translation>
</message>
</context> </context>
<context> <context>
<name>QmlProjectManager::QmlProjectFileFormat</name> <name>QmlProjectManager::QmlProjectFileFormat</name>

View File

@@ -7677,7 +7677,7 @@ Greška: %5</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfilerFlameGraphView</name> <name>QmlProfiler</name>
<message> <message>
<source>Total Time</source> <source>Total Time</source>
<translation>Cjelokupno vrijeme</translation> <translation>Cjelokupno vrijeme</translation>
@@ -7718,9 +7718,6 @@ Greška: %5</translation>
<source>others</source> <source>others</source>
<translation>ostali</translation> <translation>ostali</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>QML Profiler</translation> <translation>QML Profiler</translation>
@@ -7753,9 +7750,6 @@ Greška: %5</translation>
<source>Kit:</source> <source>Kit:</source>
<translation>Komplet:</translation> <translation>Komplet:</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerConfigWidget</name>
<message> <message>
<source>Flush data while profiling:</source> <source>Flush data while profiling:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -28976,7 +28970,7 @@ Rok upotrebe: %3</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfilerEventStorage</name> <name>QmlProfiler</name>
<message> <message>
<source>Failed to reset temporary trace file.</source> <source>Failed to reset temporary trace file.</source>
<translation>Neuspjelo resetiranje privremene trace datoteke.</translation> <translation>Neuspjelo resetiranje privremene trace datoteke.</translation>
@@ -35721,7 +35715,7 @@ ID oznake moraju započeti malim slovom.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>DebugMessagesModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Debug Message</source> <source>Debug Message</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -35742,9 +35736,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Info Message</source> <source>Info Message</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModel</name>
<message> <message>
<source>Unknown Message %1</source> <source>Unknown Message %1</source>
<translation>Nepoznata poruka %1</translation> <translation>Nepoznata poruka %1</translation>
@@ -35757,13 +35748,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Message</source> <source>Message</source>
<translation>Poruka</translation> <translation>Poruka</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Mjesto</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphModel</name>
<message> <message>
<source>Could not re-read events from temporary trace file: %1</source> <source>Could not re-read events from temporary trace file: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -35792,9 +35776,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Source code not available</source> <source>Source code not available</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphView</name>
<message> <message>
<source>Flame Graph</source> <source>Flame Graph</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -35807,9 +35788,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Reset Flame Graph</source> <source>Reset Flame Graph</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModel</name>
<message> <message>
<source>Mouse Events</source> <source>Mouse Events</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -35818,10 +35796,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Keyboard Events</source> <source>Keyboard Events</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Timestamp</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Key Press</source> <source>Key Press</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -35894,9 +35868,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Unknown</source> <source>Unknown</source>
<translation>Nepoznato</translation> <translation>Nepoznato</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModel</name>
<message> <message>
<source>Memory Allocation</source> <source>Memory Allocation</source>
<translation>Dodijeljivanje memorije</translation> <translation>Dodijeljivanje memorije</translation>
@@ -35929,10 +35900,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Allocated</source> <source>Allocated</source>
<translation>Dodijeljena</translation> <translation>Dodijeljena</translation>
</message> </message>
<message>
<source>Allocations</source>
<translation>Dodijeljivanja</translation>
</message>
<message> <message>
<source>Deallocated</source> <source>Deallocated</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -35957,13 +35924,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Type</source> <source>Type</source>
<translation>Vrsta</translation> <translation>Vrsta</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Mjesto</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModel</name>
<message> <message>
<source>Cache Size</source> <source>Cache Size</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -35976,18 +35936,10 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Image Loaded</source> <source>Image Loaded</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Result</source>
<translation>Rezultat</translation>
</message>
<message> <message>
<source>Load Error</source> <source>Load Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Duration</source>
<translation type="unfinished">Trajanje</translation>
</message>
<message> <message>
<source>File</source> <source>File</source>
<translation>Datoteka</translation> <translation>Datoteka</translation>
@@ -36000,17 +35952,10 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Height</source> <source>Height</source>
<translation>Visina</translation> <translation>Visina</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerActions</name>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>QML Profiler (Attach to Waiting Application)</source> <source>QML Profiler (Attach to Waiting Application)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36027,9 +35972,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>QML Profiler Options</source> <source>QML Profiler Options</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerAnimationsModel</name>
<message> <message>
<source>Animations</source> <source>Animations</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36042,10 +35984,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Render Thread</source> <source>Render Thread</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Duration</source>
<translation type="unfinished">Trajanje</translation>
</message>
<message> <message>
<source>Framerate</source> <source>Framerate</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36054,17 +35992,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Context</source> <source>Context</source>
<translation>Sadržaj</translation> <translation>Sadržaj</translation>
</message> </message>
</context>
<context>
<name>MainView</name>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Memory Usage</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Pixmap Cache</source> <source>Pixmap Cache</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36073,10 +36000,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Scene Graph</source> <source>Scene Graph</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Animations</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Painting</source> <source>Painting</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36089,10 +36012,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Creating</source> <source>Creating</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Binding</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Handling Signal</source> <source>Handling Signal</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36105,14 +36024,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Debug Messages</source> <source>Debug Messages</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>GUI Thread</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Render Thread</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Render Thread Details</source> <source>Render Thread Details</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36193,9 +36104,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Texture Delete</source> <source>Texture Delete</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerModelManager</name>
<message> <message>
<source>Failed to replay QML events from stash file.</source> <source>Failed to replay QML events from stash file.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36208,46 +36116,18 @@ ID oznake moraju započeti malim slovom.</translation>
<source>anonymous function</source> <source>anonymous function</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Read past end in temporary trace file.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerOptionsPage</name>
<message>
<source>QML Profiler</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Analyzer</source> <source>Analyzer</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRangeModel</name>
<message> <message>
<source>Duration</source> <source>Duration</source>
<translation>Trajanje</translation> <translation>Trajanje</translation>
</message> </message>
<message>
<source>Details</source>
<translation>Detalji</translation>
</message>
<message>
<source>Location</source>
<translation>Mjesto</translation>
</message>
</context>
<context>
<name>QmlProfilerRunConfiguration</name>
<message> <message>
<source>QML Profiler Settings</source> <source>QML Profiler Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message numerus="yes"> <message numerus="yes">
<source>Profiling application: %n events</source> <source>Profiling application: %n events</source>
<translation type="unfinished"> <translation type="unfinished">
@@ -36284,37 +36164,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Waiting for data</source> <source>Waiting for data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsModel</name>
<message>
<source>Painting</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Compiling</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Creating</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Binding</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Handling Signal</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Could not re-read events from temporary trace file: %1</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Main program</source> <source>Main program</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36323,34 +36172,10 @@ ID oznake moraju započeti malim slovom.</translation>
<source>+%1 in recursive calls</source> <source>+%1 in recursive calls</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Source code not available</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Calls</source>
<translation>Pozivi</translation>
</message>
<message>
<source>Details</source>
<translation>Detalji</translation>
</message>
<message>
<source>Location</source>
<translation>Mjesto</translation>
</message>
<message> <message>
<source>Longest Time</source> <source>Longest Time</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Mean Time</source>
<translation type="unfinished">Prosječno vrijeme</translation>
</message>
<message> <message>
<source>Self Time</source> <source>Self Time</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36367,21 +36192,10 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Time in Percent</source> <source>Time in Percent</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Total Time</source>
<translation type="unfinished">Cjelokupno vrijeme</translation>
</message>
<message>
<source>Type</source>
<translation>Vrsta</translation>
</message>
<message> <message>
<source>Median Time</source> <source>Median Time</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsRelativesModel</name>
<message> <message>
<source>Main Program</source> <source>Main Program</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36390,14 +36204,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>called recursively</source> <source>called recursively</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Source code not available</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Callee</source> <source>Callee</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36406,18 +36212,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Caller</source> <source>Caller</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Type</source>
<translation>Vrsta</translation>
</message>
<message>
<source>Total Time</source>
<translation type="unfinished">Cjelokupno vrijeme</translation>
</message>
<message>
<source>Calls</source>
<translation type="unfinished">Pozivi</translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36426,9 +36220,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Caller Description</source> <source>Caller Description</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsView</name>
<message> <message>
<source>Statistics</source> <source>Statistics</source>
<translation>Statistika</translation> <translation>Statistika</translation>
@@ -36445,13 +36236,6 @@ ID oznake moraju započeti malim slovom.</translation>
<source>Extended Event Statistics</source> <source>Extended Event Statistics</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Show Full Range</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message> <message>
<source>Discard data</source> <source>Discard data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36501,14 +36285,6 @@ Do you want to retry and wait %2 s?</source>
<source>Elapsed: %1</source> <source>Elapsed: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Save QML Trace</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>QML traces (*%1 *%2)</source> <source>QML traces (*%1 *%2)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36517,10 +36293,6 @@ Do you want to retry and wait %2 s?</source>
<source>Saving Trace Data</source> <source>Saving Trace Data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Load QML Trace</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Loading Trace Data</source> <source>Loading Trace Data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36539,9 +36311,6 @@ Please use the stop button instead.</source>
Do you want to save the data first?</source> Do you want to save the data first?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceFile</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36575,9 +36344,6 @@ Do you want to save the data first?</source>
Saving failed.</source> Saving failed.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Timeline</source> <source>Timeline</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -36594,229 +36360,15 @@ Saving failed.</source>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation type="unfinished">Resetiraj zumiranje</translation> <translation type="unfinished">Resetiraj zumiranje</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message>
<source>QML Profiler</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::SceneGraphTimelineModel</name>
<message> <message>
<source>Stage</source> <source>Stage</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Duration</source>
<translation type="unfinished">Trajanje</translation>
</message>
<message> <message>
<source>Glyphs</source> <source>Glyphs</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModelTest</name>
<message>
<source>Timestamp</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Message</source>
<translation>Poruka</translation>
</message>
<message>
<source>Location</source>
<translation>Mjesto</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModelTest</name>
<message>
<source>Mouse Events</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Keyboard Events</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Timestamp</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Key Press</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Key</source>
<translation>Ključ</translation>
</message>
<message>
<source>Modifiers</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Key Release</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Keyboard Event</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Mouse Press</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Button</source>
<translation>Gumb</translation>
</message>
<message>
<source>Result</source>
<translation>Rezultat</translation>
</message>
<message>
<source>Mouse Release</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Mouse Move</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>X</source>
<translation>X</translation>
</message>
<message>
<source>Y</source>
<translation>Y</translation>
</message>
<message>
<source>Double Click</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Mouse Wheel</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Angle X</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Angle Y</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Mouse Event</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unknown</source>
<translation>Nepoznato</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModelTest</name>
<message>
<source>Memory Allocation</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Memory Usage</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Memory Allocated</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Total</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<source>%n byte(s)</source>
<translation type="unfinished">
<numerusform></numerusform>
<numerusform></numerusform>
<numerusform></numerusform>
</translation>
</message>
<message>
<source>Allocated</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Allocations</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation>Vrsta</translation>
</message>
<message>
<source>Heap Allocation</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Location</source>
<translation>Mjesto</translation>
</message>
<message>
<source>Deallocated</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Deallocations</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Large Item Allocation</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Memory Freed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Heap Usage</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModelTest</name>
<message>
<source>Image Cached</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cache Size</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Image Loaded</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Duration</source>
<translation type="unfinished">Trajanje</translation>
</message>
<message>
<source>File</source>
<translation>Datoteka</translation>
</message>
<message>
<source>Width</source>
<translation>Širina</translation>
</message>
<message>
<source>Height</source>
<translation>Visina</translation>
</message>
</context>
<context> <context>
<name>QmlProjectManager::QmlProjectFileFormat</name> <name>QmlProjectManager::QmlProjectFileFormat</name>
<message> <message>

View File

@@ -5976,7 +5976,7 @@ Add, modify, and remove document filters, which determine the documentation set
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>QML </translation> <translation>QML </translation>
@@ -29976,7 +29976,7 @@ the QML editor know about a likely URI.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerClientManager</name> <name>QmlProfiler</name>
<message> <message>
<source>Qt Creator</source> <source>Qt Creator</source>
<translation>Qt Creator</translation> <translation>Qt Creator</translation>
@@ -29999,9 +29999,6 @@ Do you want to retry?</source>
<source>Failed to connect!</source> <source>Failed to connect!</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerModelManager</name>
<message> <message>
<source>Could not open %1 for writing.</source> <source>Could not open %1 for writing.</source>
<translation> %1 </translation> <translation> %1 </translation>
@@ -30034,9 +30031,6 @@ Do you want to retry?</source>
<source>anonymous function</source> <source>anonymous function</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>QML QML 使使</translation> <translation>QML QML 使使</translation>
@@ -30075,10 +30069,6 @@ Do you want to retry and wait %2 s?</source>
<source>Failed to connect.</source> <source>Failed to connect.</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
<message> <message>
<source>A QML Profiler analysis is still in progress.</source> <source>A QML Profiler analysis is still in progress.</source>
<translation>QML </translation> <translation>QML </translation>
@@ -30115,14 +30105,6 @@ Do you want to retry and wait %2 s?</source>
<source>Elapsed: %1</source> <source>Elapsed: %1</source>
<translation>: %1</translation> <translation>: %1</translation>
</message> </message>
<message>
<source>Saving Trace Data</source>
<translation></translation>
</message>
<message>
<source>Loading Trace Data</source>
<translation></translation>
</message>
<message> <message>
<source>You are about to discard the profiling data, including unsaved notes. Do you want to continue?</source> <source>You are about to discard the profiling data, including unsaved notes. Do you want to continue?</source>
<translation></translation> <translation></translation>
@@ -30139,9 +30121,6 @@ Do you want to save the data first?</source>
<translation> <translation>
</translation> </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message> <message>
<source>Profiling application: %1 events</source> <source>Profiling application: %1 events</source>
<translation>: %1 </translation> <translation>: %1 </translation>
@@ -30192,9 +30171,6 @@ Do you want to save the data first?</source>
<source>Waiting for data</source> <source>Waiting for data</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>MainView</name>
<message> <message>
<source>Memory Usage</source> <source>Memory Usage</source>
<translation>使</translation> <translation>使</translation>
@@ -30331,9 +30307,6 @@ Do you want to save the data first?</source>
<source>Texture Delete</source> <source>Texture Delete</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerFileReader</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation>: %1</translation> <translation>: %1</translation>
@@ -30354,9 +30327,6 @@ Do you want to save the data first?</source>
<source>Corrupt data before position %1.</source> <source>Corrupt data before position %1.</source>
<translation> %1 </translation> <translation> %1 </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Timeline</source> <source>Timeline</source>
<translation></translation> <translation></translation>
@@ -30374,17 +30344,6 @@ Do you want to save the data first?</source>
<translation></translation> <translation></translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message>
<source>Timeline</source>
<translation></translation>
</message>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
</context>
<context> <context>
<name>QmlProjectManager::QmlProjectFileFormat</name> <name>QmlProjectManager::QmlProjectFileFormat</name>
<message> <message>
@@ -35434,19 +35393,7 @@ kill しますか?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::QmlProfilerDataModel</name> <name>QmlProfiler</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;&gt;</translation>
</message>
<message>
<source>GUI Thread</source>
<translation>GUI </translation>
</message>
<message>
<source>anonymous function</source>
<translation></translation>
</message>
<message> <message>
<source> µs</source> <source> µs</source>
<translation> µs</translation> <translation> µs</translation>
@@ -37547,7 +37494,7 @@ Android 5 ではローカルの Qt ライブラリをデプロイできません
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerConfigWidget</name> <name>QmlProfiler</name>
<message> <message>
<source>Flush data while profiling:</source> <source>Flush data while profiling:</source>
<translation>:</translation> <translation>:</translation>
@@ -37578,10 +37525,6 @@ the program.</source>
QML </translation> QML </translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
<message> <message>
<source>Analyzer</source> <source>Analyzer</source>
<translation></translation> <translation></translation>
@@ -44539,19 +44482,7 @@ Android パッケージソースディレクトリのファイルはビルドデ
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAnimationsModel</name> <name>QmlProfiler</name>
<message>
<source>Animations</source>
<translation></translation>
</message>
<message>
<source>GUI Thread</source>
<translation>GUI </translation>
</message>
<message>
<source>Render Thread</source>
<translation></translation>
</message>
<message> <message>
<source>Duration</source> <source>Duration</source>
<translation></translation> <translation></translation>
@@ -44564,24 +44495,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Context</source> <source>Context</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerOptionsPage</name>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
<message>
<source>Analyzer</source>
<translation></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRangeModel</name>
<message>
<source>Duration</source>
<translation></translation>
</message>
<message> <message>
<source>Details</source> <source>Details</source>
<translation></translation> <translation></translation>
@@ -44590,20 +44503,10 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Location</source> <source>Location</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfilerRunConfiguration</name>
<message> <message>
<source>QML Profiler Settings</source> <source>QML Profiler Settings</source>
<translation>QML </translation> <translation>QML </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerRunControl</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
<message> <message>
<source>Could not connect to the in-process QML debugger: <source>Could not connect to the in-process QML debugger:
%1</source> %1</source>
@@ -44611,16 +44514,10 @@ Android パッケージソースディレクトリのファイルはビルドデ
<translation> QML <translation> QML
%1</translation> %1</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControlFactory</name>
<message> <message>
<source>No executable file to launch.</source> <source>No executable file to launch.</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name>
<message> <message>
<source>&lt;program&gt;</source> <source>&lt;program&gt;</source>
<translation>&lt;&gt;</translation> <translation>&lt;&gt;</translation>
@@ -44633,10 +44530,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Binding loop detected.</source> <source>Binding loop detected.</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;&gt;</translation>
</message>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation></translation> <translation></translation>
@@ -44653,21 +44546,10 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Create</source> <source>Create</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Binding</source>
<translation></translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsView</name>
<message> <message>
<source>Statistics</source> <source>Statistics</source>
<translation></translation> <translation></translation>
@@ -44688,24 +44570,10 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Show Full Range</source> <source>Show Full Range</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsRelativesView</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation></translation>
</message>
<message> <message>
<source>Part of binding loop.</source> <source>Part of binding loop.</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>DebugMessagesModel</name>
<message> <message>
<source>Debug Message</source> <source>Debug Message</source>
<translation></translation> <translation></translation>
@@ -44726,9 +44594,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Info Message</source> <source>Info Message</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModel</name>
<message> <message>
<source>Unknown Message %1</source> <source>Unknown Message %1</source>
<translation> %1</translation> <translation> %1</translation>
@@ -44741,28 +44606,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Message</source> <source>Message</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Location</source>
<translation></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModelTest</name>
<message>
<source>Timestamp</source>
<translation></translation>
</message>
<message>
<source>Message</source>
<translation></translation>
</message>
<message>
<source>Location</source>
<translation></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModelTest</name>
<message> <message>
<source>Mouse Events</source> <source>Mouse Events</source>
<translation></translation> <translation></translation>
@@ -44771,10 +44614,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Keyboard Events</source> <source>Keyboard Events</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Timestamp</source>
<translation></translation>
</message>
<message> <message>
<source>Key Press</source> <source>Key Press</source>
<translation></translation> <translation></translation>
@@ -44843,17 +44682,10 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Mouse Event</source> <source>Mouse Event</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModelTest</name>
<message> <message>
<source>Memory Allocation</source> <source>Memory Allocation</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Memory Usage</source>
<translation>使</translation>
</message>
<message> <message>
<source>Memory Allocated</source> <source>Memory Allocated</source>
<translation></translation> <translation></translation>
@@ -44882,10 +44714,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Heap Allocation</source> <source>Heap Allocation</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Location</source>
<translation></translation>
</message>
<message> <message>
<source>Deallocated</source> <source>Deallocated</source>
<translation></translation> <translation></translation>
@@ -44906,9 +44734,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Heap Usage</source> <source>Heap Usage</source>
<translation>使</translation> <translation>使</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModelTest</name>
<message> <message>
<source>Image Cached</source> <source>Image Cached</source>
<translation></translation> <translation></translation>
@@ -44917,10 +44742,6 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Image Loaded</source> <source>Image Loaded</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Duration</source>
<translation></translation>
</message>
<message> <message>
<source>Cache Size</source> <source>Cache Size</source>
<translation></translation> <translation></translation>
@@ -44937,17 +44758,10 @@ Android パッケージソースディレクトリのファイルはビルドデ
<source>Height</source> <source>Height</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::SceneGraphTimelineModel</name>
<message> <message>
<source>Stage</source> <source>Stage</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Duration</source>
<translation></translation>
</message>
<message> <message>
<source>Glyphs</source> <source>Glyphs</source>
<translation></translation> <translation></translation>
@@ -46444,42 +46258,11 @@ Output:
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::FlameGraphModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Could not re-read events from temporary trace file: %1</source> <source>Could not re-read events from temporary trace file: %1</source>
<translation>: %1</translation> <translation>: %1</translation>
</message> </message>
<message>
<source>Compile</source>
<translation></translation>
</message>
<message>
<source>Create</source>
<translation></translation>
</message>
<message>
<source>Binding</source>
<translation></translation>
</message>
<message>
<source>Signal</source>
<translation></translation>
</message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Source code not available</source>
<translation></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphView</name>
<message>
<source>Show Full Range</source>
<translation></translation>
</message>
<message> <message>
<source>Flame Graph</source> <source>Flame Graph</source>
<translation></translation> <translation></translation>
@@ -46488,195 +46271,14 @@ Output:
<source>Reset Flame Graph</source> <source>Reset Flame Graph</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModel</name>
<message>
<source>Mouse Events</source>
<translation></translation>
</message>
<message>
<source>Keyboard Events</source>
<translation></translation>
</message>
<message>
<source>Timestamp</source>
<translation></translation>
</message>
<message>
<source>Key Press</source>
<translation></translation>
</message>
<message>
<source>Key Release</source>
<translation></translation>
</message>
<message>
<source>Key</source>
<translation></translation>
</message>
<message>
<source>Modifiers</source>
<translation></translation>
</message>
<message>
<source>Double Click</source>
<translation></translation>
</message>
<message>
<source>Mouse Press</source>
<translation></translation>
</message>
<message>
<source>Mouse Release</source>
<translation></translation>
</message>
<message>
<source>Button</source>
<translation></translation>
</message>
<message>
<source>Result</source>
<translation></translation>
</message>
<message>
<source>Mouse Move</source>
<translation></translation>
</message>
<message>
<source>X</source>
<translation>X</translation>
</message>
<message>
<source>Y</source>
<translation>Y</translation>
</message>
<message>
<source>Mouse Wheel</source>
<translation></translation>
</message>
<message>
<source>Angle X</source>
<translation>X軸角度</translation>
</message>
<message>
<source>Angle Y</source>
<translation>Y軸角度</translation>
</message>
<message>
<source>Keyboard Event</source>
<translation></translation>
</message>
<message>
<source>Mouse Event</source>
<translation></translation>
</message>
<message> <message>
<source>Unknown</source> <source>Unknown</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModel</name>
<message>
<source>Memory Allocation</source>
<translation></translation>
</message>
<message>
<source>Memory Usage</source>
<translation>使</translation>
</message>
<message>
<source>Memory Allocated</source>
<translation></translation>
</message>
<message>
<source>Memory Freed</source>
<translation></translation>
</message>
<message>
<source>Total</source>
<translation></translation>
</message>
<message>
<source>%1 bytes</source>
<translation>%1 </translation>
</message>
<message>
<source>Allocated</source>
<translation></translation>
</message>
<message>
<source>Allocations</source>
<translation></translation>
</message>
<message>
<source>Deallocated</source>
<translation></translation>
</message>
<message>
<source>Deallocations</source>
<translation></translation>
</message>
<message>
<source>Heap Allocation</source>
<translation></translation>
</message>
<message>
<source>Large Item Allocation</source>
<translation></translation>
</message>
<message>
<source>Heap Usage</source>
<translation>使</translation>
</message>
<message>
<source>Type</source>
<translation></translation>
</message>
<message>
<source>Location</source>
<translation></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModel</name>
<message>
<source>Cache Size</source>
<translation></translation>
</message>
<message>
<source>Image Cached</source>
<translation></translation>
</message>
<message>
<source>Image Loaded</source>
<translation></translation>
</message>
<message>
<source>Result</source>
<translation></translation>
</message>
<message> <message>
<source>Load Error</source> <source>Load Error</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Duration</source>
<translation></translation>
</message>
<message>
<source>File</source>
<translation></translation>
</message>
<message>
<source>Width</source>
<translation></translation>
</message>
<message>
<source>Height</source>
<translation></translation>
</message>
</context> </context>
<context> <context>
<name>AddImport</name> <name>AddImport</name>
@@ -47907,7 +47509,7 @@ Output:
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfilerFlameGraphView</name> <name>QmlProfiler</name>
<message> <message>
<source>Total Time</source> <source>Total Time</source>
<translation></translation> <translation></translation>
@@ -47916,10 +47518,6 @@ Output:
<source>Calls</source> <source>Calls</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Details</source>
<translation></translation>
</message>
<message> <message>
<source>Mean Time</source> <source>Mean Time</source>
<translation></translation> <translation></translation>
@@ -47928,14 +47526,6 @@ Output:
<source>In Percent</source> <source>In Percent</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Location</source>
<translation></translation>
</message>
<message>
<source>Allocations</source>
<translation></translation>
</message>
<message> <message>
<source>Various Events</source> <source>Various Events</source>
<translation></translation> <translation></translation>
@@ -55013,101 +54603,7 @@ Stepping into the module or setting breakpoints by file and line is expected to
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerActions</name> <name>QmlProfiler</name>
<message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>QML QML 使使</translation>
</message>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
<message>
<source>Load QML Trace</source>
<translation>QML </translation>
</message>
<message>
<source>Save QML Trace</source>
<translation>QML </translation>
</message>
<message>
<source>QML Profiler Options</source>
<translation>QML </translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsModel</name>
<message>
<source>Painting</source>
<translation></translation>
</message>
<message>
<source>Compiling</source>
<translation></translation>
</message>
<message>
<source>Creating</source>
<translation></translation>
</message>
<message>
<source>Binding</source>
<translation></translation>
</message>
<message>
<source>Handling Signal</source>
<translation></translation>
</message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Could not re-read events from temporary trace file: %1</source>
<translation type="unfinished">: %1</translation>
</message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation></translation>
</message>
<message>
<source>Calls</source>
<translation></translation>
</message>
<message>
<source>Details</source>
<translation></translation>
</message>
<message>
<source>Location</source>
<translation></translation>
</message>
<message>
<source>Mean Time</source>
<translation></translation>
</message>
<message>
<source>Total Time</source>
<translation></translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsRelativesModel</name>
<message>
<source>Main Program</source>
<translation></translation>
</message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation></translation>
</message>
<message> <message>
<source>Callee</source> <source>Callee</source>
<translation></translation> <translation></translation>
@@ -55116,37 +54612,6 @@ Stepping into the module or setting breakpoints by file and line is expected to
<source>Caller</source> <source>Caller</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Total Time</source>
<translation></translation>
</message>
<message>
<source>Calls</source>
<translation></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceFile</name>
<message>
<source>Error while parsing trace data file: %1</source>
<translation>: %1</translation>
</message>
<message>
<source>Invalid magic: %1</source>
<translation>: %1</translation>
</message>
<message>
<source>Unknown data stream version: %1</source>
<translation>: %1</translation>
</message>
<message>
<source>Invalid type index %1</source>
<translation>: %1</translation>
</message>
<message>
<source>Corrupt data before position %1.</source>
<translation> %1 </translation>
</message>
</context> </context>
<context> <context>
<name>QmlProjectManager::QmlMainFileAspect</name> <name>QmlProjectManager::QmlMainFileAspect</name>

View File

@@ -16659,7 +16659,7 @@ if (a &amp;&amp;
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>Profiler QML</translation> <translation>Profiler QML</translation>
@@ -17711,11 +17711,7 @@ With cache simulation, further event counters are enabled:
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerTool</name> <name>QmlProfiler</name>
<message>
<source>QML Profiler</source>
<translation>Profiler QML</translation>
</message>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>Profiler QML może być używany do znajdowania wąskich gardeł w wydajności aplikacji QML.</translation> <translation>Profiler QML może być używany do znajdowania wąskich gardeł w wydajności aplikacji QML.</translation>
@@ -18452,7 +18448,7 @@ Dodatkowo, przetestowane zostanie połączenie z urządzeniem.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Memory Usage</source> <source>Memory Usage</source>
<translation>Zajętość pamięci</translation> <translation>Zajętość pamięci</translation>
@@ -22683,7 +22679,7 @@ poinstruuje Qt Creatora o URI.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerClientManager</name> <name>QmlProfiler</name>
<message> <message>
<source>Debug connection opened</source> <source>Debug connection opened</source>
<translation>Otwarto połączenie debugowe</translation> <translation>Otwarto połączenie debugowe</translation>
@@ -22696,9 +22692,6 @@ poinstruuje Qt Creatora o URI.</translation>
<source>Debug connection failed</source> <source>Debug connection failed</source>
<translation>Błąd połączenia debugowego</translation> <translation>Błąd połączenia debugowego</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message numerus="yes"> <message numerus="yes">
<source>Profiling application: %n events</source> <source>Profiling application: %n events</source>
<translation> <translation>
@@ -22743,9 +22736,6 @@ poinstruuje Qt Creatora o URI.</translation>
<source>Waiting for data</source> <source>Waiting for data</source>
<translation>Oczekiwanie na dane</translation> <translation>Oczekiwanie na dane</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Timeline</source> <source>Timeline</source>
<translation> czasu</translation> <translation> czasu</translation>
@@ -22763,13 +22753,6 @@ poinstruuje Qt Creatora o URI.</translation>
<translation>Zresetuj powiększenie</translation> <translation>Zresetuj powiększenie</translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message>
<source>QML Profiler</source>
<translation>Profiler QML</translation>
</message>
</context>
<context> <context>
<name>Qnx</name> <name>Qnx</name>
<message> <message>
@@ -28474,7 +28457,7 @@ Proszę zamknąć wszystkie instancje tej aplikacji przed uruchomieniem budowani
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::QmlProfilerModelManager</name> <name>QmlProfiler</name>
<message> <message>
<source>Cannot open temporary trace file to store events.</source> <source>Cannot open temporary trace file to store events.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -28487,10 +28470,6 @@ Proszę zamknąć wszystkie instancje tej aplikacji przed uruchomieniem budowani
<source>anonymous function</source> <source>anonymous function</source>
<translation>anonimowa funkcja</translation> <translation>anonimowa funkcja</translation>
</message> </message>
<message>
<source>GUI Thread</source>
<translation>Wątek GUI</translation>
</message>
<message> <message>
<source>Could not open %1 for writing.</source> <source>Could not open %1 for writing.</source>
<translation>Nie można otworzyć &quot;%1&quot; do zapisu.</translation> <translation>Nie można otworzyć &quot;%1&quot; do zapisu.</translation>
@@ -28515,9 +28494,6 @@ Proszę zamknąć wszystkie instancje tej aplikacji przed uruchomieniem budowani
<source>Could not re-read events from temporary trace file. The trace data is lost.</source> <source>Could not re-read events from temporary trace file. The trace data is lost.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerFileReader</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation>Błąd parsowania pliku z danymi stosu: %1</translation> <translation>Błąd parsowania pliku z danymi stosu: %1</translation>
@@ -35228,19 +35204,7 @@ Ustawianie pułapek w liniach plików może się nie udać.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAnimationsModel</name> <name>QmlProfiler</name>
<message>
<source>Animations</source>
<translation>Animacje</translation>
</message>
<message>
<source>GUI Thread</source>
<translation>Wątek GUI</translation>
</message>
<message>
<source>Render Thread</source>
<translation>Wątek renderingu</translation>
</message>
<message> <message>
<source>Duration</source> <source>Duration</source>
<translation>Czas trwania</translation> <translation>Czas trwania</translation>
@@ -35253,13 +35217,6 @@ Ustawianie pułapek w liniach plików może się nie udać.</translation>
<source>Context</source> <source>Context</source>
<translation>Kontekst</translation> <translation>Kontekst</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRangeModel</name>
<message>
<source>Duration</source>
<translation>Czas trwania</translation>
</message>
<message> <message>
<source>Details</source> <source>Details</source>
<translation>Szczegóły</translation> <translation>Szczegóły</translation>
@@ -36087,7 +36044,7 @@ Ustawianie pułapek w liniach plików może się nie udać.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerConfigWidget</name> <name>QmlProfiler</name>
<message> <message>
<source>Flush data while profiling:</source> <source>Flush data while profiling:</source>
<translation>Przepychaj dane podczas profilowania:</translation> <translation>Przepychaj dane podczas profilowania:</translation>
@@ -37174,18 +37131,11 @@ Te pliki są zabezpieczone.</numerusform>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerOptionsPage</name> <name>QmlProfiler</name>
<message>
<source>QML Profiler</source>
<translation>Profiler QML</translation>
</message>
<message> <message>
<source>Analyzer</source> <source>Analyzer</source>
<translation>Analizator</translation> <translation>Analizator</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerRunConfiguration</name>
<message> <message>
<source>QML Profiler Settings</source> <source>QML Profiler Settings</source>
<translation>Ustawienia profilera QML</translation> <translation>Ustawienia profilera QML</translation>
@@ -38630,7 +38580,7 @@ Czy nadpisać go?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name> <name>QmlProfiler</name>
<message> <message>
<source>&lt;program&gt;</source> <source>&lt;program&gt;</source>
<translation>&lt;program&gt;</translation> <translation>&lt;program&gt;</translation>
@@ -38639,45 +38589,14 @@ Czy nadpisać go?</translation>
<source>Main Program</source> <source>Main Program</source>
<translation>Główny program</translation> <translation>Główny program</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;kod bajtowy&gt;</translation>
</message>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation>Kod źródłowy nie jest dostępny</translation> <translation>Kod źródłowy nie jest dostępny</translation>
</message> </message>
<message>
<source>Painting</source>
<translation>Rysowanie</translation>
</message>
<message>
<source>Compiling</source>
<translation>Kompilacja</translation>
</message>
<message>
<source>Creating</source>
<translation>Tworzenie</translation>
</message>
<message>
<source>Handling Signal</source>
<translation>Obsługa sygnałów</translation>
</message>
<message>
<source>Binding</source>
<translation>Wiązanie</translation>
</message>
<message> <message>
<source>+%1 in recursive calls</source> <source>+%1 in recursive calls</source>
<translation>+%1 w wywołaniach rekurencyjnych</translation> <translation>+%1 w wywołaniach rekurencyjnych</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsView</name>
<message> <message>
<source>Statistics</source> <source>Statistics</source>
<translation>Statystyki</translation> <translation>Statystyki</translation>
@@ -38698,24 +38617,10 @@ Czy nadpisać go?</translation>
<source>Show Full Range</source> <source>Show Full Range</source>
<translation>Pokaż pełen zakres</translation> <translation>Pokaż pełen zakres</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsRelativesView</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;kod bajtowy&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Kod źródłowy nie jest dostępny</translation>
</message>
<message> <message>
<source>called recursively</source> <source>called recursively</source>
<translation>wywołany rekurencyjnie</translation> <translation>wywołany rekurencyjnie</translation>
</message> </message>
</context>
<context>
<name>DebugMessagesModel</name>
<message> <message>
<source>Debug Message</source> <source>Debug Message</source>
<translation>Komunikat debugowy</translation> <translation>Komunikat debugowy</translation>
@@ -39746,7 +39651,7 @@ w ścieżce.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::DebugMessagesModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Unknown Message %1</source> <source>Unknown Message %1</source>
<translation>Nieznany komunikat %1</translation> <translation>Nieznany komunikat %1</translation>
@@ -39759,13 +39664,6 @@ w ścieżce.</translation>
<source>Message</source> <source>Message</source>
<translation>Komunikat</translation> <translation>Komunikat</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Położenie</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphModel</name>
<message> <message>
<source>Could not re-read events from temporary trace file.</source> <source>Could not re-read events from temporary trace file.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -39778,36 +39676,14 @@ w ścieżce.</translation>
<source>Create</source> <source>Create</source>
<translation>Tworzenie</translation> <translation>Tworzenie</translation>
</message> </message>
<message>
<source>Binding</source>
<translation>Wiązanie</translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation>Sygnalizowanie</translation> <translation>Sygnalizowanie</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Kod źródłowy nie jest dostępny</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphView</name>
<message> <message>
<source>Flame Graph</source> <source>Flame Graph</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Show Full Range</source>
<translation>Pokaż pełen zakres</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModel</name>
<message> <message>
<source>Mouse Events</source> <source>Mouse Events</source>
<translation>Zdarzenia myszy</translation> <translation>Zdarzenia myszy</translation>
@@ -39816,10 +39692,6 @@ w ścieżce.</translation>
<source>Keyboard Events</source> <source>Keyboard Events</source>
<translation>Zdarzenia klawiatury</translation> <translation>Zdarzenia klawiatury</translation>
</message> </message>
<message>
<source>Timestamp</source>
<translation>Znacznik czasu</translation>
</message>
<message> <message>
<source>Key Press</source> <source>Key Press</source>
<translation>Naciśnięcie klawisza</translation> <translation>Naciśnięcie klawisza</translation>
@@ -39888,17 +39760,10 @@ w ścieżce.</translation>
<source>Mouse Event</source> <source>Mouse Event</source>
<translation>Zdarzenie myszy</translation> <translation>Zdarzenie myszy</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModel</name>
<message> <message>
<source>Memory Allocation</source> <source>Memory Allocation</source>
<translation>Alokacja pamięci</translation> <translation>Alokacja pamięci</translation>
</message> </message>
<message>
<source>Memory Usage</source>
<translation>Zajętość pamięci</translation>
</message>
<message> <message>
<source>Memory Allocated</source> <source>Memory Allocated</source>
<translation>Przydzielona pamięć</translation> <translation>Przydzielona pamięć</translation>
@@ -39955,13 +39820,6 @@ w ścieżce.</translation>
<source>Type</source> <source>Type</source>
<translation>Typ</translation> <translation>Typ</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Położenie</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModel</name>
<message> <message>
<source>Cache Size</source> <source>Cache Size</source>
<translation>Rozmiar cache&apos;a</translation> <translation>Rozmiar cache&apos;a</translation>
@@ -39974,18 +39832,10 @@ w ścieżce.</translation>
<source>Image Loaded</source> <source>Image Loaded</source>
<translation>Załadowano plik graficzny</translation> <translation>Załadowano plik graficzny</translation>
</message> </message>
<message>
<source>Result</source>
<translation>Wynik</translation>
</message>
<message> <message>
<source>Load Error</source> <source>Load Error</source>
<translation>Błąd ładowania</translation> <translation>Błąd ładowania</translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Czas trwania</translation>
</message>
<message> <message>
<source>File</source> <source>File</source>
<translation>Plik</translation> <translation>Plik</translation>
@@ -39998,214 +39848,15 @@ w ścieżce.</translation>
<source>Height</source> <source>Height</source>
<translation>Wysokość</translation> <translation>Wysokość</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::SceneGraphTimelineModel</name>
<message> <message>
<source>Stage</source> <source>Stage</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Czas trwania</translation>
</message>
<message> <message>
<source>Glyphs</source> <source>Glyphs</source>
<translation>Glify</translation> <translation>Glify</translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModelTest</name>
<message>
<source>Timestamp</source>
<translation>Znacznik czasu</translation>
</message>
<message>
<source>Message</source>
<translation>Komunikat</translation>
</message>
<message>
<source>Location</source>
<translation>Położenie</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModelTest</name>
<message>
<source>Mouse Events</source>
<translation>Zdarzenia myszy</translation>
</message>
<message>
<source>Keyboard Events</source>
<translation>Zdarzenia klawiatury</translation>
</message>
<message>
<source>Timestamp</source>
<translation>Znacznik czasu</translation>
</message>
<message>
<source>Key Press</source>
<translation>Naciśnięcie klawisza</translation>
</message>
<message>
<source>Key</source>
<translation>Klucz</translation>
</message>
<message>
<source>Modifiers</source>
<translation>Modyfikatory</translation>
</message>
<message>
<source>Key Release</source>
<translation>Zwolnienie klawisza</translation>
</message>
<message>
<source>Keyboard Event</source>
<translation>Zdarzenie klawiatury</translation>
</message>
<message>
<source>Mouse Press</source>
<translation>Naciśnięcie przycisku myszy</translation>
</message>
<message>
<source>Button</source>
<translation>Przycisk</translation>
</message>
<message>
<source>Result</source>
<translation>Wynik</translation>
</message>
<message>
<source>Mouse Release</source>
<translation>Zwolnienie przycisku myszy</translation>
</message>
<message>
<source>Mouse Move</source>
<translation>Ruch myszy</translation>
</message>
<message>
<source>X</source>
<translation>X</translation>
</message>
<message>
<source>Y</source>
<translation>Y</translation>
</message>
<message>
<source>Double Click</source>
<translation>Podwójne kliknięcie</translation>
</message>
<message>
<source>Mouse Wheel</source>
<translation>Obrót kółka myszy</translation>
</message>
<message>
<source>Angle X</source>
<translation>Kąt X</translation>
</message>
<message>
<source>Angle Y</source>
<translation>Kąt Y</translation>
</message>
<message>
<source>Mouse Event</source>
<translation>Zdarzenie myszy</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModelTest</name>
<message>
<source>Memory Allocation</source>
<translation>Alokacja pamięci</translation>
</message>
<message>
<source>Memory Usage</source>
<translation>Zajętość pamięci</translation>
</message>
<message>
<source>Memory Allocated</source>
<translation>Przydzielona pamięć</translation>
</message>
<message>
<source>Total</source>
<translation>Łącznie</translation>
</message>
<message>
<source>%1 bytes</source>
<translation>%1 bajtów</translation>
</message>
<message>
<source>Allocated</source>
<translation>Przydzielone</translation>
</message>
<message>
<source>Allocations</source>
<translation>Liczba przydziałów pamięci</translation>
</message>
<message>
<source>Type</source>
<translation>Typ</translation>
</message>
<message>
<source>Heap Allocation</source>
<translation>Alokacja na stercie</translation>
</message>
<message>
<source>Location</source>
<translation>Położenie</translation>
</message>
<message>
<source>Deallocated</source>
<translation>Zwolnione</translation>
</message>
<message>
<source>Deallocations</source>
<translation>Liczba zwolnień pamięci</translation>
</message>
<message>
<source>Large Item Allocation</source>
<translation>Alokacja wielkiego elementu</translation>
</message>
<message>
<source>Memory Freed</source>
<translation>Zwolniona pamięć</translation>
</message>
<message>
<source>Heap Usage</source>
<translation>Zajętość sterty</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModelTest</name>
<message>
<source>Image Cached</source>
<translation>Plik graficzny włożono do cache</translation>
</message>
<message>
<source>Image Loaded</source>
<translation>Załadowano plik graficzny</translation>
</message>
<message>
<source>Duration</source>
<translation>Czas trwania</translation>
</message>
<message>
<source>Cache Size</source>
<translation>Rozmiar cache&apos;a</translation>
</message>
<message>
<source>File</source>
<translation>Plik</translation>
</message>
<message>
<source>Width</source>
<translation>Szerokość</translation>
</message>
<message>
<source>Height</source>
<translation>Wysokość</translation>
</message>
</context>
<context> <context>
<name>Qnx</name> <name>Qnx</name>
<message> <message>
@@ -40386,7 +40037,7 @@ Uwaga: podczas używania zwykłego formatu tekstowego może brakować niektóryc
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfilerFlameGraphView</name> <name>QmlProfiler</name>
<message> <message>
<source>Total Time</source> <source>Total Time</source>
<translation>Czas całkowity</translation> <translation>Czas całkowity</translation>
@@ -40395,10 +40046,6 @@ Uwaga: podczas używania zwykłego formatu tekstowego może brakować niektóryc
<source>Calls</source> <source>Calls</source>
<translation>Wywołania</translation> <translation>Wywołania</translation>
</message> </message>
<message>
<source>Details</source>
<translation>Szczegóły</translation>
</message>
<message> <message>
<source>Mean Time</source> <source>Mean Time</source>
<translation>Czas średni</translation> <translation>Czas średni</translation>
@@ -40407,14 +40054,6 @@ Uwaga: podczas używania zwykłego formatu tekstowego może brakować niektóryc
<source>In Percent</source> <source>In Percent</source>
<translation>W procentach</translation> <translation>W procentach</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Położenie</translation>
</message>
<message>
<source>Allocations</source>
<translation>Liczba przydziałów pamięci</translation>
</message>
<message> <message>
<source>Memory</source> <source>Memory</source>
<translation>Pamięć</translation> <translation>Pamięć</translation>
@@ -43111,14 +42750,7 @@ Termin wygaśnięcia: %3</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::QmlProfilerStatisticsModel</name> <name>QmlProfiler</name>
<message>
<source>Could not re-read events from temporary trace file.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerFileWriter</name>
<message> <message>
<source>Could not re-read events from temporary trace file. Saving failed.</source> <source>Could not re-read events from temporary trace file. Saving failed.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>

View File

@@ -14404,7 +14404,7 @@ Do you want to display them anyway?</source>
</message> </message>
</context> </context>
<context> <context>
<name>DebugMessagesModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Debug Message</source> <source>Debug Message</source>
<translation>Отладочное сообщение</translation> <translation>Отладочное сообщение</translation>
@@ -26620,7 +26620,7 @@ Error: %5</translation>
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Memory Usage</source> <source>Memory Usage</source>
<translation>Использование памяти</translation> <translation>Использование памяти</translation>
@@ -42395,7 +42395,7 @@ the QML editor know about a likely URI.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::DebugMessagesModel</name> <name>QmlProfiler</name>
<message> <message>
<source>Unknown Message %1</source> <source>Unknown Message %1</source>
<translation>Неизвестное сообщение %1</translation> <translation>Неизвестное сообщение %1</translation>
@@ -42412,24 +42412,6 @@ the QML editor know about a likely URI.</source>
<source>Location</source> <source>Location</source>
<translation>Размещение</translation> <translation>Размещение</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::DebugMessagesModelTest</name>
<message>
<source>Timestamp</source>
<translation>Время</translation>
</message>
<message>
<source>Message</source>
<translation>Сообщение</translation>
</message>
<message>
<source>Location</source>
<translation>Размещение</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphModel</name>
<message> <message>
<source>Could not re-read events from temporary trace file: %1</source> <source>Could not re-read events from temporary trace file: %1</source>
<translation>Не удалось перечитать события из временного файла трассировки: %1</translation> <translation>Не удалось перечитать события из временного файла трассировки: %1</translation>
@@ -42442,25 +42424,14 @@ the QML editor know about a likely URI.</source>
<source>Create</source> <source>Create</source>
<translation>Создание</translation> <translation>Создание</translation>
</message> </message>
<message>
<source>Binding</source>
<translation>Привязка</translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation>Сигналы</translation> <translation>Сигналы</translation>
</message> </message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation>Исходники недоступны</translation> <translation>Исходники недоступны</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::FlameGraphView</name>
<message> <message>
<source>Flame Graph</source> <source>Flame Graph</source>
<translatorcomment>непереводимый термин</translatorcomment> <translatorcomment>непереводимый термин</translatorcomment>
@@ -42474,9 +42445,6 @@ the QML editor know about a likely URI.</source>
<source>Reset Flame Graph</source> <source>Reset Flame Graph</source>
<translation>Сбросить Flame Graph</translation> <translation>Сбросить Flame Graph</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModel</name>
<message> <message>
<source>Mouse Events</source> <source>Mouse Events</source>
<translation>События мыши</translation> <translation>События мыши</translation>
@@ -42485,10 +42453,6 @@ the QML editor know about a likely URI.</source>
<source>Keyboard Events</source> <source>Keyboard Events</source>
<translation>События клавиатуры</translation> <translation>События клавиатуры</translation>
</message> </message>
<message>
<source>Timestamp</source>
<translation>Время</translation>
</message>
<message> <message>
<source>Key Press</source> <source>Key Press</source>
<translation>Нажатие клавиши</translation> <translation>Нажатие клавиши</translation>
@@ -42561,104 +42525,10 @@ the QML editor know about a likely URI.</source>
<source>Unknown</source> <source>Unknown</source>
<translation>Неизвестное</translation> <translation>Неизвестное</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModelTest</name>
<message>
<source>Mouse Events</source>
<translation>События мыши</translation>
</message>
<message>
<source>Keyboard Events</source>
<translation>События клавиатуры</translation>
</message>
<message>
<source>Timestamp</source>
<translation>Время</translation>
</message>
<message>
<source>Key Press</source>
<translation>Нажатие клавиши</translation>
</message>
<message>
<source>Key</source>
<translation>Клавиша</translation>
</message>
<message>
<source>Modifiers</source>
<translation>Модификатор</translation>
</message>
<message>
<source>Key Release</source>
<translation>Отжатие клавиши</translation>
</message>
<message>
<source>Keyboard Event</source>
<translation>Событие клавиатуры</translation>
</message>
<message>
<source>Mouse Press</source>
<translation>Нажатие мыши</translation>
</message>
<message>
<source>Button</source>
<translation>Кнопка</translation>
</message>
<message>
<source>Result</source>
<translation>Результат</translation>
</message>
<message>
<source>Mouse Release</source>
<translation>Отпускание мыши</translation>
</message>
<message>
<source>Mouse Move</source>
<translation>Движение мыши</translation>
</message>
<message>
<source>X</source>
<translation>X</translation>
</message>
<message>
<source>Y</source>
<translation>Y</translation>
</message>
<message>
<source>Double Click</source>
<translation>Двойной щелчок</translation>
</message>
<message>
<source>Mouse Wheel</source>
<translation>Колесо мыши</translation>
</message>
<message>
<source>Angle X</source>
<translation>Угол X</translation>
</message>
<message>
<source>Angle Y</source>
<translation>Угол Y</translation>
</message>
<message>
<source>Mouse Event</source>
<translation>Событие мыши</translation>
</message>
<message>
<source>Unknown</source>
<translation>Неизвестное</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModel</name>
<message> <message>
<source>Memory Allocation</source> <source>Memory Allocation</source>
<translation>Выделение памяти</translation> <translation>Выделение памяти</translation>
</message> </message>
<message>
<source>Memory Usage</source>
<translation>Использование памяти</translation>
</message>
<message> <message>
<source>Memory Allocated</source> <source>Memory Allocated</source>
<translation>Памяти выделено</translation> <translation>Памяти выделено</translation>
@@ -42711,80 +42581,6 @@ the QML editor know about a likely URI.</source>
<source>Type</source> <source>Type</source>
<translation>Тип</translation> <translation>Тип</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Размещение</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModelTest</name>
<message>
<source>Memory Allocation</source>
<translation>Выделение памяти</translation>
</message>
<message>
<source>Memory Usage</source>
<translation>Использование памяти</translation>
</message>
<message>
<source>Memory Allocated</source>
<translation>Памяти выделено</translation>
</message>
<message>
<source>Total</source>
<translation>Всего</translation>
</message>
<message numerus="yes">
<source>%n byte(s)</source>
<translation>
<numerusform>%n байт</numerusform>
<numerusform>%n байта</numerusform>
<numerusform>%n байт</numerusform>
</translation>
</message>
<message>
<source>Allocated</source>
<translation>Выделено</translation>
</message>
<message>
<source>Allocations</source>
<translation>Выделений</translation>
</message>
<message>
<source>Type</source>
<translation>Тип</translation>
</message>
<message>
<source>Heap Allocation</source>
<translation>Выделение в куче</translation>
</message>
<message>
<source>Location</source>
<translation>Размещение</translation>
</message>
<message>
<source>Deallocated</source>
<translation>Освобождено</translation>
</message>
<message>
<source>Deallocations</source>
<translation>Освобождений</translation>
</message>
<message>
<source>Large Item Allocation</source>
<translation>Выделение под большие объекты</translation>
</message>
<message>
<source>Memory Freed</source>
<translation>Памяти освобождено</translation>
</message>
<message>
<source>Heap Usage</source>
<translation>Использование кучи</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModel</name>
<message> <message>
<source>Cache Size</source> <source>Cache Size</source>
<translation>Размер кэша</translation> <translation>Размер кэша</translation>
@@ -42797,10 +42593,6 @@ the QML editor know about a likely URI.</source>
<source>Image Loaded</source> <source>Image Loaded</source>
<translation>Изображение загружено</translation> <translation>Изображение загружено</translation>
</message> </message>
<message>
<source>Result</source>
<translation>Результат</translation>
</message>
<message> <message>
<source>Load Error</source> <source>Load Error</source>
<translation>Ошибка загрузки</translation> <translation>Ошибка загрузки</translation>
@@ -42821,40 +42613,6 @@ the QML editor know about a likely URI.</source>
<source>Height</source> <source>Height</source>
<translation>Высота</translation> <translation>Высота</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::PixmapCacheModelTest</name>
<message>
<source>Image Cached</source>
<translation>Изображение закэшировано</translation>
</message>
<message>
<source>Image Loaded</source>
<translation>Изображение загружено</translation>
</message>
<message>
<source>Duration</source>
<translation>Продолжительность</translation>
</message>
<message>
<source>Cache Size</source>
<translation>Размер кэша</translation>
</message>
<message>
<source>File</source>
<translation>Файл</translation>
</message>
<message>
<source>Width</source>
<translation>Ширина</translation>
</message>
<message>
<source>Height</source>
<translation>Высота</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerActions</name>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>QML Profiler предназначен для поиска узких мест в приложениях использующих QML.</translation> <translation>QML Profiler предназначен для поиска узких мест в приложениях использующих QML.</translation>
@@ -42879,25 +42637,6 @@ the QML editor know about a likely URI.</source>
<source>QML Profiler Options</source> <source>QML Profiler Options</source>
<translation>Настройки профайлера QML</translation> <translation>Настройки профайлера QML</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerAnimationsModel</name>
<message>
<source>Animations</source>
<translation>Анимации</translation>
</message>
<message>
<source>GUI Thread</source>
<translation>Поток GUI</translation>
</message>
<message>
<source>Render Thread</source>
<translation>Поток рендера</translation>
</message>
<message>
<source>Duration</source>
<translation>Продолжительность</translation>
</message>
<message> <message>
<source>Framerate</source> <source>Framerate</source>
<translation>Частота кадров</translation> <translation>Частота кадров</translation>
@@ -42906,13 +42645,6 @@ the QML editor know about a likely URI.</source>
<source>Context</source> <source>Context</source>
<translation>Контекст</translation> <translation>Контекст</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name>
<message>
<source>QML Profiler</source>
<translation>Профайлер QML</translation>
</message>
<message> <message>
<source>&amp;Host:</source> <source>&amp;Host:</source>
<translation>&amp;Сервер:</translation> <translation>&amp;Сервер:</translation>
@@ -42941,9 +42673,6 @@ the QML editor know about a likely URI.</source>
<source>Kit:</source> <source>Kit:</source>
<translation>Комплект:</translation> <translation>Комплект:</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerConfigWidget</name>
<message> <message>
<source>Flush data while profiling:</source> <source>Flush data while profiling:</source>
<translation>Передавать данные при профилировании:</translation> <translation>Передавать данные при профилировании:</translation>
@@ -42974,32 +42703,14 @@ itself takes time.</source>
задержку при загрузке данных и объём используемой приложением памяти, задержку при загрузке данных и объём используемой приложением памяти,
но портит профилирование, так как сброс данных занимает время.</translation> но портит профилирование, так как сброс данных занимает время.</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>Профайлер QML</translation>
</message>
<message> <message>
<source>Analyzer</source> <source>Analyzer</source>
<translation>Анализатор</translation> <translation>Анализатор</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRangeModel</name>
<message>
<source>Duration</source>
<translation>Продолжительность</translation>
</message>
<message> <message>
<source>Details</source> <source>Details</source>
<translation>Подробнее</translation> <translation>Подробнее</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Размещение</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message numerus="yes"> <message numerus="yes">
<source>Profiling application: %n events</source> <source>Profiling application: %n events</source>
<translation> <translation>
@@ -43036,9 +42747,6 @@ itself takes time.</source>
<source>Waiting for data</source> <source>Waiting for data</source>
<translation>Ожидание данных</translation> <translation>Ожидание данных</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsView</name>
<message> <message>
<source>Statistics</source> <source>Statistics</source>
<translation>Статистика</translation> <translation>Статистика</translation>
@@ -43055,25 +42763,6 @@ itself takes time.</source>
<source>Extended Event Statistics</source> <source>Extended Event Statistics</source>
<translation>Расширенная статистика событий</translation> <translation>Расширенная статистика событий</translation>
</message> </message>
<message>
<source>Show Full Range</source>
<translation>Показать весь диапазон</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message>
<source>QML Profiler</source>
<translation>Профайлер QML</translation>
</message>
<message>
<source>Load QML Trace</source>
<translation>Загрузить трассировку QML</translation>
</message>
<message>
<source>Save QML Trace</source>
<translation>Сохранить трассировку QML</translation>
</message>
<message> <message>
<source>A QML Profiler analysis is still in progress.</source> <source>A QML Profiler analysis is still in progress.</source>
<translation>Выполняется профилирование QML.</translation> <translation>Выполняется профилирование QML.</translation>
@@ -43152,9 +42841,6 @@ Do you want to save the data first?</source>
<source>Hide or show event categories.</source> <source>Hide or show event categories.</source>
<translation>Показ или скрытие категорий событий.</translation> <translation>Показ или скрытие категорий событий.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceFile</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation>Ошибка разбора файла данных трассировки: %1</translation> <translation>Ошибка разбора файла данных трассировки: %1</translation>
@@ -43189,9 +42875,6 @@ Saving failed.</source>
<translation>Не удалось перечитать события из временного файла трассировки: %1 <translation>Не удалось перечитать события из временного файла трассировки: %1
Сохранение не удалось.</translation> Сохранение не удалось.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Timeline</source> <source>Timeline</source>
<translation>Временная шкала</translation> <translation>Временная шкала</translation>
@@ -43208,31 +42891,14 @@ Saving failed.</source>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation>Сбросить масштаб</translation> <translation>Сбросить масштаб</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message>
<source>QML Profiler</source>
<translation>Профайлер QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::SceneGraphTimelineModel</name>
<message> <message>
<source>Stage</source> <source>Stage</source>
<translation>Этап</translation> <translation>Этап</translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Продолжительность</translation>
</message>
<message> <message>
<source>Glyphs</source> <source>Glyphs</source>
<translation>Глифы</translation> <translation>Глифы</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerModelManager</name>
<message> <message>
<source>Failed to replay QML events from stash file.</source> <source>Failed to replay QML events from stash file.</source>
<translation>Не удалось проиграть события QML из файла stash.</translation> <translation>Не удалось проиграть события QML из файла stash.</translation>
@@ -43249,37 +42915,6 @@ Saving failed.</source>
<source>Read past end in temporary trace file.</source> <source>Read past end in temporary trace file.</source>
<translation>Чтение за концом временного файла трассировки.</translation> <translation>Чтение за концом временного файла трассировки.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsModel</name>
<message>
<source>Painting</source>
<translation>Отрисовка</translation>
</message>
<message>
<source>Compiling</source>
<translation>Компиляция</translation>
</message>
<message>
<source>Creating</source>
<translation>Создание</translation>
</message>
<message>
<source>Binding</source>
<translation>Привязка</translation>
</message>
<message>
<source>Handling Signal</source>
<translation>Обработка сигнала</translation>
</message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Could not re-read events from temporary trace file: %1</source>
<translation>Не удалось перечитать события из временного файла трассировки: %1</translation>
</message>
<message> <message>
<source>Main program</source> <source>Main program</source>
<translation>Основная программа</translation> <translation>Основная программа</translation>
@@ -43288,26 +42923,10 @@ Saving failed.</source>
<source>+%1 in recursive calls</source> <source>+%1 in recursive calls</source>
<translation>+%1 в рекурсивных вызовах</translation> <translation>+%1 в рекурсивных вызовах</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;байтовый код&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Исходники недоступны</translation>
</message>
<message> <message>
<source>Calls</source> <source>Calls</source>
<translation>Вызовы</translation> <translation>Вызовы</translation>
</message> </message>
<message>
<source>Details</source>
<translation>Подробности</translation>
</message>
<message>
<source>Location</source>
<translation>Размещение</translation>
</message>
<message> <message>
<source>Longest Time</source> <source>Longest Time</source>
<translation>Наибольшее время</translation> <translation>Наибольшее время</translation>
@@ -43336,17 +42955,10 @@ Saving failed.</source>
<source>Total Time</source> <source>Total Time</source>
<translation>Общее время</translation> <translation>Общее время</translation>
</message> </message>
<message>
<source>Type</source>
<translation>Тип</translation>
</message>
<message> <message>
<source>Median Time</source> <source>Median Time</source>
<translation>Медианное время</translation> <translation>Медианное время</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerStatisticsRelativesModel</name>
<message> <message>
<source>Main Program</source> <source>Main Program</source>
<translation>Основная программа</translation> <translation>Основная программа</translation>
@@ -43355,14 +42967,6 @@ Saving failed.</source>
<source>called recursively</source> <source>called recursively</source>
<translation>вызывается рекурсивно</translation> <translation>вызывается рекурсивно</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;байтовый код&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Исходники недоступны</translation>
</message>
<message> <message>
<source>Callee</source> <source>Callee</source>
<translation>Вызываемое</translation> <translation>Вызываемое</translation>
@@ -43371,18 +42975,6 @@ Saving failed.</source>
<source>Caller</source> <source>Caller</source>
<translation>Вызывающее</translation> <translation>Вызывающее</translation>
</message> </message>
<message>
<source>Type</source>
<translation>Тип</translation>
</message>
<message>
<source>Total Time</source>
<translation>Общее время</translation>
</message>
<message>
<source>Calls</source>
<translation>Вызовы</translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation>Описание вызываемого</translation> <translation>Описание вызываемого</translation>
@@ -43391,9 +42983,6 @@ Saving failed.</source>
<source>Caller Description</source> <source>Caller Description</source>
<translation>Описание вызывающего</translation> <translation>Описание вызывающего</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerEventStorage</name>
<message> <message>
<source>Cannot open temporary trace file to store events.</source> <source>Cannot open temporary trace file to store events.</source>
<translation>Не удалось открыть временный файл для хранения событий.</translation> <translation>Не удалось открыть временный файл для хранения событий.</translation>
@@ -43418,41 +43007,10 @@ Saving failed.</source>
<source>Could not re-open temporary trace file.</source> <source>Could not re-open temporary trace file.</source>
<translation>Не удалось переоткрыть временный файл трассировки.</translation> <translation>Не удалось переоткрыть временный файл трассировки.</translation>
</message> </message>
<message>
<source>Read past end in temporary trace file.</source>
<translation>Чтение за концом временного файла трассировки.</translation>
</message>
</context>
<context>
<name>QmlProfilerFlameGraphView</name>
<message>
<source>Total Time</source>
<translation>Общее время</translation>
</message>
<message>
<source>Calls</source>
<translation>Вызовы</translation>
</message>
<message>
<source>Details</source>
<translation>Подробнее</translation>
</message>
<message>
<source>Mean Time</source>
<translation>Среднее время</translation>
</message>
<message> <message>
<source>In Percent</source> <source>In Percent</source>
<translation>В процентах</translation> <translation>В процентах</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Размещение</translation>
</message>
<message>
<source>Allocations</source>
<translation>Выделений</translation>
</message>
<message> <message>
<source>Memory</source> <source>Memory</source>
<translation>Память</translation> <translation>Память</translation>
@@ -43465,9 +43023,6 @@ Saving failed.</source>
<source>others</source> <source>others</source>
<translation>другие</translation> <translation>другие</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerRunConfiguration</name>
<message> <message>
<source>QML Profiler Settings</source> <source>QML Profiler Settings</source>
<translation>Настройки профайлера QML</translation> <translation>Настройки профайлера QML</translation>

View File

@@ -20091,7 +20091,7 @@ GDB omogoča navedbo zaporedja ukazov, ki so ločeni z »\n«.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>Dialog</source> <source>Dialog</source>
<translation>Pogovorno okno</translation> <translation>Pogovorno okno</translation>
@@ -26069,7 +26069,7 @@ S strani z možnostmi za različice Qt zgradite razhroščevalne pomočnike.</tr
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerEngine</name> <name>QmlProfiler</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>QML Profiler</translation> <translation>QML Profiler</translation>
@@ -26104,9 +26104,6 @@ Raje uporabite gumb za ustavitev.</translation>
<translation>Z razhroščevalnikom QML znotraj procesa se ni bilo moč povezati: <translation>Z razhroščevalnikom QML znotraj procesa se ni bilo moč povezati:
%1</translation> %1</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventStatistics</name>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation>Izvorna koda ni na voljo</translation> <translation>Izvorna koda ni na voljo</translation>
@@ -26115,9 +26112,6 @@ Raje uporabite gumb za ustavitev.</translation>
<source>&lt;bytecode&gt;</source> <source>&lt;bytecode&gt;</source>
<translation>&lt;bajtna koda&gt;</translation> <translation>&lt;bajtna koda&gt;</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsView</name>
<message> <message>
<source>Location</source> <source>Location</source>
<translation>Mesto</translation> <translation>Mesto</translation>
@@ -26174,20 +26168,6 @@ Raje uporabite gumb za ustavitev.</translation>
<source>Signal</source> <source>Signal</source>
<translation>Signaliziranje</translation> <translation>Signaliziranje</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControlFactory</name>
<message>
<source>QML Profiler</source>
<translation>QML Profiler</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message>
<source>QML Profiler</source>
<translation>QML Profiler</translation>
</message>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>QML Profiler lahko uporabljate za odkrivanje zmogljivostnih ozkih grl v programih, ki uporabljajo QML.</translation> <translation>QML Profiler lahko uporabljate za odkrivanje zmogljivostnih ozkih grl v programih, ki uporabljajo QML.</translation>
@@ -26236,9 +26216,6 @@ Raje uporabite gumb za ustavitev.</translation>
<source>Detach</source> <source>Detach</source>
<translation>Odklopi</translation> <translation>Odklopi</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::RemoteLinuxQmlProfilerRunner</name>
<message> <message>
<source>Not enough free ports on device for analyzing. <source>Not enough free ports on device for analyzing.
</source> </source>
@@ -26257,9 +26234,6 @@ Raje uporabite gumb za ustavitev.</translation>
<translation>Poganjanje oddaljenega procesa se je zaključilo. Izhodna koda je bila %1. <translation>Poganjanje oddaljenega procesa se je zaključilo. Izhodna koda je bila %1.
</translation> </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::TraceWindow</name>
<message> <message>
<source>Jump to previous event</source> <source>Jump to previous event</source>
<translation>Skoči na predhodni dogodek</translation> <translation>Skoči na predhodni dogodek</translation>

View File

@@ -12638,7 +12638,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Memory Usage</source> <source>Memory Usage</source>
<translation>Вживання пам&apos;яті</translation> <translation>Вживання пам&apos;яті</translation>
@@ -18476,7 +18476,7 @@ For qmlproject projects, use the importPaths property to add import paths.</sour
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>Профайлер QML</translation> <translation>Профайлер QML</translation>
@@ -18505,30 +18505,6 @@ For qmlproject projects, use the importPaths property to add import paths.</sour
<source>Kit:</source> <source>Kit:</source>
<translation>Комплект:</translation> <translation>Комплект:</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEngine</name>
<message>
<source>Qt Creator</source>
<translation type="vanished">Qt Creator</translation>
</message>
<message>
<source>Could not connect to the in-process QML debugger:
%1</source>
<translation type="vanished">Не вдалось підключитись до вбудованого в процес зневаджувача QML:
%1</translation>
</message>
<message>
<source>QML Profiler</source>
<translation type="vanished">Профайлер QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message>
<source>QML Profiler</source>
<translation>Профайлер QML</translation>
</message>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -28036,31 +28012,7 @@ Do you want to kill it?</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name> <name>QmlProfiler</name>
<message>
<source>Location</source>
<translation type="vanished">Розташування</translation>
</message>
<message>
<source>Type</source>
<translation type="vanished">Тип</translation>
</message>
<message>
<source>Details</source>
<translation type="vanished">Деталі</translation>
</message>
<message>
<source> µs</source>
<translation type="vanished"> мкс</translation>
</message>
<message>
<source> ms</source>
<translation type="vanished"> мс</translation>
</message>
<message>
<source> s</source>
<translation type="vanished"> с</translation>
</message>
<message> <message>
<source>&lt;program&gt;</source> <source>&lt;program&gt;</source>
<translation type="vanished">&lt;програма&gt;</translation> <translation type="vanished">&lt;програма&gt;</translation>
@@ -28069,25 +28021,9 @@ Do you want to kill it?</source>
<source>Main Program</source> <source>Main Program</source>
<translation type="vanished">Основна програма</translation> <translation type="vanished">Основна програма</translation>
</message> </message>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="vanished">&lt;байт-код&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation type="vanished">Код не доступний</translation>
</message>
<message>
<source>Compile</source>
<translation type="vanished">Компіляція</translation>
</message>
<message> <message>
<source>Create</source> <source>Create</source>
<translation type="vanished">Створити</translation> <translation>Створити</translation>
</message>
<message>
<source>JavaScript</source>
<translation type="vanished">JavaScript</translation>
</message> </message>
</context> </context>
<context> <context>
@@ -33240,7 +33176,7 @@ Qt Creator know about a likely URI.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerClientManager</name> <name>QmlProfiler</name>
<message> <message>
<source>Qt Creator</source> <source>Qt Creator</source>
<translation>Qt Creator</translation> <translation>Qt Creator</translation>
@@ -33262,20 +33198,10 @@ Do you want to retry?</source>
<source>Failed to connect!</source> <source>Failed to connect!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerDataModel</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="vanished">&lt;байт-код&gt;</translation>
</message>
<message> <message>
<source>Error while parsing %1.</source> <source>Error while parsing %1.</source>
<translation type="vanished">Помилка під час розбору %1.</translation> <translation type="vanished">Помилка під час розбору %1.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message> <message>
<source>Profiling application</source> <source>Profiling application</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -33304,9 +33230,6 @@ Do you want to retry?</source>
<source>Waiting for data</source> <source>Waiting for data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Analyze Current Range</source> <source>Analyze Current Range</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -33319,9 +33242,6 @@ Do you want to retry?</source>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message> <message>
<source>Events</source> <source>Events</source>
<translation type="vanished">Події</translation> <translation type="vanished">Події</translation>
@@ -33334,14 +33254,6 @@ Do you want to retry?</source>
<source>Timeline</source> <source>Timeline</source>
<translation>Часова лінія</translation> <translation>Часова лінія</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>Профайлер QML</translation>
</message>
<message>
<source>JavaScript</source>
<translation type="vanished">JavaScript</translation>
</message>
</context> </context>
<context> <context>
<name>QmlProjectManager::Internal::QmlProjectRunConfigurationFactory</name> <name>QmlProjectManager::Internal::QmlProjectRunConfigurationFactory</name>
@@ -40391,72 +40303,7 @@ Please close all running instances of your application before starting a build.<
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::LocalQmlProfilerRunner</name> <name>QmlProfiler</name>
<message>
<source>No executable file to launch.</source>
<translation type="vanished">Немає виконуваного модуля для запуску.</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControl</name>
<message>
<source>Qt Creator</source>
<translation type="vanished">Qt Creator</translation>
</message>
<message>
<source>Could not connect to the in-process QML debugger:
%1</source>
<extracomment>%1 is detailed error message</extracomment>
<translation type="vanished">Не вдалось підключитись до вбудованого в процес зневаджувача QML:
%1</translation>
</message>
<message>
<source>QML Profiler</source>
<translation type="vanished">Профайлер QML</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation type="vanished">&lt;програма&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation type="vanished">Основна програма</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventParentsModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation type="vanished">&lt;програма&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation type="vanished">Основна програма</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventChildrenModelProxy</name>
<message>
<source>&lt;program&gt;</source>
<translation type="vanished">&lt;програма&gt;</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventRelativesView</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="vanished">&lt;байт-код&gt;</translation>
</message>
<message>
<source>Source code not available</source>
<translation type="vanished">Код не доступний</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerModelManager</name>
<message> <message>
<source>Could not open %1 for writing.</source> <source>Could not open %1 for writing.</source>
<translation>Не вдалось відкрити %1 для запису.</translation> <translation>Не вдалось відкрити %1 для запису.</translation>
@@ -40477,115 +40324,15 @@ Please close all running instances of your application before starting a build.<
<source>Trying to set unknown state in events list.</source> <source>Trying to set unknown state in events list.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::PaintEventsModelProxy</name>
<message>
<source>Animations</source>
<translation type="vanished">Анімації</translation>
</message>
<message>
<source>Duration</source>
<translation type="vanished">Тривалість</translation>
</message>
<message>
<source> µs</source>
<translation type="vanished"> мкс</translation>
</message>
<message>
<source> ms</source>
<translation type="vanished"> мс</translation>
</message>
<message>
<source> s</source>
<translation type="vanished"> с</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerPlugin</name>
<message>
<source>QML Profiler</source>
<translation type="vanished">Профайлер QML</translation>
</message>
<message>
<source>QML Profiler (External)</source>
<translation type="vanished">Профайлер QML (зовнішній)</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerProcessedModel</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="vanished">&lt;байт-код&gt;</translation>
</message>
<message> <message>
<source>Source code not available.</source> <source>Source code not available.</source>
<translation type="vanished">Код не доступний.</translation> <translation type="vanished">Код не доступний.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::QmlProfilerSimpleModel</name>
<message>
<source>Animations</source>
<translation type="vanished">Анімації</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::BasicTimelineModel</name>
<message>
<source> µs</source>
<translation type="vanished"> мкс</translation>
</message>
<message>
<source> ms</source>
<translation type="vanished"> мс</translation>
</message>
<message>
<source> s</source>
<translation type="vanished"> с</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerFileReader</name>
<message> <message>
<source>Error while parsing trace data file: %1</source> <source>Error while parsing trace data file: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::Internal::QV8ProfilerDataModel</name>
<message>
<source>&lt;program&gt;</source>
<translation type="vanished">&lt;програма&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation type="vanished">Основна програма</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QV8ProfilerEventsMainView</name>
<message>
<source> µs</source>
<translation type="vanished"> мкс</translation>
</message>
<message>
<source> ms</source>
<translation type="vanished"> мс</translation>
</message>
<message>
<source> s</source>
<translation type="vanished"> с</translation>
</message>
<message>
<source>Compile</source>
<translation type="vanished">Компіляція</translation>
</message>
<message>
<source>Create</source>
<translation type="vanished">Створити</translation>
</message>
</context>
<context> <context>
<name>QmlProjectManager::QmlProjectFileFormat</name> <name>QmlProjectManager::QmlProjectFileFormat</name>
<message> <message>
@@ -42517,30 +42264,11 @@ These files are preserved.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::QmlProfilerBaseModel</name> <name>QmlProfiler</name>
<message>
<source> µs</source>
<translation type="vanished"> мкс</translation>
</message>
<message>
<source> ms</source>
<translation type="vanished"> мс</translation>
</message>
<message>
<source> s</source>
<translation type="vanished"> с</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerDataModel</name>
<message> <message>
<source>&lt;bytecode&gt;</source> <source>&lt;bytecode&gt;</source>
<translation>&lt;байт-код&gt;</translation> <translation>&lt;байт-код&gt;</translation>
</message> </message>
<message>
<source>GUI Thread</source>
<translation>Нитка GUI</translation>
</message>
<message> <message>
<source> µs</source> <source> µs</source>
<translation> мкс</translation> <translation> мкс</translation>
@@ -42553,26 +42281,11 @@ These files are preserved.</source>
<source> s</source> <source> s</source>
<translation> с</translation> <translation> с</translation>
</message> </message>
<message>
<source>Source code not available.</source>
<translation type="vanished">Код не доступний.</translation>
</message>
<message> <message>
<source>anonymous function</source> <source>anonymous function</source>
<translation>анонімна функція</translation> <translation>анонімна функція</translation>
</message> </message>
</context> </context>
<context>
<name>QmlProfiler::QV8ProfilerDataModel</name>
<message>
<source>&lt;program&gt;</source>
<translation type="vanished">&lt;програма&gt;</translation>
</message>
<message>
<source>Main Program</source>
<translation type="vanished">Основна програма</translation>
</message>
</context>
<context> <context>
<name>Qnx</name> <name>Qnx</name>
<message> <message>
@@ -47907,19 +47620,7 @@ The files in the Android package source directory are copied to the build direct
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::RangeTimelineModel</name> <name>QmlProfiler</name>
<message>
<source>Duration</source>
<translation type="vanished">Тривалість</translation>
</message>
<message>
<source>Details</source>
<translation type="vanished">Деталі</translation>
</message>
<message>
<source>Location</source>
<translation type="vanished">Розташування</translation>
</message>
</context> </context>
<context> <context>
<name>ResourceEditor</name> <name>ResourceEditor</name>
@@ -49326,19 +49027,7 @@ Setting breakpoints by file name and line number may fail.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAnimationsModel</name> <name>QmlProfiler</name>
<message>
<source>Animations</source>
<translation>Анімації</translation>
</message>
<message>
<source>GUI Thread</source>
<translation>Нитка GUI</translation>
</message>
<message>
<source>Render Thread</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Duration</source> <source>Duration</source>
<translation>Тривалість</translation> <translation>Тривалість</translation>
@@ -49351,13 +49040,6 @@ Setting breakpoints by file name and line number may fail.</source>
<source>Context</source> <source>Context</source>
<translation>Контекст</translation> <translation>Контекст</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRangeModel</name>
<message>
<source>Duration</source>
<translation>Тривалість</translation>
</message>
<message> <message>
<source>Details</source> <source>Details</source>
<translation>Деталі</translation> <translation>Деталі</translation>
@@ -50299,18 +49981,7 @@ Setting breakpoints by file name and line number may fail.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::LocalQmlProfilerRunner</name> <name>QmlProfiler</name>
<message>
<source>No executable file to launch.</source>
<translation type="vanished">Немає виконуваного модуля для запуску.</translation>
</message>
</context>
<context>
<name>QmlProfiler::QmlProfilerRunControl</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
<message> <message>
<source>Could not connect to the in-process QML debugger: <source>Could not connect to the in-process QML debugger:
%1</source> %1</source>
@@ -50318,10 +49989,6 @@ Setting breakpoints by file name and line number may fail.</source>
<translation>Не вдалось підключитись до вбудованого в процес зневаджувача QML: <translation>Не вдалось підключитись до вбудованого в процес зневаджувача QML:
%1</translation> %1</translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation type="vanished">Профайлер QML</translation>
</message>
</context> </context>
<context> <context>
<name>QObject</name> <name>QObject</name>
@@ -50825,7 +50492,7 @@ Output:
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerConfigWidget</name> <name>QmlProfiler</name>
<message> <message>
<source>Flush data while profiling:</source> <source>Flush data while profiling:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -51866,18 +51533,11 @@ the program.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerOptionsPage</name> <name>QmlProfiler</name>
<message>
<source>QML Profiler</source>
<translation>Профайлер QML</translation>
</message>
<message> <message>
<source>Analyzer</source> <source>Analyzer</source>
<translation>Аналізатор</translation> <translation>Аналізатор</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerRunConfiguration</name>
<message> <message>
<source>QML Profiler Settings</source> <source>QML Profiler Settings</source>
<translation>Налаштування профайлера QML</translation> <translation>Налаштування профайлера QML</translation>
@@ -53421,14 +53081,11 @@ These files are preserved.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerRunControlFactory</name> <name>QmlProfiler</name>
<message> <message>
<source>No executable file to launch.</source> <source>No executable file to launch.</source>
<translation>Немає виконуваного модуля для запуску.</translation> <translation>Немає виконуваного модуля для запуску.</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name>
<message> <message>
<source>Binding loop detected.</source> <source>Binding loop detected.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53450,17 +53107,10 @@ references to elements in other files, loops, and so on.)</source>
<source>Paint</source> <source>Paint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Binding</source>
<translation>Зв&apos;язування</translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsView</name>
<message> <message>
<source>Statistics</source> <source>Statistics</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53481,13 +53131,6 @@ references to elements in other files, loops, and so on.)</source>
<source>Show Full Range</source> <source>Show Full Range</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsRelativesView</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;байт-код&gt;</translation>
</message>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation>Код не доступний</translation> <translation>Код не доступний</translation>
@@ -53496,9 +53139,6 @@ references to elements in other files, loops, and so on.)</source>
<source>Part of binding loop.</source> <source>Part of binding loop.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>DebugMessagesModel</name>
<message> <message>
<source>Debug Message</source> <source>Debug Message</source>
<translation>Зневаджувальне повідомлення</translation> <translation>Зневаджувальне повідомлення</translation>
@@ -53519,9 +53159,6 @@ references to elements in other files, loops, and so on.)</source>
<source>Info Message</source> <source>Info Message</source>
<translation>Інформаційне повідомлення</translation> <translation>Інформаційне повідомлення</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerExtension::Internal::DebugMessagesModel</name>
<message> <message>
<source>Unknown Message %1</source> <source>Unknown Message %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53534,51 +53171,10 @@ references to elements in other files, loops, and so on.)</source>
<source>Message</source> <source>Message</source>
<translation>Повідомлення</translation> <translation>Повідомлення</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Розташування</translation>
</message>
</context>
<context>
<name>QmlProfilerExtension::Internal::FlameGraphModel</name>
<message>
<source>Paint</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Compile</source> <source>Compile</source>
<translation>Компіляція</translation> <translation>Компіляція</translation>
</message> </message>
<message>
<source>Create</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Binding</source>
<translation>Зв&apos;язування</translation>
</message>
<message>
<source>Signal</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
<message>
<source>Source code not available</source>
<translation>Код не доступний</translation>
</message>
</context>
<context>
<name>QmlProfilerExtension::Internal::FlameGraphView</name>
<message>
<source>Show Full Range</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfilerExtension::Internal::InputEventsModel</name>
<message> <message>
<source>Mouse Events</source> <source>Mouse Events</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53587,10 +53183,6 @@ references to elements in other files, loops, and so on.)</source>
<source>Keyboard Events</source> <source>Keyboard Events</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Timestamp</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Key Press</source> <source>Key Press</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53659,17 +53251,10 @@ references to elements in other files, loops, and so on.)</source>
<source>Mouse Event</source> <source>Mouse Event</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfilerExtension::Internal::MemoryUsageModel</name>
<message> <message>
<source>Memory Allocation</source> <source>Memory Allocation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Memory Usage</source>
<translation>Вживання пам&apos;яті</translation>
</message>
<message> <message>
<source>Memory Allocated</source> <source>Memory Allocated</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53702,10 +53287,6 @@ references to elements in other files, loops, and so on.)</source>
<source>Type</source> <source>Type</source>
<translation>Тип</translation> <translation>Тип</translation>
</message> </message>
<message>
<source>Location</source>
<translation>Розташування</translation>
</message>
<message> <message>
<source>Heap Allocation</source> <source>Heap Allocation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53722,9 +53303,6 @@ references to elements in other files, loops, and so on.)</source>
<source>Unknown</source> <source>Unknown</source>
<translation>Невідомо</translation> <translation>Невідомо</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerExtension::Internal::PixmapCacheModel</name>
<message> <message>
<source>Image Cached</source> <source>Image Cached</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53733,18 +53311,10 @@ references to elements in other files, loops, and so on.)</source>
<source>Image Loaded</source> <source>Image Loaded</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Result</source>
<translation>Результат</translation>
</message>
<message> <message>
<source>Load Error</source> <source>Load Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Тривалість</translation>
</message>
<message> <message>
<source>Cache Size</source> <source>Cache Size</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53761,9 +53331,6 @@ references to elements in other files, loops, and so on.)</source>
<source>Height</source> <source>Height</source>
<translation>Висота</translation> <translation>Висота</translation>
</message> </message>
</context>
<context>
<name>QmlProfilerExtension::Internal::QmlProfilerExtensionPlugin</name>
<message> <message>
<source>Action Triggered</source> <source>Action Triggered</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -53772,17 +53339,10 @@ references to elements in other files, loops, and so on.)</source>
<source>This is an action from QML Profiler Extension.</source> <source>This is an action from QML Profiler Extension.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfilerExtension::Internal::SceneGraphTimelineModel</name>
<message> <message>
<source>Stage</source> <source>Stage</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Duration</source>
<translation>Тривалість</translation>
</message>
<message> <message>
<source>Glyphs</source> <source>Glyphs</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>

View File

@@ -36256,7 +36256,7 @@ if (a &amp;&amp;
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>Dialog</source> <source>Dialog</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
@@ -37560,11 +37560,7 @@ These files are preserved.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerEngine</name> <name>QmlProfiler</name>
<message>
<source>QML Profiler</source>
<translation>QML (Profiler)</translation>
</message>
<message> <message>
<source>Application finished before loading profiled data. <source>Application finished before loading profiled data.
Please use the stop button instead.</source> Please use the stop button instead.</source>
@@ -37596,102 +37592,14 @@ These files are preserved.</source>
<translation>(in-process)QML : <translation>(in-process)QML :
%1</translation> %1</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventStatistics</name>
<message>
<source>Source code not available</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="obsolete">&lt;&gt;</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsView</name>
<message>
<source>Location</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Type</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Time in Percent</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Total Time</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Calls</source>
<translation type="obsolete"></translation>
</message>
<message> <message>
<source>Time per Call</source> <source>Time per Call</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
</message> </message>
<message>
<source>Mean Time</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Median Time</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Longest Time</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Shortest Time</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Details</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Paint</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Compile</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Create</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Binding</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Signal</source>
<translation type="obsolete"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerRunControlFactory</name>
<message>
<source>QML Profiler</source>
<translation type="obsolete">QML审查</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message> <message>
<source>QML Profiler Options</source> <source>QML Profiler Options</source>
<translation>QML </translation> <translation>QML </translation>
</message> </message>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>QML分析器可被用于找到使用QML的应用程序的性能瓶颈</translation> <translation>QML分析器可被用于找到使用QML的应用程序的性能瓶颈</translation>
@@ -37726,14 +37634,6 @@ Please use the stop button instead.</source>
<source>Save QML Trace</source> <source>Save QML Trace</source>
<translation> QML </translation> <translation> QML </translation>
</message> </message>
<message>
<source>Copy Row</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Copy Table</source>
<translation type="obsolete"></translation>
</message>
<message> <message>
<source>The QML profiler requires Qt 4.7.4 or newer. <source>The QML profiler requires Qt 4.7.4 or newer.
The Qt version configured in your active build configuration is too old. The Qt version configured in your active build configuration is too old.
@@ -37742,14 +37642,6 @@ Do you want to continue?</source>
Qt Qt
</translation> </translation>
</message> </message>
<message>
<source>Events</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Timeline</source>
<translation type="obsolete"></translation>
</message>
<message> <message>
<source>Callees</source> <source>Callees</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
@@ -37778,10 +37670,6 @@ Do you want to continue?</source>
<source>Elapsed: %1 s</source> <source>Elapsed: %1 s</source>
<translation type="obsolete">: %1 s</translation> <translation type="obsolete">: %1 s</translation>
</message> </message>
<message>
<source>Qt Creator</source>
<translation type="obsolete">Qt Creator</translation>
</message>
<message> <message>
<source>QML traces (%1)</source> <source>QML traces (%1)</source>
<translation type="obsolete">QML (%1)</translation> <translation type="obsolete">QML (%1)</translation>
@@ -37790,9 +37678,6 @@ Do you want to continue?</source>
<source>Detach</source> <source>Detach</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::RemoteLinuxQmlProfilerRunner</name>
<message> <message>
<source>Gathering ports failed: %1</source> <source>Gathering ports failed: %1</source>
<translation>:%1</translation> <translation>:%1</translation>
@@ -37824,17 +37709,6 @@ Do you want to continue?</source>
<translation type="obsolete">.%1. <translation type="obsolete">.%1.
</translation> </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::TraceWindow</name>
<message>
<source>Jump to previous event</source>
<translation type="obsolete"></translation>
</message>
<message>
<source>Jump to next event</source>
<translation type="obsolete"></translation>
</message>
<message> <message>
<source>Zoom in 10%</source> <source>Zoom in 10%</source>
<translation type="obsolete"> 10%</translation> <translation type="obsolete"> 10%</translation>
@@ -40611,7 +40485,7 @@ To compile QML Observer, go to the Qt Versions page, select the current Qt versi
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Painting</source> <source>Painting</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
@@ -40624,10 +40498,6 @@ To compile QML Observer, go to the Qt Versions page, select the current Qt versi
<source>Creating</source> <source>Creating</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
</message> </message>
<message>
<source>Binding</source>
<translation type="obsolete"></translation>
</message>
<message> <message>
<source>Signal Handler</source> <source>Signal Handler</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
@@ -40983,10 +40853,6 @@ To compile QML Observer, go to the Qt Versions page, select the current Qt versi
</context> </context>
<context> <context>
<name>QmlJsDebugClient::QmlProfilerEventList</name> <name>QmlJsDebugClient::QmlProfilerEventList</name>
<message>
<source>&lt;bytecode&gt;</source>
<translation type="obsolete">&lt;&gt;</translation>
</message>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
@@ -48487,20 +48353,13 @@ Qt Creator 知道一个相似的URI。</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerClientManager</name> <name>QmlProfiler</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
<message> <message>
<source>Could not connect to the in-process QML profiler. <source>Could not connect to the in-process QML profiler.
Do you want to retry?</source> Do you want to retry?</source>
<translation>QML分析器 <translation>QML分析器
</translation> </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerDataModel</name>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation></translation> <translation></translation>
@@ -48549,9 +48408,6 @@ Do you want to retry?</source>
<source>Invalid version of QML Trace file.</source> <source>Invalid version of QML Trace file.</source>
<translation>QML追踪文件的版本无效</translation> <translation>QML追踪文件的版本无效</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsWidget</name>
<message> <message>
<source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications.</source> <source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications.</source>
<translation>v8 JavaScript引擎中追踪信息Qt5的应用程序中可用</translation> <translation>v8 JavaScript引擎中追踪信息Qt5的应用程序中可用</translation>
@@ -48576,9 +48432,6 @@ Do you want to retry?</source>
<source>Reset Events Pane</source> <source>Reset Events Pane</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name>
<message> <message>
<source>Location</source> <source>Location</source>
<translation></translation> <translation></translation>
@@ -48677,9 +48530,6 @@ references to elements in other files, loops, etc.)</source>
<source>Signal</source> <source>Signal</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsParentsAndChildrenView</name>
<message> <message>
<source>Part of binding loop.</source> <source>Part of binding loop.</source>
<translation></translation> <translation></translation>
@@ -48692,18 +48542,6 @@ references to elements in other files, loops, etc.)</source>
<source>Caller</source> <source>Caller</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Type</source>
<translation></translation>
</message>
<message>
<source>Total Time</source>
<translation></translation>
</message>
<message>
<source>Calls</source>
<translation></translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation></translation> <translation></translation>
@@ -48712,9 +48550,6 @@ references to elements in other files, loops, etc.)</source>
<source>Caller Description</source> <source>Caller Description</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message> <message>
<source>Loading data</source> <source>Loading data</source>
<translation></translation> <translation></translation>
@@ -48731,9 +48566,6 @@ references to elements in other files, loops, etc.)</source>
<source>Application stopped before loading all data</source> <source>Application stopped before loading all data</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message> <message>
<source>Jump to previous event</source> <source>Jump to previous event</source>
<translation></translation> <translation></translation>
@@ -48754,21 +48586,10 @@ references to elements in other files, loops, etc.)</source>
<source>View event information on mouseover</source> <source>View event information on mouseover</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Limit Events Pane to Current Range</source>
<translation></translation>
</message>
<message>
<source>Reset Events Pane</source>
<translation></translation>
</message>
<message> <message>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message> <message>
<source>Events</source> <source>Events</source>
<translation></translation> <translation></translation>

View File

@@ -22407,7 +22407,7 @@ if (a &amp;&amp;
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerAttachDialog</name> <name>QmlProfiler</name>
<message> <message>
<source>QML Profiler</source> <source>QML Profiler</source>
<translation>QML </translation> <translation>QML </translation>
@@ -23317,11 +23317,7 @@ These files are preserved.</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerEngine</name> <name>QmlProfiler</name>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
<message> <message>
<source>Application finished before loading profiled data. <source>Application finished before loading profiled data.
Please use the stop button instead.</source> Please use the stop button instead.</source>
@@ -23343,13 +23339,6 @@ These files are preserved.</source>
<translation> QML <translation> QML
%1</translation> %1</translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTool</name>
<message>
<source>QML Profiler</source>
<translation>QML </translation>
</message>
<message> <message>
<source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source> <source>The QML Profiler can be used to find performance bottlenecks in applications using QML.</source>
<translation>QML 使 QML </translation> <translation>QML 使 QML </translation>
@@ -23371,29 +23360,25 @@ These files are preserved.</source>
Please use the stop button instead.</source> Please use the stop button instead.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Copy Row</source>
<translation type="obsolete"></translation>
</message>
<message> <message>
<source>Copy Table</source> <source>Copy Table</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>Extended Event Statistics</source> <source>Extended Event Statistics</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>Limit Events Pane to Current Range</source> <source>Limit Events Pane to Current Range</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>Reset Events Pane</source> <source>Reset Events Pane</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>Reset Zoom</source> <source>Reset Zoom</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>The QML profiler requires Qt 4.7.4 or newer. <source>The QML profiler requires Qt 4.7.4 or newer.
@@ -23405,15 +23390,11 @@ Do you want to continue?</source>
</message> </message>
<message> <message>
<source>Events</source> <source>Events</source>
<translation type="obsolete"></translation> <translation></translation>
</message>
<message>
<source>Timeline</source>
<translation type="obsolete"></translation>
</message> </message>
<message> <message>
<source>JavaScript</source> <source>JavaScript</source>
<translation type="obsolete">JavaScript</translation> <translation>JavaScript</translation>
</message> </message>
<message> <message>
<source>%1 s</source> <source>%1 s</source>
@@ -23439,19 +23420,12 @@ Do you want to continue?</source>
<source>Enable profiling</source> <source>Enable profiling</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Qt Creator</source>
<translation type="obsolete">Qt Creator</translation>
</message>
<message> <message>
<source>Could not connect to the in-process QML profiler. <source>Could not connect to the in-process QML profiler.
Do you want to retry?</source> Do you want to retry?</source>
<translation type="obsolete"> QML <translation> QML
</translation> </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::RemoteLinuxQmlProfilerRunner</name>
<message> <message>
<source>Gathering ports failed: %1</source> <source>Gathering ports failed: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -23484,28 +23458,21 @@ Do you want to retry?</source>
<translation type="obsolete"> %1 <translation type="obsolete"> %1
</translation> </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::TraceWindow</name>
<message> <message>
<source>Jump to previous event</source> <source>Jump to previous event</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>Jump to next event</source> <source>Jump to next event</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>Show zoom slider</source> <source>Show zoom slider</source>
<translation type="obsolete"></translation> <translation></translation>
</message> </message>
<message> <message>
<source>Select range</source> <source>Select range</source>
<translation type="obsolete"></translation> <translation></translation>
</message>
<message>
<source>View event information on mouseover</source>
<translation type="obsolete"></translation>
</message> </message>
</context> </context>
<context> <context>
@@ -25307,7 +25274,7 @@ To compile QML Observer, go to the Qt Versions page, select the current Qt versi
</message> </message>
</context> </context>
<context> <context>
<name>MainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Painting</source> <source>Painting</source>
<translation></translation> <translation></translation>
@@ -29357,7 +29324,7 @@ Do you want to kill it?</source>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerStatisticsMainView</name> <name>QmlProfiler</name>
<message> <message>
<source>Location</source> <source>Location</source>
<translation></translation> <translation></translation>
@@ -29451,17 +29418,10 @@ references to elements in other files, loops, etc.)</source>
<source>Create</source> <source>Create</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Binding</source>
<translation></translation>
</message>
<message> <message>
<source>Signal</source> <source>Signal</source>
<translation></translation> <translation></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsParentsAndChildrenView</name>
<message> <message>
<source>Part of binding loop</source> <source>Part of binding loop</source>
<translation type="obsolete"></translation> <translation type="obsolete"></translation>
@@ -29478,18 +29438,6 @@ references to elements in other files, loops, etc.)</source>
<source>Caller</source> <source>Caller</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<source>Type</source>
<translation></translation>
</message>
<message>
<source>Total Time</source>
<translation></translation>
</message>
<message>
<source>Calls</source>
<translation></translation>
</message>
<message> <message>
<source>Callee Description</source> <source>Callee Description</source>
<translation></translation> <translation></translation>
@@ -33449,20 +33397,7 @@ Qt Creator 知道一個相似的URI.</translation>
</message> </message>
</context> </context>
<context> <context>
<name>QmlProfiler::Internal::QmlProfilerClientManager</name> <name>QmlProfiler</name>
<message>
<source>Qt Creator</source>
<translation type="unfinished">Qt Creator</translation>
</message>
<message>
<source>Could not connect to the in-process QML profiler.
Do you want to retry?</source>
<translation type="unfinished"> QML
</translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerDataModel</name>
<message> <message>
<source>Source code not available</source> <source>Source code not available</source>
<translation type="unfinished">使</translation> <translation type="unfinished">使</translation>
@@ -33511,36 +33446,14 @@ Do you want to retry?</source>
<source>Invalid version of QML Trace file.</source> <source>Invalid version of QML Trace file.</source>
<translation type="unfinished"> QML </translation> <translation type="unfinished"> QML </translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerEventsWidget</name>
<message> <message>
<source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications.</source> <source>Trace information from the v8 JavaScript engine. Available only in Qt5 based applications.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Copy Row</source> <source>Copy Row</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message>
<source>Copy Table</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Extended Event Statistics</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Limit Events Pane to Current Range</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Reset Events Pane</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerStateWidget</name>
<message> <message>
<source>Loading data</source> <source>Loading data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@@ -33557,55 +33470,13 @@ Do you want to retry?</source>
<source>Application stopped before loading all data</source> <source>Application stopped before loading all data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerTraceView</name>
<message>
<source>Jump to previous event</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Jump to next event</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Show zoom slider</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Select range</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>View event information on mouseover</source> <source>View event information on mouseover</source>
<translation type="unfinished"></translation> <translation></translation>
</message>
<message>
<source>Limit Events Pane to Current Range</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Reset Events Pane</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Reset Zoom</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerViewManager</name>
<message>
<source>Events</source>
<translation type="unfinished"></translation>
</message> </message>
<message> <message>
<source>Timeline</source> <source>Timeline</source>
<translation type="unfinished"></translation> <translation></translation>
</message>
<message>
<source>JavaScript</source>
<translation type="unfinished">JavaScript</translation>
</message> </message>
</context> </context>
<context> <context>

View File

@@ -3,6 +3,7 @@
#include "debugmessagesmodel.h" #include "debugmessagesmodel.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include "qmlprofilertr.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
namespace QmlProfiler { namespace QmlProfiler {
@@ -26,17 +27,17 @@ QRgb DebugMessagesModel::color(int index) const
} }
static const char *messageTypes[] = { static const char *messageTypes[] = {
QT_TRANSLATE_NOOP("DebugMessagesModel", "Debug Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Debug Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Warning Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Warning Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Critical Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Critical Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Fatal Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Fatal Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Info Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Info Message"),
}; };
QString DebugMessagesModel::messageType(uint i) QString DebugMessagesModel::messageType(uint i)
{ {
return i < sizeof(messageTypes) / sizeof(char *) ? tr(messageTypes[i]) : return i < sizeof(messageTypes) / sizeof(char *) ? Tr::tr(messageTypes[i]) :
tr("Unknown Message %1").arg(i); Tr::tr("Unknown Message %1").arg(i);
} }
QVariantList DebugMessagesModel::labels() const QVariantList DebugMessagesModel::labels() const
@@ -59,10 +60,10 @@ QVariantMap DebugMessagesModel::details(int index) const
QVariantMap result; QVariantMap result;
result.insert(QLatin1String("displayName"), messageType(type.detailType())); result.insert(QLatin1String("displayName"), messageType(type.detailType()));
result.insert(tr("Timestamp"), Timeline::formatTime(startTime(index), result.insert(Tr::tr("Timestamp"), Timeline::formatTime(startTime(index),
manager->traceDuration())); manager->traceDuration()));
result.insert(tr("Message"), m_data[index].text); result.insert(Tr::tr("Message"), m_data[index].text);
result.insert(tr("Location"), type.displayName()); result.insert(Tr::tr("Location"), type.displayName());
return result; return result;
} }

View File

@@ -2,8 +2,8 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "flamegraphmodel.h" #include "flamegraphmodel.h"
#include "qmlprofilermodelmanager.h" #include "qmlprofilermodelmanager.h"
#include "qmlprofilertr.h"
#include <utils/algorithm.h> #include <utils/algorithm.h>
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
@@ -149,7 +149,7 @@ void FlameGraphModel::restrictToFeatures(quint64 visibleFeatures)
std::bind(&FlameGraphModel::finalize, this), std::bind(&FlameGraphModel::finalize, this),
[this](const QString &message) { [this](const QString &message) {
if (!message.isEmpty()) { if (!message.isEmpty()) {
emit m_modelManager->error(tr("Could not re-read events from temporary trace file: %1") emit m_modelManager->error(Tr::tr("Could not re-read events from temporary trace file: %1")
.arg(message)); .arg(message));
} }
endResetModel(); endResetModel();
@@ -160,11 +160,11 @@ void FlameGraphModel::restrictToFeatures(quint64 visibleFeatures)
static QString nameForType(RangeType typeNumber) static QString nameForType(RangeType typeNumber)
{ {
switch (typeNumber) { switch (typeNumber) {
case Compiling: return FlameGraphModel::tr("Compile"); case Compiling: return Tr::tr("Compile");
case Creating: return FlameGraphModel::tr("Create"); case Creating: return Tr::tr("Create");
case Binding: return FlameGraphModel::tr("Binding"); case Binding: return Tr::tr("Binding");
case HandlingSignal: return FlameGraphModel::tr("Signal"); case HandlingSignal: return Tr::tr("Signal");
case Javascript: return FlameGraphModel::tr("JavaScript"); case Javascript: return Tr::tr("JavaScript");
default: Q_UNREACHABLE(); default: Q_UNREACHABLE();
} }
} }
@@ -205,7 +205,7 @@ QVariant FlameGraphModel::lookup(const FlameGraphData &stats, int role) const
case TypeRole: return nameForType(type.rangeType()); case TypeRole: return nameForType(type.rangeType());
case RangeTypeRole: return type.rangeType(); case RangeTypeRole: return type.rangeType();
case DetailsRole: return type.data().isEmpty() ? case DetailsRole: return type.data().isEmpty() ?
FlameGraphModel::tr("Source code not available") : type.data(); Tr::tr("Source code not available") : type.data();
case LocationRole: return type.displayName(); case LocationRole: return type.displayName();
default: return QVariant(); default: return QVariant();
} }

View File

@@ -4,6 +4,7 @@
#include "flamegraphview.h" #include "flamegraphview.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include "qmlprofilertool.h" #include "qmlprofilertool.h"
#include "qmlprofilertr.h"
#include <tracing/flamegraph.h> #include <tracing/flamegraph.h>
#include <tracing/timelinetheme.h> #include <tracing/timelinetheme.h>
@@ -22,7 +23,7 @@ FlameGraphView::FlameGraphView(QmlProfilerModelManager *manager, QWidget *parent
m_model(new FlameGraphModel(manager, this)) m_model(new FlameGraphModel(manager, this))
{ {
setObjectName("QmlProfiler.FlameGraph.Dock"); setObjectName("QmlProfiler.FlameGraph.Dock");
setWindowTitle(tr("Flame Graph")); setWindowTitle(Tr::tr("Flame Graph"));
m_content->engine()->addImportPath(":/qt/qml/"); m_content->engine()->addImportPath(":/qt/qml/");
Timeline::TimelineTheme::setupTheme(m_content->engine()); Timeline::TimelineTheme::setupTheme(m_content->engine());
@@ -63,9 +64,9 @@ void FlameGraphView::contextMenuEvent(QContextMenuEvent *ev)
menu.addActions(QmlProfilerTool::profilerContextMenuActions()); menu.addActions(QmlProfilerTool::profilerContextMenuActions());
menu.addSeparator(); menu.addSeparator();
QAction *getGlobalStatsAction = menu.addAction(tr("Show Full Range")); QAction *getGlobalStatsAction = menu.addAction(Tr::tr("Show Full Range"));
getGlobalStatsAction->setEnabled(m_model->modelManager()->isRestrictedToRange()); getGlobalStatsAction->setEnabled(m_model->modelManager()->isRestrictedToRange());
QAction *resetAction = menu.addAction(tr("Reset Flame Graph")); QAction *resetAction = menu.addAction(Tr::tr("Reset Flame Graph"));
resetAction->setEnabled(m_content->rootObject()->property("zoomed").toBool()); resetAction->setEnabled(m_content->rootObject()->property("zoomed").toBool());
const QAction *selected = menu.exec(position); const QAction *selected = menu.exec(position);

View File

@@ -2,8 +2,9 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "inputeventsmodel.h" #include "inputeventsmodel.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilereventtypes.h" #include "qmlprofilereventtypes.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilertr.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
@@ -36,12 +37,12 @@ QVariantList InputEventsModel::labels() const
QVariantList result; QVariantList result;
QVariantMap element; QVariantMap element;
element.insert(QLatin1String("description"), QVariant(tr("Mouse Events"))); element.insert(QLatin1String("description"), QVariant(Tr::tr("Mouse Events")));
element.insert(QLatin1String("id"), QVariant(Mouse)); element.insert(QLatin1String("id"), QVariant(Mouse));
result << element; result << element;
element.clear(); element.clear();
element.insert(QLatin1String("description"), QVariant(tr("Keyboard Events"))); element.insert(QLatin1String("description"), QVariant(Tr::tr("Keyboard Events")));
element.insert(QLatin1String("id"), QVariant(Key)); element.insert(QLatin1String("id"), QVariant(Key));
result << element; result << element;
@@ -56,56 +57,56 @@ QMetaEnum InputEventsModel::metaEnum(const char *name)
QVariantMap InputEventsModel::details(int index) const QVariantMap InputEventsModel::details(int index) const
{ {
QVariantMap result; QVariantMap result;
result.insert(tr("Timestamp"), Timeline::formatTime(startTime(index), result.insert(Tr::tr("Timestamp"), Timeline::formatTime(startTime(index),
modelManager()->traceDuration())); modelManager()->traceDuration()));
QString type; QString type;
const Item &event = m_data[index]; const Item &event = m_data[index];
switch (event.type) { switch (event.type) {
case InputKeyPress: case InputKeyPress:
type = tr("Key Press"); type = Tr::tr("Key Press");
Q_FALLTHROUGH(); Q_FALLTHROUGH();
case InputKeyRelease: case InputKeyRelease:
if (type.isEmpty()) if (type.isEmpty())
type = tr("Key Release"); type = Tr::tr("Key Release");
if (event.a != 0) { if (event.a != 0) {
result.insert(tr("Key"), QLatin1String(metaEnum("Key").valueToKey(event.a))); result.insert(Tr::tr("Key"), QLatin1String(metaEnum("Key").valueToKey(event.a)));
} }
if (event.b != 0) { if (event.b != 0) {
result.insert(tr("Modifiers"), result.insert(Tr::tr("Modifiers"),
QLatin1String(metaEnum("KeyboardModifiers").valueToKeys(event.b))); QLatin1String(metaEnum("KeyboardModifiers").valueToKeys(event.b)));
} }
break; break;
case InputMouseDoubleClick: case InputMouseDoubleClick:
type = tr("Double Click"); type = Tr::tr("Double Click");
Q_FALLTHROUGH(); Q_FALLTHROUGH();
case InputMousePress: case InputMousePress:
if (type.isEmpty()) if (type.isEmpty())
type = tr("Mouse Press"); type = Tr::tr("Mouse Press");
Q_FALLTHROUGH(); Q_FALLTHROUGH();
case InputMouseRelease: case InputMouseRelease:
if (type.isEmpty()) if (type.isEmpty())
type = tr("Mouse Release"); type = Tr::tr("Mouse Release");
result.insert(tr("Button"), QLatin1String(metaEnum("MouseButtons").valueToKey(event.a))); result.insert(Tr::tr("Button"), QLatin1String(metaEnum("MouseButtons").valueToKey(event.a)));
result.insert(tr("Result"), QLatin1String(metaEnum("MouseButtons").valueToKeys(event.b))); result.insert(Tr::tr("Result"), QLatin1String(metaEnum("MouseButtons").valueToKeys(event.b)));
break; break;
case InputMouseMove: case InputMouseMove:
type = tr("Mouse Move"); type = Tr::tr("Mouse Move");
result.insert(tr("X"), QString::number(event.a)); result.insert(Tr::tr("X"), QString::number(event.a));
result.insert(tr("Y"), QString::number(event.b)); result.insert(Tr::tr("Y"), QString::number(event.b));
break; break;
case InputMouseWheel: case InputMouseWheel:
type = tr("Mouse Wheel"); type = Tr::tr("Mouse Wheel");
result.insert(tr("Angle X"), QString::number(event.a)); result.insert(Tr::tr("Angle X"), QString::number(event.a));
result.insert(tr("Angle Y"), QString::number(event.b)); result.insert(Tr::tr("Angle Y"), QString::number(event.b));
break; break;
case InputKeyUnknown: case InputKeyUnknown:
type = tr("Keyboard Event"); type = Tr::tr("Keyboard Event");
break; break;
case InputMouseUnknown: case InputMouseUnknown:
type = tr("Mouse Event"); type = Tr::tr("Mouse Event");
break; break;
default: default:
type = tr("Unknown"); type = Tr::tr("Unknown");
break; break;
} }

View File

@@ -2,8 +2,9 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "memoryusagemodel.h" #include "memoryusagemodel.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilereventtypes.h" #include "qmlprofilereventtypes.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilertr.h"
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
@@ -63,12 +64,12 @@ QVariantList MemoryUsageModel::labels() const
QVariantList result; QVariantList result;
QVariantMap element; QVariantMap element;
element.insert(QLatin1String("description"), tr("Memory Allocation")); element.insert(QLatin1String("description"), Tr::tr("Memory Allocation"));
element.insert(QLatin1String("id"), HeapPage); element.insert(QLatin1String("id"), HeapPage);
result << element; result << element;
element.clear(); element.clear();
element.insert(QLatin1String("description"), tr("Memory Usage")); element.insert(QLatin1String("description"), Tr::tr("Memory Usage"));
element.insert(QLatin1String("id"), SmallItem); element.insert(QLatin1String("id"), SmallItem);
result << element; result << element;
@@ -90,30 +91,30 @@ QVariantMap MemoryUsageModel::details(int index) const
const Item *ev = &m_data[index]; const Item *ev = &m_data[index];
if (ev->allocated >= -ev->deallocated) if (ev->allocated >= -ev->deallocated)
result.insert(QLatin1String("displayName"), tr("Memory Allocated")); result.insert(QLatin1String("displayName"), Tr::tr("Memory Allocated"));
else else
result.insert(QLatin1String("displayName"), tr("Memory Freed")); result.insert(QLatin1String("displayName"), Tr::tr("Memory Freed"));
result.insert(tr("Total"), tr("%n byte(s)", nullptr, toSameSignedInt(ev->size))); result.insert(Tr::tr("Total"), Tr::tr("%n byte(s)", nullptr, toSameSignedInt(ev->size)));
if (ev->allocations > 0) { if (ev->allocations > 0) {
result.insert(tr("Allocated"), tr("%n byte(s)", nullptr, toSameSignedInt(ev->allocated))); result.insert(Tr::tr("Allocated"), Tr::tr("%n byte(s)", nullptr, toSameSignedInt(ev->allocated)));
result.insert(tr("Allocations"), ev->allocations); result.insert(Tr::tr("Allocations"), ev->allocations);
} }
if (ev->deallocations > 0) { if (ev->deallocations > 0) {
result.insert(tr("Deallocated"), result.insert(Tr::tr("Deallocated"),
tr("%n byte(s)", nullptr, toSameSignedInt(-ev->deallocated))); Tr::tr("%n byte(s)", nullptr, toSameSignedInt(-ev->deallocated)));
result.insert(tr("Deallocations"), ev->deallocations); result.insert(Tr::tr("Deallocations"), ev->deallocations);
} }
QString memoryTypeName; QString memoryTypeName;
switch (selectionId(index)) { switch (selectionId(index)) {
case HeapPage: memoryTypeName = tr("Heap Allocation"); break; case HeapPage: memoryTypeName = Tr::tr("Heap Allocation"); break;
case LargeItem: memoryTypeName = tr("Large Item Allocation"); break; case LargeItem: memoryTypeName = Tr::tr("Large Item Allocation"); break;
case SmallItem: memoryTypeName = tr("Heap Usage"); break; case SmallItem: memoryTypeName = Tr::tr("Heap Usage"); break;
default: Q_UNREACHABLE(); default: Q_UNREACHABLE();
} }
result.insert(tr("Type"), memoryTypeName); result.insert(Tr::tr("Type"), memoryTypeName);
result.insert(tr("Location"), modelManager()->eventType(ev->typeId).displayName()); result.insert(Tr::tr("Location"), modelManager()->eventType(ev->typeId).displayName());
return result; return result;
} }

View File

@@ -2,8 +2,9 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "pixmapcachemodel.h" #include "pixmapcachemodel.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilereventtypes.h" #include "qmlprofilereventtypes.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilertr.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
@@ -71,7 +72,7 @@ QVariantList PixmapCacheModel::labels() const
// Cache Size // Cache Size
QVariantMap element; QVariantMap element;
element.insert(QLatin1String("description"), tr("Cache Size")); element.insert(QLatin1String("description"), Tr::tr("Cache Size"));
element.insert(QLatin1String("id"), 0); element.insert(QLatin1String("id"), 0);
result << element; result << element;
@@ -95,19 +96,19 @@ QVariantMap PixmapCacheModel::details(int index) const
const Item *ev = &m_data[index]; const Item *ev = &m_data[index];
if (ev->pixmapEventType == PixmapCacheCountChanged) { if (ev->pixmapEventType == PixmapCacheCountChanged) {
result.insert(QLatin1String("displayName"), tr("Image Cached")); result.insert(QLatin1String("displayName"), Tr::tr("Image Cached"));
result.insert(tr("Cache Size"), QString::fromLatin1("%1 px").arg(ev->cacheSize)); result.insert(Tr::tr("Cache Size"), QString::fromLatin1("%1 px").arg(ev->cacheSize));
} else { } else {
result.insert(QLatin1String("displayName"), tr("Image Loaded")); result.insert(QLatin1String("displayName"), Tr::tr("Image Loaded"));
if (m_pixmaps[ev->urlIndex].sizes[ev->sizeIndex].loadState != Finished) if (m_pixmaps[ev->urlIndex].sizes[ev->sizeIndex].loadState != Finished)
result.insert(tr("Result"), tr("Load Error")); result.insert(Tr::tr("Result"), Tr::tr("Load Error"));
result.insert(tr("Duration"), Timeline::formatTime(duration(index))); result.insert(Tr::tr("Duration"), Timeline::formatTime(duration(index)));
} }
result.insert(tr("File"), getFilenameOnly(m_pixmaps[ev->urlIndex].url)); result.insert(Tr::tr("File"), getFilenameOnly(m_pixmaps[ev->urlIndex].url));
result.insert(tr("Width"), QString::fromLatin1("%1 px") result.insert(Tr::tr("Width"), QString::fromLatin1("%1 px")
.arg(m_pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.width())); .arg(m_pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.width()));
result.insert(tr("Height"), QString::fromLatin1("%1 px") result.insert(Tr::tr("Height"), QString::fromLatin1("%1 px")
.arg(m_pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.height())); .arg(m_pixmaps[ev->urlIndex].sizes[ev->sizeIndex].size.height()));
return result; return result;
} }

View File

@@ -24,21 +24,21 @@ FlameGraphView {
] ]
trRoleNames: [ trRoleNames: [
QmlProfilerFlameGraphModel.DurationRole, qsTr("Total Time"), QmlProfilerFlameGraphModel.DurationRole, qsTranslate("QmlProfiler", "Total Time"),
QmlProfilerFlameGraphModel.CallCountRole, qsTr("Calls"), QmlProfilerFlameGraphModel.CallCountRole, qsTranslate("QmlProfiler", "Calls"),
QmlProfilerFlameGraphModel.DetailsRole, qsTr("Details"), QmlProfilerFlameGraphModel.DetailsRole, qsTranslate("QmlProfiler", "Details"),
QmlProfilerFlameGraphModel.TimePerCallRole, qsTr("Mean Time"), QmlProfilerFlameGraphModel.TimePerCallRole, qsTranslate("QmlProfiler", "Mean Time"),
QmlProfilerFlameGraphModel.TimeInPercentRole, qsTr("In Percent"), QmlProfilerFlameGraphModel.TimeInPercentRole, qsTranslate("QmlProfiler", "In Percent"),
QmlProfilerFlameGraphModel.LocationRole, qsTr("Location"), QmlProfilerFlameGraphModel.LocationRole, qsTranslate("QmlProfiler", "Location"),
QmlProfilerFlameGraphModel.AllocationsRole, qsTr("Allocations"), QmlProfilerFlameGraphModel.AllocationsRole, qsTranslate("QmlProfiler", "Allocations"),
QmlProfilerFlameGraphModel.MemoryRole, qsTr("Memory") QmlProfilerFlameGraphModel.MemoryRole, qsTranslate("QmlProfiler", "Memory")
].reduce(toMap, {}) ].reduce(toMap, {})
details: function(flameGraph) { details: function(flameGraph) {
var model = []; var model = [];
if (!flameGraph.dataValid) { if (!flameGraph.dataValid) {
model.push(trRoleNames[QmlProfilerFlameGraphModel.DetailsRole]); model.push(trRoleNames[QmlProfilerFlameGraphModel.DetailsRole]);
model.push(qsTr("Various Events")); model.push(qsTranslate("QmlProfiler", "Various Events"));
} else { } else {
function addDetail(role, format) { root.addDetail(role, format, model, flameGraph); } function addDetail(role, format) { root.addDetail(role, format, model, flameGraph); }
@@ -55,7 +55,7 @@ FlameGraphView {
summary: function(attached) { summary: function(attached) {
if (!attached.dataValid) if (!attached.dataValid)
return qsTr("others"); return qsTranslate("QmlProfiler", "others");
return attached.data(QmlProfilerFlameGraphModel.DetailsRole) + " (" return attached.data(QmlProfilerFlameGraphModel.DetailsRole) + " ("
+ attached.data(QmlProfilerFlameGraphModel.TypeRole) + ", " + attached.data(QmlProfilerFlameGraphModel.TypeRole) + ", "

View File

@@ -3,9 +3,10 @@
#include "qmlprofileractions.h" #include "qmlprofileractions.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include "qmlprofilertool.h"
#include "qmlprofilerstatemanager.h"
#include "qmlprofilermodelmanager.h" #include "qmlprofilermodelmanager.h"
#include "qmlprofilerstatemanager.h"
#include "qmlprofilertool.h"
#include "qmlprofilertr.h"
#include <debugger/analyzer/analyzerconstants.h> #include <debugger/analyzer/analyzerconstants.h>
@@ -25,10 +26,10 @@ QmlProfilerActions::QmlProfilerActions(QObject *parent) : QObject(parent)
void QmlProfilerActions::attachToTool(QmlProfilerTool *tool) void QmlProfilerActions::attachToTool(QmlProfilerTool *tool)
{ {
const QString description = tr("The QML Profiler can be used to find performance " const QString description = Tr::tr("The QML Profiler can be used to find performance "
"bottlenecks in applications using QML."); "bottlenecks in applications using QML.");
m_runAction = std::make_unique<QAction>(tr("QML Profiler")); m_runAction = std::make_unique<QAction>(Tr::tr("QML Profiler"));
m_runAction->setToolTip(description); m_runAction->setToolTip(description);
QObject::connect(m_runAction.get(), &QAction::triggered, QObject::connect(m_runAction.get(), &QAction::triggered,
tool, &QmlProfilerTool::profileStartupProject); tool, &QmlProfilerTool::profileStartupProject);
@@ -38,16 +39,16 @@ void QmlProfilerActions::attachToTool(QmlProfilerTool *tool)
m_runAction->setEnabled(toolStartAction->isEnabled()); m_runAction->setEnabled(toolStartAction->isEnabled());
}); });
m_attachAction = std::make_unique<QAction>(tr("QML Profiler (Attach to Waiting Application)")); m_attachAction = std::make_unique<QAction>(Tr::tr("QML Profiler (Attach to Waiting Application)"));
m_attachAction->setToolTip(description); m_attachAction->setToolTip(description);
QObject::connect(m_attachAction.get(), &QAction::triggered, QObject::connect(m_attachAction.get(), &QAction::triggered,
tool, &QmlProfilerTool::attachToWaitingApplication); tool, &QmlProfilerTool::attachToWaitingApplication);
m_loadQmlTrace = std::make_unique<QAction>(tr("Load QML Trace")); m_loadQmlTrace = std::make_unique<QAction>(Tr::tr("Load QML Trace"));
connect(m_loadQmlTrace.get(), &QAction::triggered, connect(m_loadQmlTrace.get(), &QAction::triggered,
tool, &QmlProfilerTool::showLoadDialog, Qt::QueuedConnection); tool, &QmlProfilerTool::showLoadDialog, Qt::QueuedConnection);
m_saveQmlTrace = std::make_unique<QAction>(tr("Save QML Trace")); m_saveQmlTrace = std::make_unique<QAction>(Tr::tr("Save QML Trace"));
connect(m_saveQmlTrace.get(), &QAction::triggered, connect(m_saveQmlTrace.get(), &QAction::triggered,
tool, &QmlProfilerTool::showSaveDialog, Qt::QueuedConnection); tool, &QmlProfilerTool::showSaveDialog, Qt::QueuedConnection);
@@ -69,7 +70,7 @@ void QmlProfilerActions::attachToTool(QmlProfilerTool *tool)
void QmlProfilerActions::registerActions() void QmlProfilerActions::registerActions()
{ {
m_options.reset(ActionManager::createMenu("Analyzer.Menu.QMLOptions")); m_options.reset(ActionManager::createMenu("Analyzer.Menu.QMLOptions"));
m_options->menu()->setTitle(tr("QML Profiler Options")); m_options->menu()->setTitle(Tr::tr("QML Profiler Options"));
m_options->menu()->setEnabled(true); m_options->menu()->setEnabled(true);
ActionContainer *menu = ActionManager::actionContainer(M_DEBUG_ANALYZER); ActionContainer *menu = ActionManager::actionContainer(M_DEBUG_ANALYZER);

View File

@@ -3,6 +3,7 @@
#include "qmlprofileranimationsmodel.h" #include "qmlprofileranimationsmodel.h"
#include "qmlprofilermodelmanager.h" #include "qmlprofilermodelmanager.h"
#include "qmlprofilertr.h"
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
@@ -133,16 +134,16 @@ QVariantList QmlProfilerAnimationsModel::labels() const
if (m_maxGuiThreadAnimations > 0) { if (m_maxGuiThreadAnimations > 0) {
QVariantMap element; QVariantMap element;
element.insert(QLatin1String("displayName"), tr("Animations")); element.insert(QLatin1String("displayName"), Tr::tr("Animations"));
element.insert(QLatin1String("description"), tr("GUI Thread")); element.insert(QLatin1String("description"), Tr::tr("GUI Thread"));
element.insert(QLatin1String("id"), GuiThread); element.insert(QLatin1String("id"), GuiThread);
result << element; result << element;
} }
if (m_maxRenderThreadAnimations > 0) { if (m_maxRenderThreadAnimations > 0) {
QVariantMap element; QVariantMap element;
element.insert(QLatin1String("displayName"), tr("Animations")); element.insert(QLatin1String("displayName"), Tr::tr("Animations"));
element.insert(QLatin1String("description"), tr("Render Thread")); element.insert(QLatin1String("description"), Tr::tr("Render Thread"));
element.insert(QLatin1String("id"), RenderThread); element.insert(QLatin1String("id"), RenderThread);
result << element; result << element;
} }
@@ -155,11 +156,11 @@ QVariantMap QmlProfilerAnimationsModel::details(int index) const
QVariantMap result; QVariantMap result;
result.insert(QStringLiteral("displayName"), displayName()); result.insert(QStringLiteral("displayName"), displayName());
result.insert(tr("Duration"), Timeline::formatTime(duration(index))); result.insert(Tr::tr("Duration"), Timeline::formatTime(duration(index)));
result.insert(tr("Framerate"), QString::fromLatin1("%1 FPS").arg(m_data[index].framerate)); result.insert(Tr::tr("Framerate"), QString::fromLatin1("%1 FPS").arg(m_data[index].framerate));
result.insert(tr("Animations"), QString::number(m_data[index].animationcount)); result.insert(Tr::tr("Animations"), QString::number(m_data[index].animationcount));
result.insert(tr("Context"), selectionId(index) == GuiThread ? tr("GUI Thread") : result.insert(Tr::tr("Context"), selectionId(index) == GuiThread ? Tr::tr("GUI Thread") :
tr("Render Thread")); Tr::tr("Render Thread"));
return result; return result;
} }

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilerattachdialog.h" #include "qmlprofilerattachdialog.h"
#include "qmlprofilertr.h"
#include <projectexplorer/kitchooser.h> #include <projectexplorer/kitchooser.h>
#include <projectexplorer/kitinformation.h> #include <projectexplorer/kitinformation.h>
@@ -28,7 +29,7 @@ QmlProfilerAttachDialog::QmlProfilerAttachDialog(QWidget *parent) :
QDialog(parent), QDialog(parent),
d(new QmlProfilerAttachDialogPrivate) d(new QmlProfilerAttachDialogPrivate)
{ {
setWindowTitle(tr("Start QML Profiler")); setWindowTitle(Tr::tr("Start QML Profiler"));
d->kitChooser = new KitChooser(this); d->kitChooser = new KitChooser(this);
d->kitChooser->setKitPredicate([](const Kit *kit) { d->kitChooser->setKitPredicate([](const Kit *kit) {
@@ -47,14 +48,14 @@ QmlProfilerAttachDialog::QmlProfilerAttachDialog(QWidget *parent) :
auto hint = new QLabel(this); auto hint = new QLabel(this);
hint->setWordWrap(true); hint->setWordWrap(true);
hint->setTextFormat(Qt::RichText); hint->setTextFormat(Qt::RichText);
hint->setText(tr("Select an externally started QML-debug enabled application.<p>" hint->setText(Tr::tr("Select an externally started QML-debug enabled application.<p>"
"Commonly used command-line arguments are:") "Commonly used command-line arguments are:")
+ "<p><tt>-qmljsdebugger=port:&lt;port&gt;,block,<br>" + "<p><tt>-qmljsdebugger=port:&lt;port&gt;,block,<br>"
"&nbsp;&nbsp;services:CanvasFrameRate,EngineControl,DebugMessages</tt>"); "&nbsp;&nbsp;services:CanvasFrameRate,EngineControl,DebugMessages</tt>");
auto formLayout = new QFormLayout; auto formLayout = new QFormLayout;
formLayout->addRow(tr("Kit:"), d->kitChooser); formLayout->addRow(Tr::tr("Kit:"), d->kitChooser);
formLayout->addRow(tr("&Port:"), d->portSpinBox); formLayout->addRow(Tr::tr("&Port:"), d->portSpinBox);
auto verticalLayout = new QVBoxLayout(this); auto verticalLayout = new QVBoxLayout(this);
verticalLayout->addWidget(hint); verticalLayout->addWidget(hint);

View File

@@ -1,11 +1,12 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilermodelmanager.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include "qmlprofilertracefile.h"
#include "qmlprofilernotesmodel.h"
#include "qmlprofilerdetailsrewriter.h" #include "qmlprofilerdetailsrewriter.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilernotesmodel.h"
#include "qmlprofilertr.h"
#include "qmlprofilertracefile.h"
#include <coreplugin/progressmanager/progressmanager.h> #include <coreplugin/progressmanager/progressmanager.h>
#include <tracing/tracestashfile.h> #include <tracing/tracestashfile.h>
@@ -23,19 +24,19 @@
namespace QmlProfiler { namespace QmlProfiler {
static const char *ProfileFeatureNames[] = { static const char *ProfileFeatureNames[] = {
QT_TRANSLATE_NOOP("MainView", "JavaScript"), QT_TRANSLATE_NOOP("QmlProfiler", "JavaScript"),
QT_TRANSLATE_NOOP("MainView", "Memory Usage"), QT_TRANSLATE_NOOP("QmlProfiler", "Memory Usage"),
QT_TRANSLATE_NOOP("MainView", "Pixmap Cache"), QT_TRANSLATE_NOOP("QmlProfiler", "Pixmap Cache"),
QT_TRANSLATE_NOOP("MainView", "Scene Graph"), QT_TRANSLATE_NOOP("QmlProfiler", "Scene Graph"),
QT_TRANSLATE_NOOP("MainView", "Animations"), QT_TRANSLATE_NOOP("QmlProfiler", "Animations"),
QT_TRANSLATE_NOOP("MainView", "Painting"), QT_TRANSLATE_NOOP("QmlProfiler", "Painting"),
QT_TRANSLATE_NOOP("MainView", "Compiling"), QT_TRANSLATE_NOOP("QmlProfiler", "Compiling"),
QT_TRANSLATE_NOOP("MainView", "Creating"), QT_TRANSLATE_NOOP("QmlProfiler", "Creating"),
QT_TRANSLATE_NOOP("MainView", "Binding"), QT_TRANSLATE_NOOP("QmlProfiler", "Binding"),
QT_TRANSLATE_NOOP("MainView", "Handling Signal"), QT_TRANSLATE_NOOP("QmlProfiler", "Handling Signal"),
QT_TRANSLATE_NOOP("MainView", "Input Events"), QT_TRANSLATE_NOOP("QmlProfiler", "Input Events"),
QT_TRANSLATE_NOOP("MainView", "Debug Messages"), QT_TRANSLATE_NOOP("QmlProfiler", "Debug Messages"),
QT_TRANSLATE_NOOP("MainView", "Quick3D") QT_TRANSLATE_NOOP("QmlProfiler", "Quick3D")
}; };
Q_STATIC_ASSERT(sizeof(ProfileFeatureNames) == sizeof(char *) * MaximumProfileFeature); Q_STATIC_ASSERT(sizeof(ProfileFeatureNames) == sizeof(char *) * MaximumProfileFeature);
@@ -176,7 +177,7 @@ void QmlProfilerModelManager::replayQmlEvents(QmlEventLoader loader,
if (!result && errorHandler) { if (!result && errorHandler) {
errorHandler(future.isCanceled() ? QString() errorHandler(future.isCanceled() ? QString()
: tr("Failed to replay QML events from stash file.")); : Tr::tr("Failed to replay QML events from stash file."));
} else if (result && finalizer) { } else if (result && finalizer) {
finalizer(); finalizer();
} }
@@ -203,7 +204,7 @@ void QmlProfilerModelManager::clearTypeStorage()
static QString getDisplayName(const QmlEventType &event) static QString getDisplayName(const QmlEventType &event)
{ {
if (event.location().filename().isEmpty()) { if (event.location().filename().isEmpty()) {
return QmlProfilerModelManager::tr("<bytecode>"); return Tr::tr("<bytecode>");
} else { } else {
const QString filePath = QUrl(event.location().filename()).path(); const QString filePath = QUrl(event.location().filename()).path();
return filePath.mid(filePath.lastIndexOf(QLatin1Char('/')) + 1) + QLatin1Char(':') + return filePath.mid(filePath.lastIndexOf(QLatin1Char('/')) + 1) + QLatin1Char(':') +
@@ -219,7 +220,7 @@ static QString getInitialDetails(const QmlEventType &event)
details = details.replace(QLatin1Char('\n'),QLatin1Char(' ')).simplified(); details = details.replace(QLatin1Char('\n'),QLatin1Char(' ')).simplified();
if (details.isEmpty()) { if (details.isEmpty()) {
if (event.rangeType() == Javascript) if (event.rangeType() == Javascript)
details = QmlProfilerModelManager::tr("anonymous function"); details = Tr::tr("anonymous function");
} else { } else {
QRegularExpression rewrite(QLatin1String("^\\(function \\$(\\w+)\\(\\) \\{ (return |)(.+) \\}\\)$")); QRegularExpression rewrite(QLatin1String("^\\(function \\$(\\w+)\\(\\) \\{ (return |)(.+) \\}\\)$"));
QRegularExpressionMatch match = rewrite.match(details); QRegularExpressionMatch match = rewrite.match(details);
@@ -483,7 +484,7 @@ QmlProfilerEventStorage::QmlProfilerEventStorage(
: m_file("qmlprofiler-data"), m_errorHandler(errorHandler) : m_file("qmlprofiler-data"), m_errorHandler(errorHandler)
{ {
if (!m_file.open()) if (!m_file.open())
errorHandler(tr("Cannot open temporary trace file to store events.")); errorHandler(Tr::tr("Cannot open temporary trace file to store events."));
} }
int QmlProfilerEventStorage::append(Timeline::TraceEvent &&event) int QmlProfilerEventStorage::append(Timeline::TraceEvent &&event)
@@ -503,13 +504,13 @@ void QmlProfilerEventStorage::clear()
m_size = 0; m_size = 0;
m_file.clear(); m_file.clear();
if (!m_file.open()) if (!m_file.open())
m_errorHandler(tr("Failed to reset temporary trace file.")); m_errorHandler(Tr::tr("Failed to reset temporary trace file."));
} }
void QmlProfilerEventStorage::finalize() void QmlProfilerEventStorage::finalize()
{ {
if (!m_file.flush()) if (!m_file.flush())
m_errorHandler(tr("Failed to flush temporary trace file.")); m_errorHandler(Tr::tr("Failed to flush temporary trace file."));
} }
QmlProfilerEventStorage::ErrorHandler QmlProfilerEventStorage::errorHandler() const QmlProfilerEventStorage::ErrorHandler QmlProfilerEventStorage::errorHandler() const
@@ -530,13 +531,13 @@ bool QmlProfilerEventStorage::replay(
case Timeline::TraceStashFile<QmlEvent>::ReplaySuccess: case Timeline::TraceStashFile<QmlEvent>::ReplaySuccess:
return true; return true;
case Timeline::TraceStashFile<QmlEvent>::ReplayOpenFailed: case Timeline::TraceStashFile<QmlEvent>::ReplayOpenFailed:
m_errorHandler(tr("Could not re-open temporary trace file.")); m_errorHandler(Tr::tr("Could not re-open temporary trace file."));
break; break;
case Timeline::TraceStashFile<QmlEvent>::ReplayLoadFailed: case Timeline::TraceStashFile<QmlEvent>::ReplayLoadFailed:
// Happens if the loader rejects an event. Not an actual error // Happens if the loader rejects an event. Not an actual error
break; break;
case Timeline::TraceStashFile<QmlEvent>::ReplayReadPastEnd: case Timeline::TraceStashFile<QmlEvent>::ReplayReadPastEnd:
m_errorHandler(tr("Read past end in temporary trace file.")); m_errorHandler(Tr::tr("Read past end in temporary trace file."));
break; break;
} }
return false; return false;

View File

@@ -1,9 +1,10 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilerrangemodel.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilerbindingloopsrenderpass.h" #include "qmlprofilerbindingloopsrenderpass.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilerrangemodel.h"
#include "qmlprofilertr.h"
#include <tracing/timelinenotesrenderpass.h> #include <tracing/timelinenotesrenderpass.h>
#include <tracing/timelineitemsrenderpass.h> #include <tracing/timelineitemsrenderpass.h>
@@ -202,12 +203,12 @@ QVariantMap QmlProfilerRangeModel::details(int index) const
int id = selectionId(index); int id = selectionId(index);
result.insert(QStringLiteral("displayName"), result.insert(QStringLiteral("displayName"),
tr(QmlProfilerModelManager::featureName(mainFeature()))); Tr::tr(QmlProfilerModelManager::featureName(mainFeature())));
result.insert(tr("Duration"), Timeline::formatTime(duration(index))); result.insert(Tr::tr("Duration"), Timeline::formatTime(duration(index)));
const QmlEventType &type = modelManager()->eventType(id); const QmlEventType &type = modelManager()->eventType(id);
result.insert(tr("Details"), type.data()); result.insert(Tr::tr("Details"), type.data());
result.insert(tr("Location"), type.displayName()); result.insert(Tr::tr("Location"), type.displayName());
return result; return result;
} }

View File

@@ -1,10 +1,11 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilerconstants.h"
#include "qmlprofilerplugin.h"
#include "qmlprofilerrunconfigurationaspect.h" #include "qmlprofilerrunconfigurationaspect.h"
#include "qmlprofilersettings.h" #include "qmlprofilersettings.h"
#include "qmlprofilerplugin.h" #include "qmlprofilertr.h"
#include "qmlprofilerconstants.h"
#include <debugger/analyzer/analyzerrunconfigwidget.h> #include <debugger/analyzer/analyzerrunconfigwidget.h>
@@ -16,7 +17,7 @@ QmlProfilerRunConfigurationAspect::QmlProfilerRunConfigurationAspect(ProjectExpl
setProjectSettings(new QmlProfilerSettings); setProjectSettings(new QmlProfilerSettings);
setGlobalSettings(QmlProfilerPlugin::globalSettings()); setGlobalSettings(QmlProfilerPlugin::globalSettings());
setId(Constants::SETTINGS); setId(Constants::SETTINGS);
setDisplayName(QCoreApplication::translate("QmlProfilerRunConfiguration", "QML Profiler Settings")); setDisplayName(Tr::tr("QML Profiler Settings"));
setUsingGlobalSettings(true); setUsingGlobalSettings(true);
resetProjectToGlobalSettings(); resetProjectToGlobalSettings();
setConfigWidgetCreator([this] { return new Debugger::AnalyzerRunConfigWidget(this); }); setConfigWidgetCreator([this] { return new Debugger::AnalyzerRunConfigWidget(this); });

View File

@@ -1,10 +1,10 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilersettings.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include "qmlprofilerplugin.h" #include "qmlprofilerplugin.h"
#include "qmlprofilersettings.h"
#include "qmlprofilertr.h"
#include <coreplugin/icore.h> #include <coreplugin/icore.h>
@@ -40,8 +40,8 @@ QmlProfilerSettings::QmlProfilerSettings()
registerAspect(&flushEnabled); registerAspect(&flushEnabled);
flushEnabled.setSettingsKey("Analyzer.QmlProfiler.FlushEnabled"); flushEnabled.setSettingsKey("Analyzer.QmlProfiler.FlushEnabled");
flushEnabled.setLabelPlacement(BoolAspect::LabelPlacement::InExtraLabel); flushEnabled.setLabelPlacement(BoolAspect::LabelPlacement::InExtraLabel);
flushEnabled.setLabelText(tr("Flush data while profiling:")); flushEnabled.setLabelText(Tr::tr("Flush data while profiling:"));
flushEnabled.setToolTip(tr( flushEnabled.setToolTip(Tr::tr(
"Periodically flush pending data to the profiler. This reduces the delay when loading the\n" "Periodically flush pending data to the profiler. This reduces the delay when loading the\n"
"data and the memory usage in the application. It distorts the profile as the flushing\n" "data and the memory usage in the application. It distorts the profile as the flushing\n"
"itself takes time.")); "itself takes time."));
@@ -50,7 +50,7 @@ QmlProfilerSettings::QmlProfilerSettings()
flushInterval.setSettingsKey("Analyzer.QmlProfiler.FlushInterval"); flushInterval.setSettingsKey("Analyzer.QmlProfiler.FlushInterval");
flushInterval.setRange(1, 10000000); flushInterval.setRange(1, 10000000);
flushInterval.setDefaultValue(1000); flushInterval.setDefaultValue(1000);
flushInterval.setLabelText(tr("Flush interval (ms):")); flushInterval.setLabelText(Tr::tr("Flush interval (ms):"));
flushInterval.setEnabler(&flushEnabled); flushInterval.setEnabler(&flushEnabled);
registerAspect(&lastTraceFile); registerAspect(&lastTraceFile);
@@ -59,8 +59,8 @@ QmlProfilerSettings::QmlProfilerSettings()
registerAspect(&aggregateTraces); registerAspect(&aggregateTraces);
aggregateTraces.setSettingsKey("Analyzer.QmlProfiler.AggregateTraces"); aggregateTraces.setSettingsKey("Analyzer.QmlProfiler.AggregateTraces");
aggregateTraces.setLabelPlacement(BoolAspect::LabelPlacement::InExtraLabel); aggregateTraces.setLabelPlacement(BoolAspect::LabelPlacement::InExtraLabel);
aggregateTraces.setLabelText(tr("Process data only when process ends:")); aggregateTraces.setLabelText(Tr::tr("Process data only when process ends:"));
aggregateTraces.setToolTip(tr( aggregateTraces.setToolTip(Tr::tr(
"Only process data when the process being profiled ends, not when the current recording\n" "Only process data when the process being profiled ends, not when the current recording\n"
"session ends. This way multiple recording sessions can be aggregated in a single trace,\n" "session ends. This way multiple recording sessions can be aggregated in a single trace,\n"
"for example if multiple QML engines start and stop sequentially during a single run of\n" "for example if multiple QML engines start and stop sequentially during a single run of\n"
@@ -80,9 +80,9 @@ void QmlProfilerSettings::writeGlobalSettings() const
QmlProfilerOptionsPage::QmlProfilerOptionsPage() QmlProfilerOptionsPage::QmlProfilerOptionsPage()
{ {
setId(Constants::SETTINGS); setId(Constants::SETTINGS);
setDisplayName(QmlProfilerSettings::tr("QML Profiler")); setDisplayName(Tr::tr("QML Profiler"));
setCategory("T.Analyzer"); setCategory("T.Analyzer");
setDisplayCategory(QmlProfilerSettings::tr("Analyzer")); setDisplayCategory(Tr::tr("Analyzer"));
setCategoryIconPath(Analyzer::Icons::SETTINGSCATEGORY_ANALYZER); setCategoryIconPath(Analyzer::Icons::SETTINGSCATEGORY_ANALYZER);
} }

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilerstatewidget.h" #include "qmlprofilerstatewidget.h"
#include "qmlprofilertr.h"
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
#include <utils/theme/theme.h> #include <utils/theme/theme.h>
@@ -114,24 +115,24 @@ void QmlProfilerStateWidget::updateDisplay()
// Heuristic to not show the number if the application will only send the events when it // Heuristic to not show the number if the application will only send the events when it
// stops. The number is still > 0 then because we get some StartTrace etc. // stops. The number is still > 0 then because we get some StartTrace etc.
const int numEvents = d->m_modelManager->numEvents(); const int numEvents = d->m_modelManager->numEvents();
showText(numEvents > 256 ? tr("Profiling application: %n events", nullptr, numEvents) : showText(numEvents > 256 ? Tr::tr("Profiling application: %n events", nullptr, numEvents) :
tr("Profiling application")); Tr::tr("Profiling application"));
} else if (d->m_modelManager->traceDuration() > 0 && d->m_modelManager->isEmpty()) { } else if (d->m_modelManager->traceDuration() > 0 && d->m_modelManager->isEmpty()) {
// After profiling, there is an empty trace // After profiling, there is an empty trace
showText(tr("No QML events recorded")); showText(Tr::tr("No QML events recorded"));
} else if (!d->m_modelManager->isEmpty()) { } else if (!d->m_modelManager->isEmpty()) {
// When datamodel is acquiring data // When datamodel is acquiring data
if (d->m_profilerState->currentState() != QmlProfilerStateManager::Idle) { if (d->m_profilerState->currentState() != QmlProfilerStateManager::Idle) {
// we don't know how much more, so progress numbers are strange here // we don't know how much more, so progress numbers are strange here
showText(tr("Loading buffered data: %n events", nullptr, showText(Tr::tr("Loading buffered data: %n events", nullptr,
d->m_modelManager->numEvents())); d->m_modelManager->numEvents()));
} else { } else {
// Application died before all data could be read // Application died before all data could be read
showText(tr("Loading offline data: %n events", nullptr, showText(Tr::tr("Loading offline data: %n events", nullptr,
d->m_modelManager->numEvents())); d->m_modelManager->numEvents()));
} }
} else { } else {
showText(tr("Waiting for data")); showText(Tr::tr("Waiting for data"));
} }
} }

View File

@@ -1,8 +1,9 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilerstatisticsmodel.h"
#include "qmlprofilermodelmanager.h" #include "qmlprofilermodelmanager.h"
#include "qmlprofilerstatisticsmodel.h"
#include "qmlprofilertr.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
#include <utils/algorithm.h> #include <utils/algorithm.h>
@@ -15,12 +16,12 @@ namespace QmlProfiler {
QString nameForType(RangeType typeNumber) QString nameForType(RangeType typeNumber)
{ {
switch (typeNumber) { switch (typeNumber) {
case Painting: return QmlProfilerStatisticsModel::tr("Painting"); case Painting: return Tr::tr("Painting");
case Compiling: return QmlProfilerStatisticsModel::tr("Compiling"); case Compiling: return Tr::tr("Compiling");
case Creating: return QmlProfilerStatisticsModel::tr("Creating"); case Creating: return Tr::tr("Creating");
case Binding: return QmlProfilerStatisticsModel::tr("Binding"); case Binding: return Tr::tr("Binding");
case HandlingSignal: return QmlProfilerStatisticsModel::tr("Handling Signal"); case HandlingSignal: return Tr::tr("Handling Signal");
case Javascript: return QmlProfilerStatisticsModel::tr("JavaScript"); case Javascript: return Tr::tr("JavaScript");
default: return QString(); default: return QString();
} }
} }
@@ -91,7 +92,7 @@ void QmlProfilerStatisticsModel::restrictToFeatures(quint64 features)
}, [this](const QString &message) { }, [this](const QString &message) {
endResetModel(); endResetModel();
if (!message.isEmpty()) { if (!message.isEmpty()) {
emit m_modelManager->error(tr("Could not re-read events from temporary trace file: %1") emit m_modelManager->error(Tr::tr("Could not re-read events from temporary trace file: %1")
.arg(message)); .arg(message));
} }
clear(); clear();
@@ -239,7 +240,7 @@ QVariant QmlProfilerStatisticsModel::dataForMainEntry(const QModelIndex &index,
case MainMinTime: case MainMinTime:
return Timeline::formatTime(m_rootDuration); return Timeline::formatTime(m_rootDuration);
case MainDetails: case MainDetails:
return tr("Main program"); return Tr::tr("Main program");
default: default:
break; break;
} }
@@ -274,7 +275,7 @@ QVariant QmlProfilerStatisticsModel::data(const QModelIndex &index, int role) co
return type.location().column(); return type.location().column();
case Qt::ToolTipRole: case Qt::ToolTipRole:
if (stats.recursive > 0) { if (stats.recursive > 0) {
return (tr("+%1 in recursive calls") return (Tr::tr("+%1 in recursive calls")
.arg(Timeline::formatTime(stats.recursive))); .arg(Timeline::formatTime(stats.recursive)));
} else { } else {
auto it = m_notes.constFind(typeIndex); auto it = m_notes.constFind(typeIndex);
@@ -313,7 +314,7 @@ QVariant QmlProfilerStatisticsModel::data(const QModelIndex &index, int role) co
case Qt::DisplayRole: case Qt::DisplayRole:
switch (index.column()) { switch (index.column()) {
case MainLocation: case MainLocation:
return type.displayName().isEmpty() ? tr("<bytecode>") : type.displayName(); return type.displayName().isEmpty() ? Tr::tr("<bytecode>") : type.displayName();
case MainType: case MainType:
return nameForType(type.rangeType()); return nameForType(type.rangeType());
case MainTimeInPercent: case MainTimeInPercent:
@@ -335,7 +336,7 @@ QVariant QmlProfilerStatisticsModel::data(const QModelIndex &index, int role) co
case MainMinTime: case MainMinTime:
return Timeline::formatTime(stats.minimum); return Timeline::formatTime(stats.minimum);
case MainDetails: case MainDetails:
return type.data().isEmpty() ? tr("Source code not available") return type.data().isEmpty() ? Tr::tr("Source code not available")
: type.data(); : type.data();
default: default:
QTC_CHECK(false); QTC_CHECK(false);
@@ -353,18 +354,18 @@ QVariant QmlProfilerStatisticsModel::headerData(int section, Qt::Orientation ori
return QAbstractTableModel::headerData(section, orientation, role); return QAbstractTableModel::headerData(section, orientation, role);
switch (section) { switch (section) {
case MainCallCount: return tr("Calls"); case MainCallCount: return Tr::tr("Calls");
case MainDetails: return tr("Details"); case MainDetails: return Tr::tr("Details");
case MainLocation: return tr("Location"); case MainLocation: return Tr::tr("Location");
case MainMaxTime: return tr("Longest Time"); case MainMaxTime: return Tr::tr("Longest Time");
case MainTimePerCall: return tr("Mean Time"); case MainTimePerCall: return Tr::tr("Mean Time");
case MainSelfTime: return tr("Self Time"); case MainSelfTime: return Tr::tr("Self Time");
case MainSelfTimeInPercent: return tr("Self Time in Percent"); case MainSelfTimeInPercent: return Tr::tr("Self Time in Percent");
case MainMinTime: return tr("Shortest Time"); case MainMinTime: return Tr::tr("Shortest Time");
case MainTimeInPercent: return tr("Time in Percent"); case MainTimeInPercent: return Tr::tr("Time in Percent");
case MainTotalTime: return tr("Total Time"); case MainTotalTime: return Tr::tr("Total Time");
case MainType: return tr("Type"); case MainType: return Tr::tr("Type");
case MainMedianTime: return tr("Median Time"); case MainMedianTime: return Tr::tr("Median Time");
case MaxMainField: case MaxMainField:
default: QTC_ASSERT(false, return QString()); default: QTC_ASSERT(false, return QString());
} }
@@ -560,7 +561,7 @@ QVariant QmlProfilerStatisticsRelativesModel::dataForMainEntry(qint64 totalDurat
case RelativeLocation: return "<program>"; case RelativeLocation: return "<program>";
case RelativeTotalTime: return Timeline::formatTime(totalDuration); case RelativeTotalTime: return Timeline::formatTime(totalDuration);
case RelativeCallCount: return 1; case RelativeCallCount: return 1;
case RelativeDetails: return tr("Main Program"); case RelativeDetails: return Tr::tr("Main Program");
} }
} }
return QVariant(); return QVariant();
@@ -598,7 +599,7 @@ QVariant QmlProfilerStatisticsRelativesModel::data(const QModelIndex &index, int
case ColumnRole: case ColumnRole:
return type.location().column(); return type.location().column();
case Qt::ToolTipRole: case Qt::ToolTipRole:
return stats.isRecursive ? tr("called recursively") : QString(); return stats.isRecursive ? Tr::tr("called recursively") : QString();
case Qt::ForegroundRole: case Qt::ForegroundRole:
return stats.isRecursive return stats.isRecursive
? Utils::creatorTheme()->color(Utils::Theme::Timeline_HighlightColor) ? Utils::creatorTheme()->color(Utils::Theme::Timeline_HighlightColor)
@@ -617,7 +618,7 @@ QVariant QmlProfilerStatisticsRelativesModel::data(const QModelIndex &index, int
case Qt::DisplayRole: case Qt::DisplayRole:
switch (index.column()) { switch (index.column()) {
case RelativeLocation: case RelativeLocation:
return type.displayName().isEmpty() ? tr("<bytecode>") : type.displayName(); return type.displayName().isEmpty() ? Tr::tr("<bytecode>") : type.displayName();
case RelativeType: case RelativeType:
return nameForType(type.rangeType()); return nameForType(type.rangeType());
case RelativeTotalTime: case RelativeTotalTime:
@@ -625,7 +626,7 @@ QVariant QmlProfilerStatisticsRelativesModel::data(const QModelIndex &index, int
case RelativeCallCount: case RelativeCallCount:
return stats.calls; return stats.calls;
case RelativeDetails: case RelativeDetails:
return type.data().isEmpty() ? tr("Source code not available") return type.data().isEmpty() ? Tr::tr("Source code not available")
: type.data(); : type.data();
default: default:
QTC_CHECK(false); QTC_CHECK(false);
@@ -644,16 +645,16 @@ QVariant QmlProfilerStatisticsRelativesModel::headerData(int section, Qt::Orient
switch (section) { switch (section) {
case RelativeLocation: case RelativeLocation:
return m_relation == QmlProfilerStatisticsCallees ? tr("Callee") : tr("Caller"); return m_relation == QmlProfilerStatisticsCallees ? Tr::tr("Callee") : Tr::tr("Caller");
case RelativeType: case RelativeType:
return tr("Type"); return Tr::tr("Type");
case RelativeTotalTime: case RelativeTotalTime:
return tr("Total Time"); return Tr::tr("Total Time");
case RelativeCallCount: case RelativeCallCount:
return tr("Calls"); return Tr::tr("Calls");
case RelativeDetails: case RelativeDetails:
return m_relation == QmlProfilerStatisticsCallees ? tr("Callee Description") return m_relation == QmlProfilerStatisticsCallees ? Tr::tr("Callee Description")
: tr("Caller Description"); : Tr::tr("Caller Description");
case MaxRelativeField: case MaxRelativeField:
default: default:
QTC_ASSERT(false, return QString()); QTC_ASSERT(false, return QString());

View File

@@ -3,6 +3,7 @@
#include "qmlprofilerstatisticsview.h" #include "qmlprofilerstatisticsview.h"
#include "qmlprofilertool.h" #include "qmlprofilertool.h"
#include "qmlprofilertr.h"
#include <coreplugin/minisplitter.h> #include <coreplugin/minisplitter.h>
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
@@ -46,7 +47,7 @@ QmlProfilerStatisticsView::QmlProfilerStatisticsView(QmlProfilerModelManager *pr
: QmlProfilerEventsView(parent) : QmlProfilerEventsView(parent)
{ {
setObjectName(QLatin1String("QmlProfiler.Statistics.Dock")); setObjectName(QLatin1String("QmlProfiler.Statistics.Dock"));
setWindowTitle(tr("Statistics")); setWindowTitle(Tr::tr("Statistics"));
auto model = new QmlProfilerStatisticsModel(profilerModelManager); auto model = new QmlProfilerStatisticsModel(profilerModelManager);
m_mainView.reset(new QmlProfilerStatisticsMainView(model)); m_mainView.reset(new QmlProfilerStatisticsMainView(model));
@@ -122,16 +123,16 @@ void QmlProfilerStatisticsView::contextMenuEvent(QContextMenuEvent *ev)
if (mouseOnTable(position)) { if (mouseOnTable(position)) {
menu.addSeparator(); menu.addSeparator();
if (m_mainView->selectedModelIndex().isValid()) if (m_mainView->selectedModelIndex().isValid())
copyRowAction = menu.addAction(tr("Copy Row")); copyRowAction = menu.addAction(Tr::tr("Copy Row"));
copyTableAction = menu.addAction(tr("Copy Table")); copyTableAction = menu.addAction(Tr::tr("Copy Table"));
showExtendedStatsAction = menu.addAction(tr("Extended Event Statistics")); showExtendedStatsAction = menu.addAction(Tr::tr("Extended Event Statistics"));
showExtendedStatsAction->setCheckable(true); showExtendedStatsAction->setCheckable(true);
showExtendedStatsAction->setChecked(m_mainView->showExtendedStatistics()); showExtendedStatsAction->setChecked(m_mainView->showExtendedStatistics());
} }
menu.addSeparator(); menu.addSeparator();
getGlobalStatsAction = menu.addAction(tr("Show Full Range")); getGlobalStatsAction = menu.addAction(Tr::tr("Show Full Range"));
if (!m_mainView->isRestrictedToRange()) if (!m_mainView->isRestrictedToRange())
getGlobalStatsAction->setEnabled(false); getGlobalStatsAction->setEnabled(false);

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilertimelinemodel.h" #include "qmlprofilertimelinemodel.h"
#include "qmlprofilertr.h"
namespace QmlProfiler { namespace QmlProfiler {
@@ -12,7 +13,7 @@ QmlProfilerTimelineModel::QmlProfilerTimelineModel(QmlProfilerModelManager *mode
TimelineModel(parent), m_message(message), m_rangeType(rangeType), m_mainFeature(mainFeature), TimelineModel(parent), m_message(message), m_rangeType(rangeType), m_mainFeature(mainFeature),
m_modelManager(modelManager) m_modelManager(modelManager)
{ {
setDisplayName(tr(QmlProfilerModelManager::featureName(mainFeature))); setDisplayName(Tr::tr(QmlProfilerModelManager::featureName(mainFeature)));
connect(modelManager, &QmlProfilerModelManager::typeDetailsFinished, connect(modelManager, &QmlProfilerModelManager::typeDetailsFinished,
this, &Timeline::TimelineModel::labelsChanged); this, &Timeline::TimelineModel::labelsChanged);
connect(modelManager, &QmlProfilerModelManager::typeDetailsFinished, connect(modelManager, &QmlProfilerModelManager::typeDetailsFinished,

View File

@@ -1,18 +1,19 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilertool.h"
#include "qmlprofilerstatemanager.h"
#include "qmlprofilerruncontrol.h"
#include "qmlprofilerconstants.h"
#include "qmlprofilerattachdialog.h" #include "qmlprofilerattachdialog.h"
#include "qmlprofilerviewmanager.h"
#include "qmlprofilerclientmanager.h" #include "qmlprofilerclientmanager.h"
#include "qmlprofilerconstants.h"
#include "qmlprofilermodelmanager.h" #include "qmlprofilermodelmanager.h"
#include "qmlprofilerrunconfigurationaspect.h"
#include "qmlprofilersettings.h"
#include "qmlprofilerplugin.h" #include "qmlprofilerplugin.h"
#include "qmlprofilerrunconfigurationaspect.h"
#include "qmlprofilerruncontrol.h"
#include "qmlprofilersettings.h"
#include "qmlprofilerstatemanager.h"
#include "qmlprofilertextmark.h" #include "qmlprofilertextmark.h"
#include "qmlprofilertool.h"
#include "qmlprofilertr.h"
#include "qmlprofilerviewmanager.h"
#include <app/app_version.h> #include <app/app_version.h>
@@ -170,7 +171,7 @@ QmlProfilerTool::QmlProfilerTool()
d->m_clearButton = new QToolButton; d->m_clearButton = new QToolButton;
d->m_clearButton->setIcon(Utils::Icons::CLEAN_TOOLBAR.icon()); d->m_clearButton->setIcon(Utils::Icons::CLEAN_TOOLBAR.icon());
d->m_clearButton->setToolTip(tr("Discard data")); d->m_clearButton->setToolTip(Tr::tr("Discard data"));
connect(d->m_clearButton, &QAbstractButton::clicked, [this](){ connect(d->m_clearButton, &QAbstractButton::clicked, [this](){
if (checkForUnsavedNotes()) if (checkForUnsavedNotes())
@@ -179,7 +180,7 @@ QmlProfilerTool::QmlProfilerTool()
d->m_searchButton = new QToolButton; d->m_searchButton = new QToolButton;
d->m_searchButton->setIcon(Utils::Icons::ZOOM_TOOLBAR.icon()); d->m_searchButton->setIcon(Utils::Icons::ZOOM_TOOLBAR.icon());
d->m_searchButton->setToolTip(tr("Search timeline event notes.")); d->m_searchButton->setToolTip(Tr::tr("Search timeline event notes."));
d->m_searchButton->setEnabled(false); d->m_searchButton->setEnabled(false);
connect(d->m_searchButton, &QToolButton::clicked, this, &QmlProfilerTool::showTimeLineSearch); connect(d->m_searchButton, &QToolButton::clicked, this, &QmlProfilerTool::showTimeLineSearch);
@@ -189,7 +190,7 @@ QmlProfilerTool::QmlProfilerTool()
d->m_displayFeaturesButton = new QToolButton; d->m_displayFeaturesButton = new QToolButton;
d->m_displayFeaturesButton->setIcon(Utils::Icons::FILTER.icon()); d->m_displayFeaturesButton->setIcon(Utils::Icons::FILTER.icon());
d->m_displayFeaturesButton->setToolTip(tr("Hide or show event categories.")); d->m_displayFeaturesButton->setToolTip(Tr::tr("Hide or show event categories."));
d->m_displayFeaturesButton->setPopupMode(QToolButton::InstantPopup); d->m_displayFeaturesButton->setPopupMode(QToolButton::InstantPopup);
d->m_displayFeaturesButton->setProperty("noArrow", true); d->m_displayFeaturesButton->setProperty("noArrow", true);
d->m_displayFeaturesMenu = new QMenu(d->m_displayFeaturesButton); d->m_displayFeaturesMenu = new QMenu(d->m_displayFeaturesButton);
@@ -245,7 +246,7 @@ QmlProfilerTool::QmlProfilerTool()
const static QIcon recordOff = Debugger::Icons::RECORD_OFF.icon(); const static QIcon recordOff = Debugger::Icons::RECORD_OFF.icon();
// update display // update display
d->m_recordButton->setToolTip(recording ? tr("Disable Profiling") : tr("Enable Profiling")); d->m_recordButton->setToolTip(recording ? Tr::tr("Disable Profiling") : Tr::tr("Enable Profiling"));
d->m_recordButton->setIcon(recording ? recordOn : recordOff); d->m_recordButton->setIcon(recording ? recordOn : recordOff);
d->m_recordButton->setChecked(recording); d->m_recordButton->setChecked(recording);
}; };
@@ -275,10 +276,10 @@ void QmlProfilerTool::updateRunActions()
{ {
if (d->m_toolBusy) { if (d->m_toolBusy) {
d->m_startAction->setEnabled(false); d->m_startAction->setEnabled(false);
d->m_startAction->setToolTip(tr("A QML Profiler analysis is still in progress.")); d->m_startAction->setToolTip(Tr::tr("A QML Profiler analysis is still in progress."));
d->m_stopAction->setEnabled(true); d->m_stopAction->setEnabled(true);
} else { } else {
QString tooltip = tr("Start QML Profiler analysis."); QString tooltip = Tr::tr("Start QML Profiler analysis.");
bool canRun = ProjectExplorerPlugin::canRunStartupProject bool canRun = ProjectExplorerPlugin::canRunStartupProject
(ProjectExplorer::Constants::QML_PROFILER_RUN_MODE, &tooltip); (ProjectExplorer::Constants::QML_PROFILER_RUN_MODE, &tooltip);
d->m_startAction->setToolTip(tooltip); d->m_startAction->setToolTip(tooltip);
@@ -306,7 +307,7 @@ void QmlProfilerTool::finalizeRunControl(QmlProfilerRunner *runWorker)
// If we're still trying to connect, stop now. // If we're still trying to connect, stop now.
if (d->m_profilerConnections->isConnecting()) { if (d->m_profilerConnections->isConnecting()) {
showNonmodalWarning(tr("The application finished before a connection could be " showNonmodalWarning(Tr::tr("The application finished before a connection could be "
"established. No data was loaded.")); "established. No data was loaded."));
} }
d->m_profilerConnections->disconnectFromServer(); d->m_profilerConnections->disconnectFromServer();
@@ -338,9 +339,9 @@ void QmlProfilerTool::finalizeRunControl(QmlProfilerRunner *runWorker)
const int interval = d->m_profilerConnections->retryInterval(); const int interval = d->m_profilerConnections->retryInterval();
const int retries = d->m_profilerConnections->maximumRetries(); const int retries = d->m_profilerConnections->maximumRetries();
infoBox->setText(QmlProfilerTool::tr("Could not connect to the in-process QML profiler " infoBox->setText(Tr::tr("Could not connect to the in-process QML profiler "
"within %1 s.\n" "within %1 s.\n"
"Do you want to retry and wait %2 s?") "Do you want to retry and wait %2 s?")
.arg(interval * retries / 1000.0) .arg(interval * retries / 1000.0)
.arg(interval * 2 * retries / 1000.0)); .arg(interval * 2 * retries / 1000.0));
infoBox->setStandardButtons(QMessageBox::Retry | QMessageBox::Cancel | QMessageBox::Help); infoBox->setStandardButtons(QMessageBox::Retry | QMessageBox::Cancel | QMessageBox::Help);
@@ -359,7 +360,7 @@ void QmlProfilerTool::finalizeRunControl(QmlProfilerRunner *runWorker)
Q_FALLTHROUGH(); Q_FALLTHROUGH();
case QMessageBox::Cancel: case QMessageBox::Cancel:
// The actual error message has already been logged. // The actual error message has already been logged.
QmlProfilerTool::logState(QmlProfilerTool::tr("Failed to connect.")); QmlProfilerTool::logState(Tr::tr("Failed to connect."));
runWorker->cancelProcess(); runWorker->cancelProcess();
break; break;
} }
@@ -432,8 +433,8 @@ void QmlProfilerTool::updateTimeDisplay()
break; break;
} }
QString timeString = QString::number(seconds,'f',1); QString timeString = QString::number(seconds,'f',1);
QString profilerTimeStr = QmlProfilerTool::tr("%1 s").arg(timeString, 6); QString profilerTimeStr = Tr::tr("%1 s").arg(timeString, 6);
d->m_timeLabel->setText(tr("Elapsed: %1").arg(profilerTimeStr)); d->m_timeLabel->setText(Tr::tr("Elapsed: %1").arg(profilerTimeStr));
} }
void QmlProfilerTool::showTimeLineSearch() void QmlProfilerTool::showTimeLineSearch()
@@ -560,7 +561,7 @@ void QmlProfilerTool::showErrorDialog(const QString &error)
{ {
auto errorDialog = new QMessageBox(ICore::dialogParent()); auto errorDialog = new QMessageBox(ICore::dialogParent());
errorDialog->setIcon(QMessageBox::Warning); errorDialog->setIcon(QMessageBox::Warning);
errorDialog->setWindowTitle(tr("QML Profiler")); errorDialog->setWindowTitle(Tr::tr("QML Profiler"));
errorDialog->setText(error); errorDialog->setText(error);
errorDialog->setStandardButtons(QMessageBox::Ok); errorDialog->setStandardButtons(QMessageBox::Ok);
errorDialog->setDefaultButton(QMessageBox::Ok); errorDialog->setDefaultButton(QMessageBox::Ok);
@@ -582,16 +583,16 @@ void QmlProfilerTool::showSaveDialog()
QLatin1String tFile(QtdFileExtension); QLatin1String tFile(QtdFileExtension);
QLatin1String zFile(QztFileExtension); QLatin1String zFile(QztFileExtension);
FilePath filePath = FileUtils::getSaveFilePath( FilePath filePath = FileUtils::getSaveFilePath(
nullptr, tr("Save QML Trace"), nullptr, Tr::tr("Save QML Trace"),
QmlProfilerPlugin::globalSettings()->lastTraceFile.filePath(), QmlProfilerPlugin::globalSettings()->lastTraceFile.filePath(),
tr("QML traces (*%1 *%2)").arg(zFile).arg(tFile)); Tr::tr("QML traces (*%1 *%2)").arg(zFile).arg(tFile));
if (!filePath.isEmpty()) { if (!filePath.isEmpty()) {
if (!filePath.endsWith(zFile) && !filePath.endsWith(tFile)) if (!filePath.endsWith(zFile) && !filePath.endsWith(tFile))
filePath = filePath + zFile; filePath = filePath + zFile;
saveLastTraceFile(filePath); saveLastTraceFile(filePath);
Debugger::enableMainWindow(false); Debugger::enableMainWindow(false);
Core::ProgressManager::addTask(d->m_profilerModelManager->save(filePath.toString()), Core::ProgressManager::addTask(d->m_profilerModelManager->save(filePath.toString()),
tr("Saving Trace Data"), TASK_SAVE, Tr::tr("Saving Trace Data"), TASK_SAVE,
Core::ProgressManager::ShowInApplicationIcon); Core::ProgressManager::ShowInApplicationIcon);
} }
} }
@@ -606,9 +607,9 @@ void QmlProfilerTool::showLoadDialog()
QLatin1String tFile(QtdFileExtension); QLatin1String tFile(QtdFileExtension);
QLatin1String zFile(QztFileExtension); QLatin1String zFile(QztFileExtension);
FilePath filePath = FileUtils::getOpenFilePath( FilePath filePath = FileUtils::getOpenFilePath(
nullptr, tr("Load QML Trace"), nullptr, Tr::tr("Load QML Trace"),
QmlProfilerPlugin::globalSettings()->lastTraceFile.filePath(), QmlProfilerPlugin::globalSettings()->lastTraceFile.filePath(),
tr("QML traces (*%1 *%2)").arg(zFile).arg(tFile)); Tr::tr("QML traces (*%1 *%2)").arg(zFile).arg(tFile));
if (!filePath.isEmpty()) { if (!filePath.isEmpty()) {
saveLastTraceFile(filePath); saveLastTraceFile(filePath);
@@ -617,7 +618,7 @@ void QmlProfilerTool::showLoadDialog()
this, &QmlProfilerTool::setRecordedFeatures); this, &QmlProfilerTool::setRecordedFeatures);
d->m_profilerModelManager->populateFileFinder(); d->m_profilerModelManager->populateFileFinder();
Core::ProgressManager::addTask(d->m_profilerModelManager->load(filePath.toString()), Core::ProgressManager::addTask(d->m_profilerModelManager->load(filePath.toString()),
tr("Loading Trace Data"), TASK_LOAD); Tr::tr("Loading Trace Data"), TASK_LOAD);
} }
} }
@@ -656,8 +657,8 @@ bool QmlProfilerTool::checkForUnsavedNotes()
{ {
if (!d->m_profilerModelManager->notesModel()->isModified()) if (!d->m_profilerModelManager->notesModel()->isModified())
return true; return true;
return QMessageBox::warning(QApplication::activeWindow(), tr("QML Profiler"), return QMessageBox::warning(QApplication::activeWindow(), Tr::tr("QML Profiler"),
tr("You are about to discard the profiling data, including unsaved " Tr::tr("You are about to discard the profiling data, including unsaved "
"notes. Do you want to continue?"), "notes. Do you want to continue?"),
QMessageBox::Yes, QMessageBox::No) == QMessageBox::Yes; QMessageBox::Yes, QMessageBox::No) == QMessageBox::Yes;
} }
@@ -670,7 +671,7 @@ void QmlProfilerTool::clientsDisconnected()
} else if (d->m_profilerState->serverRecording()) { } else if (d->m_profilerState->serverRecording()) {
// If the application stopped by itself, check if we have all the data // If the application stopped by itself, check if we have all the data
if (d->m_profilerState->currentState() != QmlProfilerStateManager::AppStopRequested) { if (d->m_profilerState->currentState() != QmlProfilerStateManager::AppStopRequested) {
showNonmodalWarning(tr("Application finished before loading profiled data.\n" showNonmodalWarning(Tr::tr("Application finished before loading profiled data.\n"
"Please use the stop button instead.")); "Please use the stop button instead."));
} }
} }
@@ -687,7 +688,7 @@ void QmlProfilerTool::clientsDisconnected()
void addFeatureToMenu(QMenu *menu, ProfileFeature feature, quint64 enabledFeatures) void addFeatureToMenu(QMenu *menu, ProfileFeature feature, quint64 enabledFeatures)
{ {
QAction *action = QAction *action =
menu->addAction(QmlProfilerTool::tr(QmlProfilerModelManager::featureName(feature))); menu->addAction(Tr::tr(QmlProfilerModelManager::featureName(feature)));
action->setCheckable(true); action->setCheckable(true);
action->setData(static_cast<uint>(feature)); action->setData(static_cast<uint>(feature));
action->setChecked(enabledFeatures & (1ULL << (feature))); action->setChecked(enabledFeatures & (1ULL << (feature)));
@@ -754,7 +755,7 @@ void QmlProfilerTool::showNonmodalWarning(const QString &warningMsg)
{ {
auto noExecWarning = new QMessageBox(ICore::dialogParent()); auto noExecWarning = new QMessageBox(ICore::dialogParent());
noExecWarning->setIcon(QMessageBox::Warning); noExecWarning->setIcon(QMessageBox::Warning);
noExecWarning->setWindowTitle(tr("QML Profiler")); noExecWarning->setWindowTitle(Tr::tr("QML Profiler"));
noExecWarning->setText(warningMsg); noExecWarning->setText(warningMsg);
noExecWarning->setStandardButtons(QMessageBox::Ok); noExecWarning->setStandardButtons(QMessageBox::Ok);
noExecWarning->setDefaultButton(QMessageBox::Ok); noExecWarning->setDefaultButton(QMessageBox::Ok);
@@ -814,8 +815,8 @@ void QmlProfilerTool::serverRecordingChanged()
// We cannot stop it here, so we cannot give the usual yes/no dialog. Show a dialog // We cannot stop it here, so we cannot give the usual yes/no dialog. Show a dialog
// offering to immediately save the data instead. // offering to immediately save the data instead.
if (d->m_profilerModelManager->notesModel()->isModified() && if (d->m_profilerModelManager->notesModel()->isModified() &&
QMessageBox::warning(QApplication::activeWindow(), tr("QML Profiler"), QMessageBox::warning(QApplication::activeWindow(), Tr::tr("QML Profiler"),
tr("Starting a new profiling session will discard the " Tr::tr("Starting a new profiling session will discard the "
"previous data, including unsaved notes.\nDo you want " "previous data, including unsaved notes.\nDo you want "
"to save the data first?"), "to save the data first?"),
QMessageBox::Save, QMessageBox::Discard) == QMessageBox::Save, QMessageBox::Discard) ==

View File

@@ -1,9 +1,10 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilertracefile.h"
#include "qmlprofilernotesmodel.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include "qmlprofilernotesmodel.h"
#include "qmlprofilertr.h"
#include "qmlprofilertracefile.h"
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
@@ -169,7 +170,7 @@ void QmlProfilerTraceFile::loadQtd(QIODevice *device)
} }
if (stream.hasError()) if (stream.hasError())
fail(tr("Error while parsing trace data file: %1").arg(stream.errorString())); fail(Tr::tr("Error while parsing trace data file: %1").arg(stream.errorString()));
else else
finish(); finish();
} }
@@ -182,7 +183,7 @@ void QmlProfilerTraceFile::loadQzt(QIODevice *device)
QByteArray magic; QByteArray magic;
stream >> magic; stream >> magic;
if (magic != QByteArray("QMLPROFILER")) { if (magic != QByteArray("QMLPROFILER")) {
fail(tr("Invalid magic: %1").arg(QLatin1String(magic))); fail(Tr::tr("Invalid magic: %1").arg(QLatin1String(magic)));
return; return;
} }
@@ -190,7 +191,7 @@ void QmlProfilerTraceFile::loadQzt(QIODevice *device)
stream >> dataStreamVersion; stream >> dataStreamVersion;
if (dataStreamVersion > QDataStream::Qt_DefaultCompiledVersion) { if (dataStreamVersion > QDataStream::Qt_DefaultCompiledVersion) {
fail(tr("Unknown data stream version: %1").arg(dataStreamVersion)); fail(Tr::tr("Unknown data stream version: %1").arg(dataStreamVersion));
return; return;
} }
stream.setVersion(dataStreamVersion); stream.setVersion(dataStreamVersion);
@@ -214,7 +215,7 @@ void QmlProfilerTraceFile::loadQzt(QIODevice *device)
quint32 numEventTypes; quint32 numEventTypes;
bufferStream >> numEventTypes; bufferStream >> numEventTypes;
if (numEventTypes > quint32(std::numeric_limits<int>::max())) { if (numEventTypes > quint32(std::numeric_limits<int>::max())) {
fail(tr("Excessive number of event types: %1").arg(numEventTypes)); fail(Tr::tr("Excessive number of event types: %1").arg(numEventTypes));
return; return;
} }
@@ -247,7 +248,7 @@ void QmlProfilerTraceFile::loadQzt(QIODevice *device)
bufferStream >> event; bufferStream >> event;
if (bufferStream.status() == QDataStream::Ok) { if (bufferStream.status() == QDataStream::Ok) {
if (event.typeIndex() >= traceManager()->numEventTypes()) { if (event.typeIndex() >= traceManager()->numEventTypes()) {
fail(tr("Invalid type index %1").arg(event.typeIndex())); fail(Tr::tr("Invalid type index %1").arg(event.typeIndex()));
return; return;
} }
addFeature(manager->eventType(event.typeIndex()).feature()); addFeature(manager->eventType(event.typeIndex()).feature());
@@ -256,7 +257,7 @@ void QmlProfilerTraceFile::loadQzt(QIODevice *device)
} else if (bufferStream.status() == QDataStream::ReadPastEnd) { } else if (bufferStream.status() == QDataStream::ReadPastEnd) {
break; // Apparently EOF is a character so we end up here after the last event. break; // Apparently EOF is a character so we end up here after the last event.
} else if (bufferStream.status() == QDataStream::ReadCorruptData) { } else if (bufferStream.status() == QDataStream::ReadCorruptData) {
fail(tr("Corrupt data before position %1.").arg(device->pos())); fail(Tr::tr("Corrupt data before position %1.").arg(device->pos()));
return; return;
} else { } else {
Q_UNREACHABLE(); Q_UNREACHABLE();
@@ -766,9 +767,9 @@ void QmlProfilerTraceFile::saveQtd(QIODevice *device)
stream.writeEndDocument(); stream.writeEndDocument();
if (stream.hasError()) if (stream.hasError())
fail(tr("Error writing trace file.")); fail(Tr::tr("Error writing trace file."));
}, [this](const QString &message) { }, [this](const QString &message) {
fail(tr("Could not re-read events from temporary trace file: %1\nSaving failed.") fail(Tr::tr("Could not re-read events from temporary trace file: %1\nSaving failed.")
.arg(message)); .arg(message));
}, future()); }, future());
} }
@@ -836,7 +837,7 @@ void QmlProfilerTraceFile::saveQzt(QIODevice *device)
addEventsProgress(traceEnd() - lastProgressTimestamp); addEventsProgress(traceEnd() - lastProgressTimestamp);
} }
}, [this](const QString &message) { }, [this](const QString &message) {
fail(tr("Could not re-read events from temporary trace file: %1\nSaving failed.") fail(Tr::tr("Could not re-read events from temporary trace file: %1\nSaving failed.")
.arg(message)); .arg(message));
}, future()); }, future());
} }

View File

@@ -1,14 +1,15 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilertraceview.h" #include "qmlprofileranimationsmodel.h"
#include "qmlprofilertool.h"
#include "qmlprofilerstatemanager.h"
#include "qmlprofilermodelmanager.h" #include "qmlprofilermodelmanager.h"
#include "qmlprofilernotesmodel.h" #include "qmlprofilernotesmodel.h"
#include "qmlprofileranimationsmodel.h"
#include "qmlprofilerrangemodel.h"
#include "qmlprofilerplugin.h" #include "qmlprofilerplugin.h"
#include "qmlprofilerrangemodel.h"
#include "qmlprofilerstatemanager.h"
#include "qmlprofilertool.h"
#include "qmlprofilertr.h"
#include "qmlprofilertraceview.h"
#include "quick3dmodel.h" #include "quick3dmodel.h"
#include "inputeventsmodel.h" #include "inputeventsmodel.h"
@@ -70,7 +71,7 @@ QmlProfilerTraceView::QmlProfilerTraceView(QWidget *parent, QmlProfilerViewManag
QmlProfilerModelManager *modelManager) QmlProfilerModelManager *modelManager)
: QWidget(parent), d(new QmlProfilerTraceViewPrivate(this)) : QWidget(parent), d(new QmlProfilerTraceViewPrivate(this))
{ {
setWindowTitle(tr("Timeline")); setWindowTitle(Tr::tr("Timeline"));
setObjectName("QmlProfiler.Timeline.Dock"); setObjectName("QmlProfiler.Timeline.Dock");
d->m_zoomControl = new Timeline::TimelineZoomControl(this); d->m_zoomControl = new Timeline::TimelineZoomControl(this);
@@ -238,17 +239,17 @@ void QmlProfilerTraceView::showContextMenu(QPoint position)
menu.addActions(QmlProfilerTool::profilerContextMenuActions()); menu.addActions(QmlProfilerTool::profilerContextMenuActions());
menu.addSeparator(); menu.addSeparator();
QAction *getLocalStatsAction = menu.addAction(tr("Analyze Current Range")); QAction *getLocalStatsAction = menu.addAction(Tr::tr("Analyze Current Range"));
if (!hasValidSelection()) if (!hasValidSelection())
getLocalStatsAction->setEnabled(false); getLocalStatsAction->setEnabled(false);
QAction *getGlobalStatsAction = menu.addAction(tr("Analyze Full Range")); QAction *getGlobalStatsAction = menu.addAction(Tr::tr("Analyze Full Range"));
if (!d->m_modelManager->isRestrictedToRange()) if (!d->m_modelManager->isRestrictedToRange())
getGlobalStatsAction->setEnabled(false); getGlobalStatsAction->setEnabled(false);
if (d->m_zoomControl->traceDuration() > 0) { if (d->m_zoomControl->traceDuration() > 0) {
menu.addSeparator(); menu.addSeparator();
viewAllAction = menu.addAction(tr("Reset Zoom")); viewAllAction = menu.addAction(Tr::tr("Reset Zoom"));
} }
QAction *selectedAction = menu.exec(position); QAction *selectedAction = menu.exec(position);

View File

@@ -1,10 +1,10 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilerviewmanager.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include "qmlprofilerstatewidget.h" #include "qmlprofilerstatewidget.h"
#include "qmlprofilertr.h"
#include "qmlprofilerviewmanager.h"
#include <debugger/analyzer/analyzermanager.h> #include <debugger/analyzer/analyzermanager.h>
@@ -32,7 +32,7 @@ QmlProfilerViewManager::QmlProfilerViewManager(QObject *parent,
QTC_ASSERT(m_profilerModelManager, return); QTC_ASSERT(m_profilerModelManager, return);
QTC_ASSERT(m_profilerState, return); QTC_ASSERT(m_profilerState, return);
m_perspective = new Perspective(Constants::QmlProfilerPerspectiveId, tr("QML Profiler")); m_perspective = new Perspective(Constants::QmlProfilerPerspectiveId, Tr::tr("QML Profiler"));
m_perspective->setAboutToActivateCallback([this]() { createViews(); }); m_perspective->setAboutToActivateCallback([this]() { createViews(); });
} }

View File

@@ -1,10 +1,11 @@
// Copyright (C) 2022 The Qt Company Ltd. // Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "quick3dmodel.h"
#include "qmlprofilerconstants.h" #include "qmlprofilerconstants.h"
#include <tracing/timelineformattime.h> #include "qmlprofilertr.h"
#include "quick3dmodel.h"
#include <tracing/timelineformattime.h>
namespace QmlProfiler { namespace QmlProfiler {
namespace Internal { namespace Internal {
@@ -22,43 +23,43 @@ QRgb Quick3DModel::color(int index) const
} }
static const char *messageTypes[] = { static const char *messageTypes[] = {
QT_TRANSLATE_NOOP("Quick3DModel", "Render Frame"), QT_TRANSLATE_NOOP("QmlProfiler", "Render Frame"),
QT_TRANSLATE_NOOP("Quick3DModel", "Synchronize Frame"), QT_TRANSLATE_NOOP("QmlProfiler", "Synchronize Frame"),
QT_TRANSLATE_NOOP("Quick3DModel", "Prepare Frame"), QT_TRANSLATE_NOOP("QmlProfiler", "Prepare Frame"),
QT_TRANSLATE_NOOP("Quick3DModel", "Mesh Load"), QT_TRANSLATE_NOOP("QmlProfiler", "Mesh Load"),
QT_TRANSLATE_NOOP("Quick3DModel", "Custom Mesh Load"), QT_TRANSLATE_NOOP("QmlProfiler", "Custom Mesh Load"),
QT_TRANSLATE_NOOP("Quick3DModel", "Texture Load"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Load"),
QT_TRANSLATE_NOOP("Quick3DModel", "Generate Shader"), QT_TRANSLATE_NOOP("QmlProfiler", "Generate Shader"),
QT_TRANSLATE_NOOP("Quick3DModel", "Load Shader"), QT_TRANSLATE_NOOP("QmlProfiler", "Load Shader"),
QT_TRANSLATE_NOOP("Quick3DModel", "Particle Update"), QT_TRANSLATE_NOOP("QmlProfiler", "Particle Update"),
QT_TRANSLATE_NOOP("Quick3DModel", "Mesh Memory consumption"), QT_TRANSLATE_NOOP("QmlProfiler", "Mesh Memory consumption"),
QT_TRANSLATE_NOOP("Quick3DModel", "Texture Memory consumption"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Memory consumption"),
}; };
static const char *unloadMessageTypes[] = { static const char *unloadMessageTypes[] = {
QT_TRANSLATE_NOOP("Quick3DModel", "Mesh Unload"), QT_TRANSLATE_NOOP("QmlProfiler", "Mesh Unload"),
QT_TRANSLATE_NOOP("Quick3DModel", "Custom Mesh Unload"), QT_TRANSLATE_NOOP("QmlProfiler", "Custom Mesh Unload"),
QT_TRANSLATE_NOOP("Quick3DModel", "Texture Unload"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Unload"),
}; };
QString Quick3DModel::messageType(uint i) QString Quick3DModel::messageType(uint i)
{ {
return i < sizeof(messageTypes) / sizeof(char *) ? tr(messageTypes[i]) : return i < sizeof(messageTypes) / sizeof(char *) ? Tr::tr(messageTypes[i]) :
tr("Unknown Message %1").arg(i); Tr::tr("Unknown Message %1").arg(i);
} }
QString Quick3DModel::unloadMessageType(uint i) QString Quick3DModel::unloadMessageType(uint i)
{ {
switch (i) { switch (i) {
case MeshLoad: case MeshLoad:
return tr(unloadMessageTypes[0]); return Tr::tr(unloadMessageTypes[0]);
case CustomMeshLoad: case CustomMeshLoad:
return tr(unloadMessageTypes[1]); return Tr::tr(unloadMessageTypes[1]);
case TextureLoad: case TextureLoad:
return tr(unloadMessageTypes[2]); return Tr::tr(unloadMessageTypes[2]);
} }
return tr("Unknown Unload Message %1").arg(i); return Tr::tr("Unknown Unload Message %1").arg(i);
} }
QVariantList Quick3DModel::labels() const QVariantList Quick3DModel::labels() const
@@ -67,7 +68,7 @@ QVariantList Quick3DModel::labels() const
for (int i = 0; i <= m_maximumMsgType; ++i) { for (int i = 0; i <= m_maximumMsgType; ++i) {
QVariantMap element; QVariantMap element;
element.insert(QLatin1String("displayName"), element.insert(QLatin1String("displayName"),
i != ParticleUpdate ? tr("Render Thread") : tr("GUI Thread")); i != ParticleUpdate ? Tr::tr("Render Thread") : Tr::tr("GUI Thread"));
element.insert(QLatin1String("description"), messageType(i)); element.insert(QLatin1String("description"), messageType(i));
element.insert(QLatin1String("id"), i); element.insert(QLatin1String("id"), i);
result << element; result << element;
@@ -101,22 +102,22 @@ QVariantMap Quick3DModel::details(int index) const
bool unload = m_data[index].unload; bool unload = m_data[index].unload;
QVariantMap result; QVariantMap result;
result.insert(QLatin1String("displayName"), result.insert(QLatin1String("displayName"),
detailType != ParticleUpdate ? tr("Render Thread") : tr("GUI Thread")); detailType != ParticleUpdate ? Tr::tr("Render Thread") : Tr::tr("GUI Thread"));
result.insert(tr("Description"), result.insert(Tr::tr("Description"),
!unload ? messageType(detailType) : unloadMessageType(detailType)); !unload ? messageType(detailType) : unloadMessageType(detailType));
if (detailType < MeshMemoryConsumption) if (detailType < MeshMemoryConsumption)
result.insert(tr("Duration"), Timeline::formatTime(duration(index))); result.insert(Tr::tr("Duration"), Timeline::formatTime(duration(index)));
if (detailType == ParticleUpdate) if (detailType == ParticleUpdate)
result.insert(tr("Count"), m_data[index].data); result.insert(Tr::tr("Count"), m_data[index].data);
if (detailType == RenderFrame) { if (detailType == RenderFrame) {
quint32 calls = m_data[index].data & 0xffffffff; quint32 calls = m_data[index].data & 0xffffffff;
quint32 passes = m_data[index].data >> 32; quint32 passes = m_data[index].data >> 32;
result.insert(tr("Draw Calls"), calls); result.insert(Tr::tr("Draw Calls"), calls);
result.insert(tr("Render Passes"), passes); result.insert(Tr::tr("Render Passes"), passes);
} }
if ((detailType >= MeshLoad && detailType <= TextureLoad) if ((detailType >= MeshLoad && detailType <= TextureLoad)
|| (detailType >= MeshMemoryConsumption && detailType <= TextureMemoryConsumption)) { || (detailType >= MeshMemoryConsumption && detailType <= TextureMemoryConsumption)) {
result.insert(tr("Total Memory Usage"), m_data[index].data); result.insert(Tr::tr("Total Memory Usage"), m_data[index].data);
} }
return result; return result;
} }

View File

@@ -1,9 +1,10 @@
// Copyright (C) 2016 The Qt Company Ltd. // Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "scenegraphtimelinemodel.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilereventtypes.h" #include "qmlprofilereventtypes.h"
#include "qmlprofilermodelmanager.h"
#include "qmlprofilertr.h"
#include "scenegraphtimelinemodel.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
@@ -14,32 +15,32 @@ namespace QmlProfiler {
namespace Internal { namespace Internal {
static const char *ThreadLabels[] = { static const char *ThreadLabels[] = {
QT_TRANSLATE_NOOP("MainView", "GUI Thread"), QT_TRANSLATE_NOOP("QmlProfiler", "GUI Thread"),
QT_TRANSLATE_NOOP("MainView", "Render Thread"), QT_TRANSLATE_NOOP("QmlProfiler", "Render Thread"),
QT_TRANSLATE_NOOP("MainView", "Render Thread Details") QT_TRANSLATE_NOOP("QmlProfiler", "Render Thread Details")
}; };
static const char *StageLabels[] = { static const char *StageLabels[] = {
QT_TRANSLATE_NOOP("MainView", "Polish"), QT_TRANSLATE_NOOP("QmlProfiler", "Polish"),
QT_TRANSLATE_NOOP("MainView", "Wait"), QT_TRANSLATE_NOOP("QmlProfiler", "Wait"),
QT_TRANSLATE_NOOP("MainView", "GUI Thread Sync"), QT_TRANSLATE_NOOP("QmlProfiler", "GUI Thread Sync"),
QT_TRANSLATE_NOOP("MainView", "Animations"), QT_TRANSLATE_NOOP("QmlProfiler", "Animations"),
QT_TRANSLATE_NOOP("MainView", "Render Thread Sync"), QT_TRANSLATE_NOOP("QmlProfiler", "Render Thread Sync"),
QT_TRANSLATE_NOOP("MainView", "Render"), QT_TRANSLATE_NOOP("QmlProfiler", "Render"),
QT_TRANSLATE_NOOP("MainView", "Swap"), QT_TRANSLATE_NOOP("QmlProfiler", "Swap"),
QT_TRANSLATE_NOOP("MainView", "Render Preprocess"), QT_TRANSLATE_NOOP("QmlProfiler", "Render Preprocess"),
QT_TRANSLATE_NOOP("MainView", "Render Update"), QT_TRANSLATE_NOOP("QmlProfiler", "Render Update"),
QT_TRANSLATE_NOOP("MainView", "Render Bind"), QT_TRANSLATE_NOOP("QmlProfiler", "Render Bind"),
QT_TRANSLATE_NOOP("MainView", "Render Render"), QT_TRANSLATE_NOOP("QmlProfiler", "Render Render"),
QT_TRANSLATE_NOOP("MainView", "Material Compile"), QT_TRANSLATE_NOOP("QmlProfiler", "Material Compile"),
QT_TRANSLATE_NOOP("MainView", "Glyph Render"), QT_TRANSLATE_NOOP("QmlProfiler", "Glyph Render"),
QT_TRANSLATE_NOOP("MainView", "Glyph Upload"), QT_TRANSLATE_NOOP("QmlProfiler", "Glyph Upload"),
QT_TRANSLATE_NOOP("MainView", "Texture Bind"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Bind"),
QT_TRANSLATE_NOOP("MainView", "Texture Convert"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Convert"),
QT_TRANSLATE_NOOP("MainView", "Texture Swizzle"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Swizzle"),
QT_TRANSLATE_NOOP("MainView", "Texture Upload"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Upload"),
QT_TRANSLATE_NOOP("MainView", "Texture Mipmap"), QT_TRANSLATE_NOOP("QmlProfiler", "Texture Mipmap"),
QT_TRANSLATE_NOOP("MainView", "Texture Delete") QT_TRANSLATE_NOOP("QmlProfiler", "Texture Delete")
}; };
enum SceneGraphCategoryType { enum SceneGraphCategoryType {
@@ -86,8 +87,8 @@ QVariantList SceneGraphTimelineModel::labels() const
for (SceneGraphStage i = MinimumSceneGraphStage; i < MaximumSceneGraphStage; for (SceneGraphStage i = MinimumSceneGraphStage; i < MaximumSceneGraphStage;
i = static_cast<SceneGraphStage>(i + 1)) { i = static_cast<SceneGraphStage>(i + 1)) {
QVariantMap element; QVariantMap element;
element.insert(QLatin1String("displayName"), tr(threadLabel(i))); element.insert(QLatin1String("displayName"), Tr::tr(threadLabel(i)));
element.insert(QLatin1String("description"), tr(StageLabels[i])); element.insert(QLatin1String("description"), Tr::tr(StageLabels[i]));
element.insert(QLatin1String("id"), i); element.insert(QLatin1String("id"), i);
result << element; result << element;
} }
@@ -100,13 +101,13 @@ QVariantMap SceneGraphTimelineModel::details(int index) const
QVariantMap result; QVariantMap result;
const SceneGraphStage stage = static_cast<SceneGraphStage>(selectionId(index)); const SceneGraphStage stage = static_cast<SceneGraphStage>(selectionId(index));
result.insert(QLatin1String("displayName"), tr(threadLabel(stage))); result.insert(QLatin1String("displayName"), Tr::tr(threadLabel(stage)));
result.insert(tr("Stage"), tr(StageLabels[stage])); result.insert(Tr::tr("Stage"), Tr::tr(StageLabels[stage]));
result.insert(tr("Duration"), Timeline::formatTime(duration(index))); result.insert(Tr::tr("Duration"), Timeline::formatTime(duration(index)));
const int glyphCount = m_data[index].glyphCount; const int glyphCount = m_data[index].glyphCount;
if (glyphCount >= 0) if (glyphCount >= 0)
result.insert(tr("Glyphs"), QString::number(glyphCount)); result.insert(Tr::tr("Glyphs"), QString::number(glyphCount));
return result; return result;
} }

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "debugmessagesmodel_test.h" #include "debugmessagesmodel_test.h"
#include "qmlprofilertr.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
@@ -49,11 +50,11 @@ void DebugMessagesModelTest::testColor()
} }
static const char *messageTypes[] = { static const char *messageTypes[] = {
QT_TRANSLATE_NOOP("DebugMessagesModel", "Debug Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Debug Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Warning Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Warning Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Critical Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Critical Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Fatal Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Fatal Message"),
QT_TRANSLATE_NOOP("DebugMessagesModel", "Info Message"), QT_TRANSLATE_NOOP("QmlProfiler", "Info Message"),
}; };
void DebugMessagesModelTest::testLabels() void DebugMessagesModelTest::testLabels()
@@ -61,7 +62,7 @@ void DebugMessagesModelTest::testLabels()
QVariantList labels = model.labels(); QVariantList labels = model.labels();
for (int i = 0; i <= QtMsgType::QtInfoMsg; ++i) { for (int i = 0; i <= QtMsgType::QtInfoMsg; ++i) {
QVariantMap element = labels[i].toMap(); QVariantMap element = labels[i].toMap();
QCOMPARE(element[QLatin1String("description")].toString(), model.tr(messageTypes[i])); QCOMPARE(element[QLatin1String("description")].toString(), Tr::tr(messageTypes[i]));
QCOMPARE(element[QLatin1String("id")].toInt(), i); QCOMPARE(element[QLatin1String("id")].toInt(), i);
} }
} }
@@ -71,12 +72,12 @@ void DebugMessagesModelTest::testDetails()
for (int i = 0; i < 10; ++i) { for (int i = 0; i < 10; ++i) {
QVariantMap details = model.details(i); QVariantMap details = model.details(i);
QCOMPARE(details.value(QLatin1String("displayName")).toString(), QCOMPARE(details.value(QLatin1String("displayName")).toString(),
model.tr(messageTypes[i % (QtMsgType::QtInfoMsg + 1)])); Tr::tr(messageTypes[i % (QtMsgType::QtInfoMsg + 1)]));
QCOMPARE(details.value(model.tr("Timestamp")).toString(), QCOMPARE(details.value(Tr::tr("Timestamp")).toString(),
Timeline::formatTime(i)); Timeline::formatTime(i));
QCOMPARE(details.value(model.tr("Message")).toString(), QCOMPARE(details.value(Tr::tr("Message")).toString(),
QString::fromLatin1("message %1").arg(i)); QString::fromLatin1("message %1").arg(i));
QCOMPARE(details.value(model.tr("Location")).toString(), QCOMPARE(details.value(Tr::tr("Location")).toString(),
QString::fromLatin1("somefile.js:%1").arg(i)); QString::fromLatin1("somefile.js:%1").arg(i));
} }
} }

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "flamegraphmodel_test.h" #include "flamegraphmodel_test.h"
#include "qmlprofilertr.h"
#include <qmlprofiler/qmlprofilerrangemodel.h> #include <qmlprofiler/qmlprofilerrangemodel.h>
@@ -111,10 +112,10 @@ void FlameGraphModelTest::testCounts()
void FlameGraphModelTest::testData() void FlameGraphModelTest::testData()
{ {
const QVector<QString> typeRoles({ const QVector<QString> typeRoles({
FlameGraphModel::tr("JavaScript"), Tr::tr("JavaScript"),
FlameGraphModel::tr("Signal"), Tr::tr("Signal"),
FlameGraphModel::tr("Binding"), Tr::tr("Binding"),
FlameGraphModel::tr("Create") Tr::tr("Create")
}); });
QModelIndex index = model.index(0, 0); QModelIndex index = model.index(0, 0);
@@ -122,9 +123,9 @@ void FlameGraphModelTest::testData()
QCOMPARE(model.data(index, FlameGraphModel::TypeIdRole).toInt(), 0); QCOMPARE(model.data(index, FlameGraphModel::TypeIdRole).toInt(), 0);
QCOMPARE(model.data(index2, FlameGraphModel::TypeIdRole).toInt(), 4); QCOMPARE(model.data(index2, FlameGraphModel::TypeIdRole).toInt(), 4);
QCOMPARE(model.data(index, FlameGraphModel::TypeRole).toString(), QCOMPARE(model.data(index, FlameGraphModel::TypeRole).toString(),
FlameGraphModel::tr("JavaScript")); Tr::tr("JavaScript"));
QCOMPARE(model.data(index2, FlameGraphModel::TypeRole).toString(), QCOMPARE(model.data(index2, FlameGraphModel::TypeRole).toString(),
FlameGraphModel::tr("Compile")); Tr::tr("Compile"));
QCOMPARE(model.data(index, FlameGraphModel::DurationRole).toLongLong(), 21); QCOMPARE(model.data(index, FlameGraphModel::DurationRole).toLongLong(), 21);
QCOMPARE(model.data(index2, FlameGraphModel::DurationRole).toLongLong(), 13); QCOMPARE(model.data(index2, FlameGraphModel::DurationRole).toLongLong(), 13);
QCOMPARE(model.data(index, FlameGraphModel::CallCountRole).toInt(), 1); QCOMPARE(model.data(index, FlameGraphModel::CallCountRole).toInt(), 1);
@@ -172,7 +173,7 @@ void FlameGraphModelTest::testData()
index2 = model.index(0, 0, index2); index2 = model.index(0, 0, index2);
QCOMPARE(model.data(index2, FlameGraphModel::TypeRole).toString(), QCOMPARE(model.data(index2, FlameGraphModel::TypeRole).toString(),
FlameGraphModel::tr("Compile")); Tr::tr("Compile"));
QCOMPARE(model.data(index2, FlameGraphModel::NoteRole).toString(), QString()); QCOMPARE(model.data(index2, FlameGraphModel::NoteRole).toString(), QString());
QCOMPARE(model.data(index2, FlameGraphModel::CallCountRole).toInt(), 1); QCOMPARE(model.data(index2, FlameGraphModel::CallCountRole).toInt(), 1);
} }

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "inputeventsmodel_test.h" #include "inputeventsmodel_test.h"
#include "qmlprofilertr.h"
#include <tracing/timelinemodel_p.h> #include <tracing/timelinemodel_p.h>
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
@@ -70,11 +71,11 @@ void InputEventsModelTest::testLabels()
{ {
QVariantList labels = model.labels(); QVariantList labels = model.labels();
QVariantMap mouseLabel = labels[0].toMap(); QVariantMap mouseLabel = labels[0].toMap();
QCOMPARE(mouseLabel[QString("description")].toString(), model.tr("Mouse Events")); QCOMPARE(mouseLabel[QString("description")].toString(), Tr::tr("Mouse Events"));
QCOMPARE(mouseLabel[QString("id")].toInt(), static_cast<int>(Mouse)); QCOMPARE(mouseLabel[QString("id")].toInt(), static_cast<int>(Mouse));
QVariantMap keyLabel = labels[1].toMap(); QVariantMap keyLabel = labels[1].toMap();
QCOMPARE(keyLabel[QString("description")].toString(), model.tr("Keyboard Events")); QCOMPARE(keyLabel[QString("description")].toString(), Tr::tr("Keyboard Events"));
QCOMPARE(keyLabel[QString("id")].toInt(), static_cast<int>(Key)); QCOMPARE(keyLabel[QString("id")].toInt(), static_cast<int>(Key));
} }
@@ -82,75 +83,75 @@ void InputEventsModelTest::testDetails()
{ {
for (int i = 0; i < 10; ++i) { for (int i = 0; i < 10; ++i) {
const QVariantMap details = model.details(i); const QVariantMap details = model.details(i);
QCOMPARE(details[model.tr("Timestamp")].toString(), Timeline::formatTime(i)); QCOMPARE(details[Tr::tr("Timestamp")].toString(), Timeline::formatTime(i));
QString displayName = details[QString("displayName")].toString(); QString displayName = details[QString("displayName")].toString();
QVERIFY(!displayName.isEmpty()); QVERIFY(!displayName.isEmpty());
switch (inputType(i)) { switch (inputType(i)) {
case InputKeyPress: case InputKeyPress:
QCOMPARE(displayName, model.tr("Key Press")); QCOMPARE(displayName, Tr::tr("Key Press"));
if (i == 0) { if (i == 0) {
// all the numbers are 0 here, so no other members // all the numbers are 0 here, so no other members
QVERIFY(!details.contains(model.tr("Key"))); QVERIFY(!details.contains(Tr::tr("Key")));
QVERIFY(!details.contains(model.tr("Modifiers"))); QVERIFY(!details.contains(Tr::tr("Modifiers")));
} else { } else {
QCOMPARE(details[model.tr("Key")].toString(), QString("Key_Space")); QCOMPARE(details[Tr::tr("Key")].toString(), QString("Key_Space"));
QCOMPARE(details[model.tr("Modifiers")].toString(), QCOMPARE(details[Tr::tr("Modifiers")].toString(),
QString("ShiftModifier|MetaModifier")); QString("ShiftModifier|MetaModifier"));
} }
break; break;
case InputKeyRelease: case InputKeyRelease:
QCOMPARE(displayName, model.tr("Key Release")); QCOMPARE(displayName, Tr::tr("Key Release"));
QCOMPARE(details[model.tr("Modifiers")].toString(), QString("ShiftModifier")); QCOMPARE(details[Tr::tr("Modifiers")].toString(), QString("ShiftModifier"));
QCOMPARE(details[model.tr("Key")].toString(), QString("Key_Space")); QCOMPARE(details[Tr::tr("Key")].toString(), QString("Key_Space"));
break; break;
case InputKeyUnknown: case InputKeyUnknown:
QCOMPARE(displayName, model.tr("Keyboard Event")); QCOMPARE(displayName, Tr::tr("Keyboard Event"));
QVERIFY(!details.contains(model.tr("Key"))); QVERIFY(!details.contains(Tr::tr("Key")));
QVERIFY(!details.contains(model.tr("Modifiers"))); QVERIFY(!details.contains(Tr::tr("Modifiers")));
break; break;
case InputMousePress: case InputMousePress:
QCOMPARE(displayName, model.tr("Mouse Press")); QCOMPARE(displayName, Tr::tr("Mouse Press"));
// 0x60 is not a valid mouse button // 0x60 is not a valid mouse button
QVERIFY(details.contains(model.tr("Button"))); QVERIFY(details.contains(Tr::tr("Button")));
QVERIFY(details[model.tr("Button")].toString().isEmpty()); QVERIFY(details[Tr::tr("Button")].toString().isEmpty());
QCOMPARE(details[model.tr("Result")].toString(), QCOMPARE(details[Tr::tr("Result")].toString(),
QString("ExtraButton23|MaxMouseButton")); QString("ExtraButton23|MaxMouseButton"));
break; break;
case InputMouseRelease: case InputMouseRelease:
QCOMPARE(displayName, model.tr("Mouse Release")); QCOMPARE(displayName, Tr::tr("Mouse Release"));
QCOMPARE(details[model.tr("Button")].toString(), QString("ExtraButton5")); QCOMPARE(details[Tr::tr("Button")].toString(), QString("ExtraButton5"));
QVERIFY(details.contains(model.tr("Result"))); QVERIFY(details.contains(Tr::tr("Result")));
QVERIFY(details[model.tr("Result")].toString().isEmpty()); QVERIFY(details[Tr::tr("Result")].toString().isEmpty());
break; break;
case InputMouseMove: case InputMouseMove:
QCOMPARE(displayName, model.tr("Mouse Move")); QCOMPARE(displayName, Tr::tr("Mouse Move"));
QCOMPARE(details[model.tr("X")].toString(), QString("160")); QCOMPARE(details[Tr::tr("X")].toString(), QString("160"));
QCOMPARE(details[model.tr("Y")].toString(), QString("167772160")); QCOMPARE(details[Tr::tr("Y")].toString(), QString("167772160"));
break; break;
case InputMouseDoubleClick: case InputMouseDoubleClick:
QCOMPARE(displayName, model.tr("Double Click")); QCOMPARE(displayName, Tr::tr("Double Click"));
QVERIFY(details.contains(model.tr("Button"))); QVERIFY(details.contains(Tr::tr("Button")));
QVERIFY(details[model.tr("Button")].toString().isEmpty()); QVERIFY(details[Tr::tr("Button")].toString().isEmpty());
QCOMPARE(details[model.tr("Result")].toString(), QString("MaxMouseButton")); QCOMPARE(details[Tr::tr("Result")].toString(), QString("MaxMouseButton"));
break; break;
case InputMouseWheel: case InputMouseWheel:
QCOMPARE(displayName, model.tr("Mouse Wheel")); QCOMPARE(displayName, Tr::tr("Mouse Wheel"));
QCOMPARE(details[model.tr("Angle X")].toString(), QString("224")); QCOMPARE(details[Tr::tr("Angle X")].toString(), QString("224"));
QCOMPARE(details[model.tr("Angle Y")].toString(), QString("234881024")); QCOMPARE(details[Tr::tr("Angle Y")].toString(), QString("234881024"));
break; break;
case InputMouseUnknown: case InputMouseUnknown:
QCOMPARE(displayName, model.tr("Mouse Event")); QCOMPARE(displayName, Tr::tr("Mouse Event"));
QVERIFY(!details.contains(model.tr("X"))); QVERIFY(!details.contains(Tr::tr("X")));
QVERIFY(!details.contains(model.tr("Y"))); QVERIFY(!details.contains(Tr::tr("Y")));
QVERIFY(!details.contains(model.tr("Angle X"))); QVERIFY(!details.contains(Tr::tr("Angle X")));
QVERIFY(!details.contains(model.tr("Angle Y"))); QVERIFY(!details.contains(Tr::tr("Angle Y")));
QVERIFY(!details.contains(model.tr("Button"))); QVERIFY(!details.contains(Tr::tr("Button")));
QVERIFY(!details.contains(model.tr("Result"))); QVERIFY(!details.contains(Tr::tr("Result")));
break; break;
default: default:
QCOMPARE(displayName, model.tr("Unknown")); QCOMPARE(displayName, Tr::tr("Unknown"));
break; break;
} }
} }

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "memoryusagemodel_test.h" #include "memoryusagemodel_test.h"
#include "qmlprofilertr.h"
#include <QtTest> #include <QtTest>
namespace QmlProfiler { namespace QmlProfiler {
@@ -115,52 +116,52 @@ void MemoryUsageModelTest::testLabels()
const QVariantList labels = model.labels(); const QVariantList labels = model.labels();
const QVariantMap allocations = labels[0].toMap(); const QVariantMap allocations = labels[0].toMap();
QCOMPARE(allocations[QString("description")].toString(), model.tr("Memory Allocation")); QCOMPARE(allocations[QString("description")].toString(), Tr::tr("Memory Allocation"));
QCOMPARE(allocations[QString("id")].toInt(), static_cast<int>(HeapPage)); QCOMPARE(allocations[QString("id")].toInt(), static_cast<int>(HeapPage));
const QVariantMap usages = labels[1].toMap(); const QVariantMap usages = labels[1].toMap();
QCOMPARE(usages[QString("description")].toString(), model.tr("Memory Usage")); QCOMPARE(usages[QString("description")].toString(), Tr::tr("Memory Usage"));
QCOMPARE(usages[QString("id")].toInt(), static_cast<int>(SmallItem)); QCOMPARE(usages[QString("id")].toInt(), static_cast<int>(SmallItem));
} }
void MemoryUsageModelTest::testDetails() void MemoryUsageModelTest::testDetails()
{ {
const QVariantMap allocated = model.details(0); const QVariantMap allocated = model.details(0);
QCOMPARE(allocated[QString("displayName")].toString(), model.tr("Memory Allocated")); QCOMPARE(allocated[QString("displayName")].toString(), Tr::tr("Memory Allocated"));
QCOMPARE(allocated[model.tr("Total")].toString(), QCOMPARE(allocated[Tr::tr("Total")].toString(),
model.tr("%n byte(s)", nullptr, 4096)); Tr::tr("%n byte(s)", nullptr, 4096));
QCOMPARE(allocated[model.tr("Allocated")].toString(), QCOMPARE(allocated[Tr::tr("Allocated")].toString(),
model.tr("%n byte(s)", nullptr, 4096)); Tr::tr("%n byte(s)", nullptr, 4096));
QCOMPARE(allocated[model.tr("Allocations")].toString(), QString::number(2)); QCOMPARE(allocated[Tr::tr("Allocations")].toString(), QString::number(2));
QCOMPARE(allocated[model.tr("Type")].toString(), model.tr("Heap Allocation")); QCOMPARE(allocated[Tr::tr("Type")].toString(), Tr::tr("Heap Allocation"));
QCOMPARE(allocated[model.tr("Location")].toString(), QmlProfilerModelManager::tr("<bytecode>")); QCOMPARE(allocated[Tr::tr("Location")].toString(), Tr::tr("<bytecode>"));
QVERIFY(!allocated.contains(model.tr("Deallocated"))); QVERIFY(!allocated.contains(Tr::tr("Deallocated")));
QVERIFY(!allocated.contains(model.tr("Deallocations"))); QVERIFY(!allocated.contains(Tr::tr("Deallocations")));
const QVariantMap large = model.details(2); const QVariantMap large = model.details(2);
QCOMPARE(large[QString("displayName")].toString(), model.tr("Memory Allocated")); QCOMPARE(large[QString("displayName")].toString(), Tr::tr("Memory Allocated"));
QCOMPARE(large[model.tr("Total")].toString(), QCOMPARE(large[Tr::tr("Total")].toString(),
model.tr("%n byte(s)", nullptr, 5120)); Tr::tr("%n byte(s)", nullptr, 5120));
QCOMPARE(large[model.tr("Allocated")].toString(), QCOMPARE(large[Tr::tr("Allocated")].toString(),
model.tr("%n byte(s)", nullptr, 1024)); Tr::tr("%n byte(s)", nullptr, 1024));
QCOMPARE(large[model.tr("Allocations")].toString(), QString::number(1)); QCOMPARE(large[Tr::tr("Allocations")].toString(), QString::number(1));
QCOMPARE(large[model.tr("Type")].toString(), model.tr("Large Item Allocation")); QCOMPARE(large[Tr::tr("Type")].toString(), Tr::tr("Large Item Allocation"));
QCOMPARE(large[model.tr("Location")].toString(), QmlProfilerModelManager::tr("<bytecode>")); QCOMPARE(large[Tr::tr("Location")].toString(), Tr::tr("<bytecode>"));
QVERIFY(!large.contains(model.tr("Deallocated"))); QVERIFY(!large.contains(Tr::tr("Deallocated")));
QVERIFY(!large.contains(model.tr("Deallocations"))); QVERIFY(!large.contains(Tr::tr("Deallocations")));
const QVariantMap freed = model.details(9); const QVariantMap freed = model.details(9);
QCOMPARE(freed[QString("displayName")].toString(), model.tr("Memory Freed")); QCOMPARE(freed[QString("displayName")].toString(), Tr::tr("Memory Freed"));
QCOMPARE(freed[model.tr("Total")].toString(), model.tr("%n byte(s)", nullptr, 2048)); QCOMPARE(freed[Tr::tr("Total")].toString(), Tr::tr("%n byte(s)", nullptr, 2048));
QCOMPARE(freed[model.tr("Deallocated")].toString(), model.tr("%n byte(s)", nullptr, 1024)); QCOMPARE(freed[Tr::tr("Deallocated")].toString(), Tr::tr("%n byte(s)", nullptr, 1024));
QCOMPARE(freed[model.tr("Deallocations")].toString(), QString::number(1)); QCOMPARE(freed[Tr::tr("Deallocations")].toString(), QString::number(1));
QCOMPARE(freed[model.tr("Type")].toString(), model.tr("Heap Usage")); QCOMPARE(freed[Tr::tr("Type")].toString(), Tr::tr("Heap Usage"));
QCOMPARE(freed[model.tr("Location")].toString(), QmlProfilerModelManager::tr("<bytecode>")); QCOMPARE(freed[Tr::tr("Location")].toString(), Tr::tr("<bytecode>"));
QVERIFY(!freed.contains(model.tr("Allocated"))); QVERIFY(!freed.contains(Tr::tr("Allocated")));
QVERIFY(!freed.contains(model.tr("Allocations"))); QVERIFY(!freed.contains(Tr::tr("Allocations")));
} }
void MemoryUsageModelTest::testExpandedRow() void MemoryUsageModelTest::testExpandedRow()

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "pixmapcachemodel_test.h" #include "pixmapcachemodel_test.h"
#include "qmlprofilertr.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
#include <QtTest> #include <QtTest>
@@ -218,25 +219,25 @@ void PixmapCacheModelTest::testConsistency()
break; break;
case 1: case 1:
QCOMPARE(collapsedRow, 1); QCOMPARE(collapsedRow, 1);
QVERIFY(details[QLatin1String("displayName")].toString() == model.tr("Image Cached")); QVERIFY(details[QLatin1String("displayName")].toString() == Tr::tr("Image Cached"));
QVERIFY(details.contains(model.tr("Cache Size"))); QVERIFY(details.contains(Tr::tr("Cache Size")));
break; break;
default: default:
QVERIFY(collapsedRow > 1); QVERIFY(collapsedRow > 1);
QCOMPARE(model.relativeHeight(i), 1.0f); QCOMPARE(model.relativeHeight(i), 1.0f);
QVERIFY(expandedRow < model.expandedRowCount()); QVERIFY(expandedRow < model.expandedRowCount());
QVERIFY(details[QLatin1String("displayName")].toString() == model.tr("Image Loaded")); QVERIFY(details[QLatin1String("displayName")].toString() == Tr::tr("Image Loaded"));
QCOMPARE(details[model.tr("Duration")].toString(), QCOMPARE(details[Tr::tr("Duration")].toString(),
Timeline::formatTime(model.duration(i))); Timeline::formatTime(model.duration(i)));
// In expanded view pixmaps of the same URL but different sizes are allowed to overlap. // In expanded view pixmaps of the same URL but different sizes are allowed to overlap.
// It looks bad, but that should be a rare thing. // It looks bad, but that should be a rare thing.
break; break;
} }
QString filename = details[PixmapCacheModel::tr("File")].toString(); QString filename = details[Tr::tr("File")].toString();
QVERIFY(filename == QString("dings.png") || filename == QString("blah.png")); QVERIFY(filename == QString("dings.png") || filename == QString("blah.png"));
QVERIFY(details.contains(PixmapCacheModel::tr("Width"))); QVERIFY(details.contains(Tr::tr("Width")));
QVERIFY(details.contains(PixmapCacheModel::tr("Height"))); QVERIFY(details.contains(Tr::tr("Height")));
} }
} }
@@ -275,7 +276,7 @@ void PixmapCacheModelTest::testLabels()
const QVariantMap countRow = labels[0].toMap(); const QVariantMap countRow = labels[0].toMap();
QCOMPARE(countRow[QString("description")].toString(), model.tr("Cache Size")); QCOMPARE(countRow[QString("description")].toString(), Tr::tr("Cache Size"));
QCOMPARE(countRow[QString("id")].toInt(), 0); QCOMPARE(countRow[QString("id")].toInt(), 0);
const QVariantMap dingsRow = labels[1].toMap(); const QVariantMap dingsRow = labels[1].toMap();

View File

@@ -2,6 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofileranimationsmodel_test.h" #include "qmlprofileranimationsmodel_test.h"
#include "qmlprofilertr.h"
#include <tracing/timelineformattime.h> #include <tracing/timelineformattime.h>
#include <QtTest> #include <QtTest>
@@ -81,13 +82,13 @@ void QmlProfilerAnimationsModelTest::testLabels()
QCOMPARE(labels.length(), 2); QCOMPARE(labels.length(), 2);
QVariantMap label0 = labels[0].toMap(); QVariantMap label0 = labels[0].toMap();
QCOMPARE(label0["displayName"].toString(), QmlProfilerAnimationsModel::tr("Animations")); QCOMPARE(label0["displayName"].toString(), Tr::tr("Animations"));
QCOMPARE(label0["description"].toString(), QmlProfilerAnimationsModel::tr("GUI Thread")); QCOMPARE(label0["description"].toString(), Tr::tr("GUI Thread"));
QCOMPARE(label0["id"].toInt(), static_cast<int>(GuiThread)); QCOMPARE(label0["id"].toInt(), static_cast<int>(GuiThread));
QVariantMap label1 = labels[1].toMap(); QVariantMap label1 = labels[1].toMap();
QCOMPARE(label1["displayName"].toString(), QmlProfilerAnimationsModel::tr("Animations")); QCOMPARE(label1["displayName"].toString(), Tr::tr("Animations"));
QCOMPARE(label1["description"].toString(), QmlProfilerAnimationsModel::tr("Render Thread")); QCOMPARE(label1["description"].toString(), Tr::tr("Render Thread"));
QCOMPARE(label1["id"].toInt(), static_cast<int>(RenderThread)); QCOMPARE(label1["id"].toInt(), static_cast<int>(RenderThread));
} }
@@ -96,15 +97,15 @@ void QmlProfilerAnimationsModelTest::testDetails()
for (int i = 0; i < 10; ++i) { for (int i = 0; i < 10; ++i) {
QVariantMap details = model.details(i); QVariantMap details = model.details(i);
QCOMPARE(details["displayName"].toString(), model.displayName()); QCOMPARE(details["displayName"].toString(), model.displayName());
QCOMPARE(details[QmlProfilerAnimationsModel::tr("Duration")].toString(), QCOMPARE(details[Tr::tr("Duration")].toString(),
Timeline::formatTime(1)); Timeline::formatTime(1));
QCOMPARE(details[QmlProfilerAnimationsModel::tr("Framerate")].toString(), QCOMPARE(details[Tr::tr("Framerate")].toString(),
QString::fromLatin1("%1 FPS").arg(frameRate(i))); QString::fromLatin1("%1 FPS").arg(frameRate(i)));
QCOMPARE(details[QmlProfilerAnimationsModel::tr("Animations")].toString(), QCOMPARE(details[Tr::tr("Animations")].toString(),
QString::number(9 - i)); QString::number(9 - i));
QCOMPARE(details[QmlProfilerAnimationsModel::tr("Context")].toString(), i % 2 ? QCOMPARE(details[Tr::tr("Context")].toString(), i % 2 ?
QmlProfilerAnimationsModel::tr("Render Thread") : Tr::tr("Render Thread") :
QmlProfilerAnimationsModel::tr("GUI Thread")); Tr::tr("GUI Thread"));
} }
} }

View File

@@ -1,6 +1,7 @@
// Copyright (C) 2017 The Qt Company Ltd. // Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "qmlprofilertr.h"
#include "qmlprofilertraceclient_test.h" #include "qmlprofilertraceclient_test.h"
#include <qmldebug/qpacketprotocol.h> #include <qmldebug/qpacketprotocol.h>
#include <QtTest> #include <QtTest>
@@ -66,7 +67,7 @@ void QmlProfilerTraceClientTest::testMessageReceived()
traceClient.clear(); traceClient.clear();
}, [this, &lastError](const QString &message) { }, [this, &lastError](const QString &message) {
QVERIFY(!message.isEmpty()); QVERIFY(!message.isEmpty());
if (lastError == QmlProfilerModelManager::tr("Read past end in temporary trace file.")) { if (lastError == Tr::tr("Read past end in temporary trace file.")) {
// Ignore read-past-end errors: Our test traces are somewhat dirty and don't end on // Ignore read-past-end errors: Our test traces are somewhat dirty and don't end on
// packet boundaries // packet boundaries
modelManager.clearAll(); modelManager.clearAll();