diff --git a/doc/qtcreator.qdoc b/doc/qtcreator.qdoc index 8574e9637cd..2994df2c699 100644 --- a/doc/qtcreator.qdoc +++ b/doc/qtcreator.qdoc @@ -12,7 +12,7 @@ the Linux, Mac OS X and Windows platforms. \note Please report bugs and suggestions to the - \l{http://qt.nokia.com/developer/task-tracker}{Qt task tracker}. + \l{http://bugreports.qt.nokia.com}{Qt Bug Tracker}. You can also join the Qt Creator mailing list. To subscribe, send a message with the word \e subscribe to \l{mailto:qt-creator-request@trolltech.com} diff --git a/share/qtcreator/gdbmacros/gdbmacros.cpp b/share/qtcreator/gdbmacros/gdbmacros.cpp index 7746670f381..ecaee41ec3a 100644 --- a/share/qtcreator/gdbmacros/gdbmacros.cpp +++ b/share/qtcreator/gdbmacros/gdbmacros.cpp @@ -57,12 +57,6 @@ #include #include -#if (QT_POINTER_SIZE==4) // How to printf/scanf a pointer (uintptr_t) -# define POINTER_PRINTFORMAT "0x%x" -#else -# define POINTER_PRINTFORMAT "0x%lx" -#endif - #ifndef QT_BOOTSTRAPPED #include @@ -637,7 +631,9 @@ QDumper &QDumper::put(int i) QDumper &QDumper::put(const void *p) { if (p) { - pos += sprintf(outBuffer + pos, POINTER_PRINTFORMAT, reinterpret_cast(p)); + // Pointer is 'long long' on WIN_64, only + static const char *printFormat = sizeof(quintptr) == sizeof(long) ? "0x%lx" : "0x%llx"; + pos += sprintf(outBuffer + pos, printFormat, reinterpret_cast(p)); } else { pos += sprintf(outBuffer + pos, ""); } @@ -1069,8 +1065,10 @@ static void qDumpQAbstractItem(QDumper &d) { ModelIndex *mm = reinterpret_cast(&mi); mm->r = mm->c = 0; - mm->p = mm->m = 0; - sscanf(d.templateParameters[0], "%d,%d,"POINTER_PRINTFORMAT","POINTER_PRINTFORMAT, &mm->r, &mm->c, + mm->p = mm->m = 0; + static const char *printFormat = sizeof(quintptr) == sizeof(long) ? + "%d,%d,0x%lx,0x%lx" : "%d,%d,0x%llx,0x%llx"; + sscanf(d.templateParameters[0], printFormat, &mm->r, &mm->c, reinterpret_cast(&mm->p), reinterpret_cast(&mm->m)); } const QAbstractItemModel *m = mi.model(); @@ -1638,7 +1636,7 @@ static void qDumpQList(QDumper &d) if (innerTypeIsPointer) for (int i = 0; i != n; ++i) if (const void *p = ldata.d->array + i + pdata->begin) - qCheckAccess(deref(p)); + qCheckPointer(deref(p)); } qCheckAccess(pdata); @@ -2148,10 +2146,14 @@ static void qDumpQVariantHelper(const QVariant *v, QString *value, break; #endif default: { + static const char *qTypeFormat = sizeof(quintptr) == sizeof(long) ? + "'"NS"%s "NS"qVariantValue<"NS"%s >'(*('"NS"QVariant'*)0x%lx)" : + "'"NS"%s "NS"qVariantValue<"NS"%s >'(*('"NS"QVariant'*)0x%llx)"; + static const char *nonQTypeFormat = sizeof(quintptr) == sizeof(long) ? + "'%s "NS"qVariantValue<%s >'(*('"NS"QVariant'*)0x%lx)" : + "'%s "NS"qVariantValue<%s >'(*('"NS"QVariant'*)0x%llx)"; char buf[1000]; - const char *format = (v->typeName()[0] == 'Q') - ? "'"NS"%s "NS"qVariantValue<"NS"%s >'(*('"NS"QVariant'*)"POINTER_PRINTFORMAT")" - : "'%s "NS"qVariantValue<%s >'(*('"NS"QVariant'*)"POINTER_PRINTFORMAT")"; + const char *format = (v->typeName()[0] == 'Q') ? qTypeFormat : nonQTypeFormat; qsnprintf(buf, sizeof(buf) - 1, format, v->typeName(), v->typeName(), v); *exp = QLatin1String(buf); *numchild = 1; diff --git a/share/qtcreator/translations/qtcreator_de.ts b/share/qtcreator/translations/qtcreator_de.ts index 9b57adaf1f7..3d1fa7c8347 100644 --- a/share/qtcreator/translations/qtcreator_de.ts +++ b/share/qtcreator/translations/qtcreator_de.ts @@ -4,7 +4,7 @@ Application - + Failed to load core: %1 Das Core-Plugin konnte nicht geladen werden: %1 @@ -350,7 +350,7 @@ CMakeProjectManager::Internal::CMakeBuildSettingsWidget - + &Change &Ändern @@ -484,13 +484,13 @@ MinGW-Generator - + No valid cmake executable specified. Es wurde keine ausführbare cmake-Datei angegeben. - + Qt Creator needs to run cmake in the new build directory. Some projects require command line arguments to the initial cmake call. Qt Creator muss cmake im Build-Verzeichnis aufrufen. Für einige Projekte sind dazu Kommandozeilenargumente erforderlich. @@ -498,7 +498,7 @@ CMakeProjectManager::Internal::CMakeSettingsPage - + CMake CMake @@ -520,7 +520,7 @@ CMakeProjectManager::Internal::MakeStepConfigWidget - + Additional arguments: Zusätzliche Argumente: @@ -1011,7 +1011,17 @@ CodePaster::CodePasterProtocol - + + No Server defined in the CodePaster preferences. + Es wurde kein Server in den CodePaster-Einstellungen angegeben. + + + + No Server defined in the CodePaster options. + Es wurde kein Server in den CodePaster-Einstellungen angegeben. + + + No such paste Angeforderter Ausschnitt existiert nicht @@ -1020,22 +1030,35 @@ CodePaster::CodePasterSettingsPage - CodePaster CodePaster + + + Code Pasting + Code Pasting + Server: Server: + + + Note: Specify the host name for the CodePaster service without any protocol prepended (e.g. codepaster.mycompany.com). + Hinweis: Geben Sie den Namen des Servers für den CodePaster-Service ohne Protokollpräfix ein (zum Beispiel codepaster.mycompany.com). + CodePaster::CodepasterPlugin - &CodePaster - &CodePaster + &CodePaster + + + + &Code Pasting + &Code Pasting @@ -1100,13 +1123,12 @@ - + General Allgemein - CodePaster CodePaster @@ -1125,6 +1147,11 @@ Pastebin.com Pastebin.com + + + Code Pasting + Code Pasting + CommonOptionsPage @@ -1308,12 +1335,12 @@ Sollen sie überschrieben werden? Core::EditorManager - + Revert to Saved Wiederherstellen - + Close Schließen @@ -1325,12 +1352,12 @@ Sollen sie überschrieben werden? - + Close Others Andere schließen - + Open in External Editor Öffne in externem Editor @@ -1476,7 +1503,7 @@ Sollen sie überschrieben werden? Speichern als... - + Failed! Fehler @@ -1497,13 +1524,13 @@ Sollen sie überschrieben werden? <b>Hinweis:</b> Sie sind im Begriff, eine schreibgeschützte Datei zu ändern. - - + + Make writable Schreibbar machen - + Next Open Document in History Nächstes geöffnetes Dokument im Verlauf @@ -1548,7 +1575,7 @@ Sollen sie überschrieben werden? %1,o - + Save %1 As... Speicher '%1' unter... @@ -1717,6 +1744,11 @@ Sollen sie überschrieben werden? Go Back Vorheriges + + + Go Back + Vorheriges + Go Forward @@ -2314,12 +2346,12 @@ Sollen sie überschrieben werden? CppEditor::Internal::CPPEditor - + Sort alphabetically Alphabetisch sortieren - + This change cannot be undone. Diese Änderung kann nicht rückgängig gemacht werden. @@ -2342,7 +2374,7 @@ Sollen sie überschrieben werden? Die Dateinamen werden aus dem Klassennamen generiert - + Configure... Einstellungen... @@ -2350,7 +2382,7 @@ Sollen sie überschrieben werden? CppEditor::Internal::CppClassWizard - + Error while generating file contents. Fehler beim Generieren der Dateien. @@ -2358,7 +2390,7 @@ Sollen sie überschrieben werden? CppEditor::Internal::CppClassWizardDialog - + C++ Class Wizard Neue C++ Klasse @@ -2374,7 +2406,7 @@ Sollen sie überschrieben werden? CppEditor::Internal::CppPlugin - + C++ C++ @@ -2465,7 +2497,7 @@ Sollen sie überschrieben werden? CppPreprocessor - + %1: No such file or directory %1: Es existiert keine Datei oder kein Verzeichnis dieses Namens @@ -2555,7 +2587,7 @@ Sollen sie überschrieben werden? CppTools::Internal::CppFindReferences - + Searching... Suche... @@ -2605,7 +2637,7 @@ Sollen sie überschrieben werden? CppTools::Internal::FunctionArgumentWidget - + %1 of %2 %1 von %2 @@ -2623,26 +2655,51 @@ Sollen sie überschrieben werden? Debugger - + <Encoding error> <Encoding-Fehler> + + QtDumperHelper + + + Found an outdated version of the debugging helper library (%1); version %2 is required. + Es wurde eine veraltete Version (%1) der Ausgabe-Hilfsbibliothek gefunden. Version %2 ist erforderlich. + + + Found a too-old version of the debugging helper library (%1); version %2 is required. + Es wurde eine veraltete Version (%1) der Ausgabe-Hilfsbibliothek gefunden. Version %2 ist erforderlich. + + + + %n known types, Qt version: %1, Qt namespace: %2 Dumper version: %3 + + Ein unterstützter Datentyp, Qt-Version: %1, Namensraum: %2, Version: %3 + %n unterstützte Datentypen, Qt-Version: %1, Namensraum: %2, Version: %3 + + + + + <none> + <kein> + + Debugger::DebuggerManager - + Continue Fortsetzen - + Interrupt Anhalten - + Reset Debugger Debugger zurücksetzen @@ -2692,7 +2749,7 @@ Sollen sie überschrieben werden? Umgekehrte Richtung - + Stopped. Angehalten. @@ -2728,17 +2785,32 @@ Sollen sie überschrieben werden? Warnung - + + Turn off helper usage + Ausgabe-Hilfsbibliothek deaktivieren + + + + The debugger could not load the debugging helper library. + Der Debugger konnte die Ausgabe-Hilfsbibliothek nicht finden. + + + + The debugging helper is used to nicely format the values of some Qt and Standard Library data types. It must be compiled for each used Qt version separately. This can be done in the Qt preferences page by selecting a Qt installation and clicking on 'Rebuild' in the 'Debugging Helper' row. + Die Ausgabe-Hilfsbibliothek dient zur Ausgabe der Werte einiger Datentypen aus Qt- und den Standardbibliotheken. Sie muss mit jeder benutzten Qt-Version compiliert werden. Das geschieht in der Seite 'Qt-Einstellungen' durch Auswahl der Qt-Installation und Klicken auf 'Erstellen' für die Ausgabe-Hilfsbibliothek. + + + Cannot debug '%1' (tool chain: '%2'): %3 Der Debugger kann nicht mit '%1' (Toolchain '%2') gestartet werden: %3 - + Save Debugger Log Debugger Log speichern - + %1 (explicitly set in the Debugger Options) %1 (explizit in den Debugger-Einstellungen gesetzt) @@ -2748,12 +2820,11 @@ Sollen sie überschrieben werden? Qt-Versionseinstellungen öffnen - Turn helper usage off - Ausgabe-Hilfsbibliothek deaktivieren + Ausgabe-Hilfsbibliothek deaktivieren - + Continue anyway Trotzdem fortsetzen @@ -2763,17 +2834,15 @@ Sollen sie überschrieben werden? Ausgabe-Hilfsbibliothek nicht gefunden - The debugger did not find the debugging helper library. - Der Debugger konnte die Ausgabe-Hilfsbibliothek nicht finden. + Der Debugger konnte die Ausgabe-Hilfsbibliothek nicht finden. - The debugging helper is used to nicely format the values of some Qt and Standard Library data types. It must be compiled for each Qt version which you can do in the Qt preferences page by selecting a Qt installation and clicking on 'Rebuild' for the debugging helper. - Die Ausgabe-Hilfsbibliothek dient zur Ausgabe der Werte einiger Datentypen aus Qt- und den Standardbibliotheken. Sie muss mit jeder benutzten Qt-Version compiliert werden. Das geschieht in der Seite 'Qt-Einstellungen' durch Auswahl der Qt-Installation und Klicken auf 'Erstellen' für die Ausgabe-Hilfsbibliothek. + Die Ausgabe-Hilfsbibliothek dient zur Ausgabe der Werte einiger Datentypen aus Qt- und den Standardbibliotheken. Sie muss mit jeder benutzten Qt-Version compiliert werden. Das geschieht in der Seite 'Qt-Einstellungen' durch Auswahl der Qt-Installation und Klicken auf 'Erstellen' für die Ausgabe-Hilfsbibliothek. - + Stop Debugger Debugger anhalten @@ -3026,7 +3095,7 @@ Sollen sie überschrieben werden? Debugger::Internal::CdbDebugEngine - + Unable to load the debugger engine library '%1': %2 Die Debugger-Bibliothek konnte '%1' nicht geladen werden: %2 @@ -3042,7 +3111,7 @@ Sollen sie überschrieben werden? '%1' konnte in der Debugger-Bibliothek '%2' nicht gefunden werden - + Version: %1 Version: %1 @@ -3057,12 +3126,12 @@ Sollen sie überschrieben werden? Debugger - + The dumper library was not found at %1. Es konnte keine Ausgabe-Hilfsbibliothek unter %1 gefunden werden. - + The console stub process was unable to start '%1'. Der Konsolenprozess konnte '%1' nicht ausführen. @@ -3077,7 +3146,7 @@ Sollen sie überschrieben werden? Debugger läuft - + Attaching to a process failed for process id %1: %2 Der Debugger konnte sich nicht an den Prozess %1 anhängen: %2 @@ -3092,7 +3161,7 @@ Sollen sie überschrieben werden? Es konnte kein Prozess mit '%1' gestartet werden: %2 - + The process exited with exit code %1. Der Prozess wurde beendet, Rückgabewert %1. @@ -3111,13 +3180,18 @@ Sollen sie überschrieben werden? Reverse stepping is not implemented. Die Funktionalität für 'Einzelschritt rückwärts' ist nicht implementiert. + + + Thread %1 cannot be stepped. + Für den Thread %1 ist kein Einzelschritt möglich. + Stepping %1 Führe Schritt aus (%1) - + Running to 0x%1... Ausführung bis zur Adresse 0x%1... @@ -3127,7 +3201,7 @@ Sollen sie überschrieben werden? Fortsetzung angefordert... - + Running up to %1:%2... Ausführung bis %1:%2... @@ -3163,17 +3237,27 @@ Sollen sie überschrieben werden? Debugger-Fehler - + + Ignoring initial breakpoint... + Anfänglicher Haltepunkt wurde übergangen... + + + + Interrupted in thread %1, current thread: %2 + Angehalten im Thread: %1, aktueller Thread: %2 + + + Stopped, current thread: %1 Angehalten, Thread: %1 - + Changing threads: %1 -> %2 Wechsel von Thread %1 zu %2 - + Thread %1: Missing debug information for top stack frame (%2). Thread %1: Es ist keine Debug-Information für obersten Stack-Rahmen (%2) vorhanden. @@ -3186,7 +3270,7 @@ Sollen sie überschrieben werden? Debugger::Internal::CdbDumperHelper - + injection Injektion @@ -3211,32 +3295,36 @@ Sollen sie überschrieben werden? Die Ausgabe-Hilfsbibliothek '%1' (%2) wurde geladen. - + + Stopped / Custom dumper library initialized. + Angehalten / Ausgabe-Hilfsbibliothek initialisiert. + + + Disabling dumpers due to debuggee crash... Ausgabe-Hilfsbibliothek deaktiviert wegen Absturz der zu debuggenden Anwendung... - + The debuggee does not appear to be Qt application. Die zu debuggende Anwendung scheint nicht Qt zu benutzen. - + Initializing dumpers... Ausgabe-Hilfsbibliothek initialisieren... - Custom dumper library initialized. - Ausgabe-Hilfsbibliothek wurde initialisiert. + Ausgabe-Hilfsbibliothek wurde initialisiert. - + The custom dumper library could not be initialized: %1 Die Ausgabe-Hilfsbibliothek konnte nicht initialisiert werden: %1 - + Querying dumpers for '%1'/'%2' (%3) Abfrage der Ausgabe-Hilfsbibliothek für '%1'/'%2' (%3) @@ -3292,44 +3380,72 @@ Sollen sie überschrieben werden? Debugger::Internal::CoreGdbAdapter - + Attached to core. Debugge core-Datei. - + Symbols found. Die Symbole wurden gefunden. - + + + + Error Loading Symbols + Fehler beim Laden der Symbole + + + + No executable to load symbols from specified. + Es wurde keine ausführbare Datei zum Laden der Symbole angegeben. + + + + Loading symbols from "%1" failed: + + Das Laden der Symbole von "%1" schlug fehl: + + + + Attached to core temporarily. Debugge core-Datei temporär. - - No binary found. - Es konnte keine ausführbare Datei gefunden werden. + + Unable to determine executable from core file. + Es konnte keine ausführbare Datei aus der core-Datei bestimmt werden. + + + + Attach to core "%1" failed: + + Das Debuggen der core-Datei "%1" schlug fehl: + + + + No binary found. + Es konnte keine ausführbare Datei gefunden werden. - Symbols not found in "%1" failed: %2 - In "%1" konnten keine Symbole gefunden werden; Fehler: + In "%1" konnten keine Symbole gefunden werden; Fehler: %2 - Attach to core "%1" failed: %2 - Das Debuggen der core-Datei "%1" schlug fehl: + Das Debuggen der core-Datei "%1" schlug fehl: %2 Debugger::Internal::DebugMode - + Debug Debuggen @@ -3342,10 +3458,28 @@ Sollen sie überschrieben werden? Debugger + + Debugger::Internal::DebuggerListener + + + Close Debugging Session + Debuggen beenden + + + + A debugging session is still in progress. Would you like to terminate it? + Der Debugger läuft noch. Möchten Sie ihn beenden? + + + + A debugging session is still in progress. Terminating the session in the current state (%1) can leave the target in an inconsistent state. Would you still like to terminate it? + Der Debugger läuft noch. Das Beenden im gegenwärtigen Zustand (%1) könnte zu einem inkonsistenten Zustand des untersuchten Prozesses führen. Möchten Sie ihn trotzdem beenden? + + Debugger::Internal::DebuggerPlugin - + Option '%1' is missing the parameter. Das Kommandozeilenargument %1erfordert ein Argument. @@ -3555,6 +3689,11 @@ Sollen sie überschrieben werden? + Use code model + Code-Modell verwenden + + + Recheck debugging helper availability Verfügbarkeit der Ausgabe-Hilfsbibliothek prüfen @@ -3647,7 +3786,7 @@ Sollen sie überschrieben werden? Debugger::Internal::DebuggingHelperOptionPage - + Debugging Helper Ausgabe-Hilfsbibliothek @@ -3657,7 +3796,7 @@ Sollen sie überschrieben werden? Pfad zur Ausgabe-Hilfsbibliothek einstellen - + Ctrl+Shift+F11 @@ -3665,7 +3804,7 @@ Sollen sie überschrieben werden? Debugger::Internal::GdbEngine - + The Gdb process failed to start. Either the invoked program '%1' is missing, or you may have insufficient permissions to invoke the program. Der Start des Gdb-Prozesses schlug fehl. Entweder fehlt die ausführbare Datei '%1' oder die Berechtigungen sind nicht ausreichend. @@ -3690,22 +3829,21 @@ Sollen sie überschrieben werden? Ein Fehler trat beim Versuch des Lesens vom Gdb-Prozess auf. Wahrscheinlich läuft der Prozess nicht. - Error - Fehler + Fehler - + Library %1 loaded. Bibliothek %1 geladen. - + Library %1 unloaded. Bibliothek %1 entladen. - + Thread group %1 created. Thread-Gruppe %1 erzeugt. @@ -3730,17 +3868,17 @@ Sollen sie überschrieben werden? Thread %1 ausgewählt. - + Stopping temporarily. Temporär Anhalten. - + Process failed to start. Der Prozess konnte nicht gestartet werden. - + <p>The inferior stopped because it received a signal from the Operating System.<p><table><tr><td>Signal name : </td><td>%1</td></tr><tr><td>Signal meaning : </td><td>%2</td></tr></table> <p>Der Prozess wurde nach Erhalt eines Signals vom Betriebssystem angehalten.<p><table><tr><td>Name des Signals : </td><td>%1</td></tr><tr><td>Bedeutung : </td><td>%2</td></tr></table> @@ -3756,42 +3894,40 @@ Sollen sie überschrieben werden? Signal erhalten - The dumper library was not found at %1. - Es konnte keine Ausgabe-Hilfsbibliothek unter %1 gefunden werden. + Es konnte keine Ausgabe-Hilfsbibliothek unter %1 gefunden werden. - + Reading %1... Lese %1... - + Jumped. Stopped. Sprung ausgeführt/ Angehalten. - Run to Function finished. Stopped. - Ausgeführung bis zu Funktion beendet. Angehalten. + Ausgeführung bis zu Funktion beendet. Angehalten. - + Loading %1... Lade %1... - + Stopped at breakpoint. An Haltepunkt angehalten. - + Stopped: "%1" Angehalten: "%1" - + The debugger you are using identifies itself as: Der benutzte Debugger ist: @@ -3805,26 +3941,46 @@ Das Debuggen wird wahrscheinlich nicht richtig funktionieren. Es wird empfohlen, gdb 6.7 oder später zu benutzen. - Starting executable failed: - Das Starten der ausführbaren Datei schlug fehl: + Das Starten der ausführbaren Datei schlug fehl: - + Processing queued commands. Kommando-Warteschlange wird abgearbeitet. - - - + + Stopped. Angehalten. - + + Execution Error + Fehler bei der Ausführung + + + + Cannot continue debugged process: + + Der zu debuggende Prozess kann nicht fortgesetzt werden: + + + + + The debugging helper library was not found at %1. + Die Ausgabe-Hilfsbibliothek konnte nicht unter %1 gefunden werden. + + + + Unable to start gdb '%1': %2 + Der gdb-Debugger '%1' kann nicht ausgeführt werden: %2 + + + Cannot find debugger initialization script Das Initalisierungsskript konnte nicht gefunden werden @@ -3834,30 +3990,29 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Auf die in den Debugger-Einstellungen angegebene Skriptdatei '%1' kann nicht zugegriffen werden. Wenn kein Skript benötigt wird, können Sie die Einstellung rücksetzen, um diese Warnung zu umgehen. - + Unable to run '%1': %2 '%1' kann nicht ausgeführt werden: %2 - + <unknown> End address of loaded module <unbekannt> - + Retrieving data for stack view... Daten der Stack-Anzeige werden empfangen... - <not in scope> Variable - <nicht im Bereich> + <nicht im Bereich> - + Retrieving data for watch view (%n requests pending)... Daten der für die Anzeige der lokalen Variablen werden empfangen (noch eine austehende Anfrage) ... @@ -3865,7 +4020,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. - + <%n items> In string list @@ -3874,7 +4029,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. - + Finished retrieving data. Alle Daten erhalten. @@ -3892,17 +4047,17 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. - + An unknown error in the Gdb process occurred. Im Gdb-Prozess trat ein unbekannter Fehler auf. - + Running... Läuft... - + Stop requested... Stop angefordert... @@ -3918,12 +4073,11 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Fehler bei Ausführung: %1 - Function reached. Stopped. - Die Funktion wurde erreicht. Angehalten. + Die Funktion wurde erreicht. Angehalten. - + Program exited with exit code %1. Das Programm wurde beendet, Rückgabewert %1. @@ -3938,17 +4092,16 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Das Programm wurde normal beendet. - Starting executable failed - Das Starten der ausführbaren Datei schlug fehl + Das Starten der ausführbaren Datei schlug fehl - + Continuing after temporary stop... Setze nach temporärem Anhalten fort... - + Running requested... Fortsetzung angefordert... @@ -3973,7 +4126,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Einzelschritt angefordert... - + Step next instruction requested... Einzelschritt über Anweisung angefordert... @@ -3983,34 +4136,37 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Ausführung bis Zeile %1 angefordert... - + Run to function %1 requested... Ausführung bis Funktion %1 angefordert... - + + Jumping out of bogus frame... + Verlasse ungültigen Stack-Frame... + + + Custom dumper setup: %1 Ausgabe-Hilfsbibliothek-Initialisierung: %1 - + <0 items> <leer> - %1 <shadowed %2> Variable %1 is the variable name, %2 is a simple count - %1 <überlagert %2> + %1 <überlagert %2> - + <shadowed> - Type of local variable or parameter shadowed by another <überlagert> - + <n/a> <k.a.> @@ -4026,76 +4182,94 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. <keine Angabe> - Unknown error: - Unbekannter Fehler: + Unbekannter Fehler: - Dumper injection loading triggered (%1)... - Das Laden der Ausgabe-Hilfsbibliothek (%1) per Injektion wurde gestartet... + Das Laden der Ausgabe-Hilfsbibliothek (%1) per Injektion wurde gestartet... - Dumper loading (%1) failed: %2 - Das Laden der Ausgabe-Hilfsbibliothek (%1) schlug fehl: %2 + Das Laden der Ausgabe-Hilfsbibliothek (%1) schlug fehl: %2 - Loading dumpers via debugger call (%1)... - Lade die Ausgabe-Hilfsbibliothek (%1) per Debugger-Aufruf... + Lade die Ausgabe-Hilfsbibliothek (%1) per Debugger-Aufruf... - + Disassembler failed: %1 Fehler beim Disassemblieren: %1 - + + Gdb I/O Error + Gdb Ein/Ausgabefehler + + + + Unexpected Gdb Exit + Gdb unerwartet beendet + + + + The gdb process exited unexpectedly (%1). + Der Gdb-Prozess wurde plötzlich beendet (%1). + + + + crashed + abgestürzt + + + + code %1 + Rückgabewert %1 + + + Adapter start failed Der Start des Adapters schlug fehl - Inferior start preparation failed - Die Vorbereitung des zu debuggenden Prozesses schlug fehl + Die Vorbereitung des zu debuggenden Prozesses schlug fehl - Inferior prepared for startup. - Zu debuggender Prozess vorbereitet. + Zu debuggender Prozess vorbereitet. - + Setting breakpoints... Setze Haltepunkte... - + Starting inferior... Starte zu debuggenden Prozess... - + Inferior start failed Der Start des zu debuggenden Prozesses schlug fehl - + Inferior shutdown failed Das Beenden des zu debuggenden Prozesses schlug fehl - + Adapter crashed Der Adapter ist abgestürzt - Adapter shutdown failed - Das Beenden des Adapter schlug fehl + Das Beenden des Adapter schlug fehl @@ -4251,12 +4425,12 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugger::Internal::PlainGdbAdapter - + Cannot set up communication with child process: %1 Die Kommunikation mit dem untergeordneten Prozesss konnte nicht hergestellt werden: %1 - + Starting executable failed: Das Starten der ausführbaren Datei schlug fehl: @@ -4332,12 +4506,16 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugger::Internal::RemoteGdbAdapter - The upload process failed to start. Either the invoked script '%1' is missing, or you may have insufficient permissions to invoke the program. - Das Hochladen konnte nicht gestartet weden. Entweder fehlt das Skript '%1', oder die Berechtigungen sind nicht ausreichend. + Das Hochladen konnte nicht gestartet weden. Entweder fehlt das Skript '%1', oder die Berechtigungen sind nicht ausreichend. - + + The upload process failed to start. Shell missing? + Das Hochladen schlug fehl. Eine mögliche Ursache könnte ein fehlendes Shell-Programm sein. + + + The upload process crashed some time after starting successfully. Das Hochladen ist nach dem Starten abgestürzt. @@ -4372,7 +4550,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Der Adapter ist veraltet; er unterstützt den asynchronen Modus nicht. - + Starting remote executable failed: Das Starten der ausführbaren Datei auf dem entfernten Rechner schlug fehl: @@ -4434,7 +4612,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugger::Internal::StackHandler - + ... @@ -4444,7 +4622,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. <Mehr> - + Address: Adresse: @@ -4480,7 +4658,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Bis: - + Level Tiefe @@ -4620,12 +4798,12 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugger::Internal::ThreadsWindow - + Thread Thread - + Adjust column widths to contents Spaltenbreite an Inhalt anpassen @@ -4638,10 +4816,21 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugger::Internal::TrkGdbAdapter - + + Process started, PID: 0x%1, thread id: 0x%2, code segment: 0x%3, data segment: 0x%4. + Der Prozess wurde gestartet, PID: 0x%1, Thread-Id: 0x%2, Code-Segment: 0x%3, Datensegment: 0x%4. + + + + Connecting to TRK server adapter failed: + + Die Verbindung zum TRK-Server-Adapter schlug fehl: + + + Connecting to trk server adapter failed: - Die Verbindung zum Trk-Server-Adapter schlug fehl: + Die Verbindung zum Trk-Server-Adapter schlug fehl: @@ -4691,15 +4880,21 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugger::Internal::WatchData - + + <not in scope> <nicht im Bereich> + + + %1 <shadowed %2> + %1 <überlagert %2> + Debugger::Internal::WatchHandler - + Expression Ausdruck @@ -4724,12 +4919,12 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Interner Name - + <Edit> <Editieren> - + Root Wurzelelement @@ -4749,7 +4944,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Überwachte Ausdrücke - + Value Wert @@ -4767,7 +4962,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugger::Internal::WatchModel - + decimal dezimal @@ -4787,7 +4982,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. oktal - + Name Name @@ -4830,12 +5025,17 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Format für den Ausdruck ändern - + Open memory editor... Speicher-Editor öffnen... - + + Refresh code model snapshot + Code-Modell Stand auf aktuellen Stand bringen. + + + Adjust column widths to contents Spaltenbreite an Inhalt anpassen @@ -4845,7 +5045,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Spaltenbreite immer an Inhalt anpassen - + Insert new watch item Neuen Überwachten Ausdruck einfügen @@ -4855,7 +5055,7 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Widget zwecks Überwachung ausgewählen - + Open memory editor at %1 Speicher-Editor bei %1 öffnen @@ -4910,6 +5110,16 @@ Es wird empfohlen, gdb 6.7 oder später zu benutzen. Debugging helper Ausgabe-Hilfsbibliothek + + + Makes use of Qt Creator's code model to find out if a variable has already been assigned a value at the point the debugger interrupts. + Benutzt das Code-Modell von Qt Creator um herauszufinden, ob eine Variable an der Stelle der Unterbrechung durch den Debugger bereits einen Wert hat. + + + + Use code model + Code-Modell verwenden + DependenciesModel @@ -5557,7 +5767,7 @@ Grund: %3 FakeVim::Internal::FakeVimHandler - + Not implemented in FakeVim In FakeVim nicht implementiert @@ -5577,7 +5787,7 @@ Grund: %3 %1Alle - + File '%1' exists (add ! to override) Die '%1' existiert bereits (Fügen Sie ! an, um sie zu überschreiben) @@ -5645,7 +5855,7 @@ Grund: %3 Älteste Änderung erreicht - + Already at newest change Letzte Änderung erreicht @@ -6240,7 +6450,7 @@ Grund: %3 GenericProjectManager::Internal::GenericMakeStepConfigWidget - + Override %1: Überschreibe %1: @@ -7427,7 +7637,12 @@ Grund: %3 Ctrl+0 - + + Go to Help Mode + Schalte in Hilfsmodus + + + Previous Vorige @@ -7892,7 +8107,7 @@ in your .pro file. NameDemanglerPrivate - + Premature end of input @@ -7902,7 +8117,7 @@ in your .pro file. - + Invalid name @@ -7968,7 +8183,7 @@ in your .pro file. - + Invalid type @@ -7989,13 +8204,13 @@ in your .pro file. - - + + Invalid unqualified-name - + Invalid operator-name '%s' @@ -8006,19 +8221,19 @@ in your .pro file. - + Invalid pointer-to-member-type - + - + Invalid substitution - + Invalid substitution: element %1 was requested, but there are only %2 @@ -8028,14 +8243,14 @@ in your .pro file. - + Invalid special-name - + Invalid local-name @@ -8172,8 +8387,12 @@ p, li { white-space: pre-wrap; } + Code Pasting + Code Pasting + + CodePaster - CodePaster + CodePaster @@ -8890,7 +9109,7 @@ p, li { white-space: pre-wrap; } ProjectExplorer::ApplicationLauncher - + Failed to start program. Path or permissions wrong? Das Programm konnte nicht gestartet werden. Möglicherweise stimmt der Pfad nicht oder die Berechtigungen sind sind ausreichend? @@ -9703,12 +9922,17 @@ Fehler: %2 Sitzung fortführen - + %1 (last session) %1 (zuletzt benutzt) - + + %1 (current session) + %1 (aktuelle Sitzung) + + + New Project... Neues Projekt... @@ -10350,7 +10574,7 @@ unter Versionsverwaltung (%2) gestellt werden? Warning - Warnung + Warnung @@ -10417,7 +10641,7 @@ unter Versionsverwaltung (%2) gestellt werden? QmlEditor::Internal::QmlEditorPlugin - + Qt Qt @@ -10489,7 +10713,7 @@ unter Versionsverwaltung (%2) gestellt werden? Projekte - + The project %1 could not be opened. Das Projekt %1 konnte nicht geöffnet werden. @@ -10497,7 +10721,7 @@ unter Versionsverwaltung (%2) gestellt werden? QmlProjectManager::Internal::QmlNewProjectWizardDialog - + New QML Project Neues QML-Projekt @@ -10557,7 +10781,7 @@ unter Versionsverwaltung (%2) gestellt werden? QmlProjectManager::Internal::QmlRunConfiguration - + QML Viewer QML-Betrachter @@ -10971,7 +11195,7 @@ unter Versionsverwaltung (%2) gestellt werden? Öffnen - + Tutorials Anleitungen @@ -11016,7 +11240,42 @@ unter Versionsverwaltung (%2) gestellt werden? Beispiel wählen... - + + Copy Project to writable Location? + Soll das Projekt in ein schreibbares Verzeichnis kopiert werden? + + + + <p>The project you are about to open is located in the write-protected location:</p><blockquote>%1</blockquote><p>Please select a writable location below and click "Copy Project and Open" to open a modifiable copy of the project or click "Keep Project and Open" to open the project in location.</p><p><b>Note:</b> You will not be able to alter or compile your project in the current location.</p> + <p>Das zu öffnende Projekt befindet sich in einem schreibgeschützten Verzeichnis:</p><blockquote>%1</blockquote><p>Bitte geben Sie ein schreibbares Verzeichnis an und wählen dann "Projekt kopieren und öffnen", um eine modifizierbare Kopie des Projektes erhalten, oder "Projekt beibehalten und öffnen", um das Projekt im gegenwärtigen Verzeichnis zu öffnen</p><p><b>Hinweis:</b> Im gegenwärtigen.Verzeichnis kann das Projekt weder compiliert noch modifiziert werden.</p> + + + + &Location: + &Verzeichnis: + + + + &Copy Project and Open + Projekt &kopieren und öffnen + + + + &Keep Project and Open + Projekt &beibehalten und öffnen + + + + Warning + Warnung + + + + The specified location already exists. Please specify a valid location. + Das angegebene Verzeichnis existiert bereits. Bitte geben Sie ein gültiges Verzeichnis an. + + + Cmd Shortcut key @@ -11042,7 +11301,6 @@ unter Versionsverwaltung (%2) gestellt werden? You can show and hide the side bar using <tt>%1+0<tt>. - %1 gets replaced by Alt (Win/Unix) or Cmd (Mac) Sie können die Seitenleiste mit <tt>%1+0<tt> anzeigen oder zuklappen. @@ -11078,7 +11336,6 @@ unter Versionsverwaltung (%2) gestellt werden? You can switch between the output pane by hitting <tt>%1+n</tt> where n is the number denoted on the buttons at the window bottom:<ul><li>1 - Build Issues</li><li>2 - Search Results</li><li>3 - Application Output</li><li>4 - Compile Output</li></ul> - %1 gets replaced by Alt (Win/Unix) or Cmd (Mac) Sie können ywischen den Ausgabepanelen umschalten, in dem Sie <tt>%1+n</tt> drücken, wobei n die Zahl ist, die auf den Schaltflächen am unteren Fensterrand befindet: <ul><li>1 - Build-Probleme</li><li>2 - Suchergebnisse</li><li>3 - Ausgabe der Anwendung</li><li>4 - Kompilierung</li></ul> @@ -11187,7 +11444,7 @@ unter Versionsverwaltung (%2) gestellt werden? Qt4ProjectManager::Internal::MakeStepFactory - + Make Make @@ -11342,9 +11599,14 @@ unter Versionsverwaltung (%2) gestellt werden? Qt4ProjectManager::Internal::ProjectLoadWizard - Import existing settings - Existierende Einstellungen importieren + Existierende Einstellungen importieren + + + + + Import existing build settings + Existierende Build-Einstellungen importieren. @@ -11493,13 +11755,13 @@ unter Versionsverwaltung (%2) gestellt werden? Shadow-Build-Verzeichnis - - + + Default Qt Version (%1) Vorgabe-Qt-Version (%1) - + No Qt Version set Es ist keine Qt-Version gesetzt @@ -11628,7 +11890,7 @@ unter Versionsverwaltung (%2) gestellt werden? Qt4ProjectManager::Internal::QtOptionsPageWidget - + <specify a name> <Geben Sie einen Namen an> @@ -11648,12 +11910,21 @@ unter Versionsverwaltung (%2) gestellt werden? Wählen Sie das MinGW-Verzeichnis aus - Select "x86build" Directory from Carbide Install - Geben Sie das "x86build"-Verzeichnis aus der Carbide-Installation an + Geben Sie das "x86build"-Verzeichnis aus der Carbide-Installation an - + + Select Carbide Install Directory + Carbide-Installationsordner auswählen + + + + Select S60 SDK Root + Hauptordner des S60 SDK auswählen + + + Auto-detected Automatisch bestimmt @@ -11663,7 +11934,7 @@ unter Versionsverwaltung (%2) gestellt werden? Benutzerdefiniert - + Building helpers Ausgabe-Hilfsbibliothek @@ -11674,7 +11945,7 @@ unter Versionsverwaltung (%2) gestellt werden? <html><body><table><tr><td>Datei:</td><td><pre>%1</pre></td></tr><tr><td>Letzte Änderung:</td><td>%2</td></tr><tr><td>Größe:</td><td>%3 Bytes</td></tr></table></body></html> - + The Qt Version identified by %1 is not installed. Run make install Die Qt-Version %1 ist nicht installiert. Führen Sie make install aus @@ -11765,9 +12036,8 @@ p, li { white-space: pre-wrap; } <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#ff0000;">Die MSVC-Version konnte nicht bestimmt werden.</span></p></body></html> - MWC Directory: - MWC-Verzeichnis: + MWC-Verzeichnis: @@ -11779,6 +12049,16 @@ p, li { white-space: pre-wrap; } QMake Location: QMake-Pfad: + + + S60 SDK: + S60 SDK: + + + + Carbide Directory: + Carbide-Ordner: + Qt4ProjectManager::Internal::QtWizard @@ -11791,7 +12071,7 @@ p, li { white-space: pre-wrap; } Qt4ProjectManager::Internal::S60DeviceDebugRunControl - + Warning: Cannot locate the symbol file belonging to %1. Warnung: Die zu %1 gehörige Symboldatei konnte nicht gefunden werden. @@ -11809,17 +12089,17 @@ p, li { white-space: pre-wrap; } Qt4ProjectManager::Internal::S60DeviceRunConfiguration - + QtS60DeviceRunConfiguration QtS60DeviceRunConfiguration - + Could not parse %1. The QtS60 Device run configuration %2 can not be started. %1 konnte nicht ausgewertet werden. Die Qt S60-Ausführungskonfiguration %2 kann nicht gestartet werden. - + %1 on Symbian Device %1 auf Symbian-Gerät @@ -11827,7 +12107,7 @@ p, li { white-space: pre-wrap; } Qt4ProjectManager::Internal::S60DeviceRunConfigurationFactory - + %1 on Symbian Device %1 auf Symbian-Gerät @@ -11835,7 +12115,7 @@ p, li { white-space: pre-wrap; } Qt4ProjectManager::Internal::S60DeviceRunConfigurationWidget - + Self-signed certificate Selbstsigniertes Zertifikat @@ -11845,22 +12125,32 @@ p, li { white-space: pre-wrap; } Benutzerdefiniertes Zertifikat: - + Name: Name: - + + Device: + Gerät: + + + Install File: Installationspaket: - + Device on Serial Port: Gerät auf serieller Schnittstelle: - + + Queries the device for information + Fragt Informationen vom Gerät ab + + + Choose certificate file (.cer) Geben Sie eine Datei mit einem Zertifikat (.cer) an @@ -11874,11 +12164,37 @@ p, li { white-space: pre-wrap; } Key file: Datei mit Schlüssel: + + + <No Device> + Summary text of S60 device run configuration + <Kein Gerät angeschlossen> + + + + (custom certificate) + (benutzerdefiniertes Zertifikat) + + + + (self-signed certificate) + (selbstsigniertes Zertifikat) + + + + Summary: Run on '%1' %2 + Führe auf '%1' aus %2 + + + + Connecting... + Verbinde... + Qt4ProjectManager::Internal::S60DeviceRunControl - + Could not start application: %1 Die Anwendung konnte nicht gestartet werden: %1 @@ -11901,17 +12217,29 @@ p, li { white-space: pre-wrap; } Qt4ProjectManager::Internal::S60DeviceRunControlBase - + + Could not connect to phone on port '%1': %2 +Check if the phone is connected and App TRK is running. + Es konnte keine Verbindung zum Gerät über den Port '%1' hergestellt werden: %2 +Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' läuft. + + + Could not install from package %1 on device: %2 Das Installation des Pakets %1 auf dem Gerät schlug fehl: %2 - + Creating %1.sisx ... Erstelle %1.sisx ... - + + There is no device plugged in. + Es ist kein Gerät angeschlossen. + + + Executable file: %1 Ausführbare Datei: %1 @@ -11922,12 +12250,12 @@ p, li { white-space: pre-wrap; } - + %1 %2 %1 %2 - + Could not read template package file '%1' Die Vorlagedatei für die Paketbeschreibung ('%1') konnte nicht gelesen werden @@ -11938,26 +12266,25 @@ p, li { white-space: pre-wrap; } - + An error occurred while creating the package. Bei der Erstellung des Installationspakets trat ein Fehler auf. - + Package: %1 Deploying application to '%2'... Installationspaket: %1 Installiere Anwendung auf '%2'... - Could not connect to phone on port '%1': %2 Check if the phone is connected and the TRK application is running. - Die Verbindung zum Gerät über den Port '%1' konnte nicht hergestellt werden: %2 + Die Verbindung zum Gerät über den Port '%1' konnte nicht hergestellt werden: %2 Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' läuft. - + Could not create file %1 on device: %2 Die Datei %1 konnte nicht auf dem Gerät erzeugt werden: %2 @@ -11973,6 +12300,11 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' + Could not connect to App TRK on device: %1. Restarting App TRK might help. + Es konnte keine Verbindung zu App TRK über den Port '%1' hergestellt werden. Bitte versuchen Sie, App TRK neu zu starten. + + + Copying install file... Kopiere Installationspaket... @@ -11987,7 +12319,22 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Installiere Anwendung... - + + Waiting for App TRK + Warte auf App TRK + + + + Please start App TRK on %1. + Bitte starten Sie App TRK auf %1. + + + + Canceled. + Abgebrochen. + + + Failed to start %1. %1 konnte nicht gestartet werden. @@ -12030,7 +12377,7 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Aktualisieren - + S60 SDKs S60 SDKs @@ -12038,7 +12385,7 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::Internal::S60DevicesWidget - + No Qt installed Qt ist nicht installiert' @@ -12046,7 +12393,7 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::Internal::S60EmulatorRunConfiguration - + %1 in Symbian Emulator %1 im Symbian-Emulator @@ -12064,7 +12411,7 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::Internal::S60EmulatorRunConfigurationFactory - + %1 in Symbian Emulator %1 im Symbian-Emulator @@ -12072,20 +12419,25 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::Internal::S60EmulatorRunConfigurationWidget - + Name: Name: - + Executable: Ausführbare Datei: + + + Summary: Run %1 in emulator + Führe %1 im Emulator aus + Qt4ProjectManager::Internal::S60EmulatorRunControl - + Starting %1... Starte %1... @@ -12103,7 +12455,7 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::Internal::S60Manager - + Run in Emulator Im Emulator ausführen @@ -12219,12 +12571,12 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::MakeStep - + <font color="#ff0000">Could not find make command: %1 in the build environment</font> <font color="#ff0000">Das make-Kommando %1 konnte in der Build-Umgebung nicht gefunden werden</font> - + <font color="#0000ff"><b>No Makefile found, assuming project is clean.</b></font> <font color="#0000ff"><b>Es wurde kein Makefile gefunden; das Projekt ist offenbar im bereinigten Zustand.</b></font> @@ -12232,12 +12584,12 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::MakeStepConfigWidget - + Override %1: Überschreibe %1: - + <b>Make Step:</b> %1 not found in the environment. <b>Make-Schritt:</b> %1 konnte in der Umgebung nicht gefunden werden. @@ -12361,7 +12713,7 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt4ProjectManager::QtVersionManager - + <not found> <nicht gefunden> @@ -12371,26 +12723,53 @@ Bitte prüfen Sie, ob das Gerät verbunden ist und die Anwendung 'TRK' Qt in PATH Qt aus PATH + + + Name: + Name: + + + + Source: + Ordner: + + + + mkspec: + mkspec: + + + + qmake: + qmake: + + + + Default: + Vorgabe: + + + + Compiler: + Compiler: + + + + Version: + Version: + + + + Debugging helper: + Ausgabe-Hilfsbibliothek: + - QtDumperHelper + QApplication - - Found a too-old version of the debugging helper library (%1); version %2 is required. - Es wurde eine veraltete Version (%1) der Ausgabe-Hilfsbibliothek gefunden. Version %2 ist erforderlich. - - - - %n known types, Qt version: %1, Qt namespace: %2 Dumper version: %3 - - Ein unterstützter Datentyp, Qt-Version: %1, Namensraum: %2, Version: %3 - %n unterstützte Datentypen, Qt-Version: %1, Namensraum: %2, Version: %3 - - - - - <none> - <kein> + + The Qt Version has no toolchain. + Dieser Qt-Version ist keine Toolchain zugeordnet. @@ -12801,39 +13180,32 @@ Um es abzurufen, tippen Sie das Kürzel im Locator, gefolgt von einem Leerzeich Locator::Internal::SettingsDialog - Configure Filters - Filter konfigurieren + Filter konfigurieren - Add - Hinzufügen + Hinzufügen - Remove - Entfernen + Entfernen - min - minuten + minuten - Refresh now! - Jetzt aktualisieren! + Jetzt aktualisieren! - Edit... - Ändern... + Ändern... - Refresh Interval: - Aktualisierungsintervall: + Aktualisierungsintervall: @@ -13634,7 +14006,7 @@ Um es abzurufen, tippen Sie das Kürzel im Locator, gefolgt von einem Leerzeich SymbolGroup - + Out of scope Nicht im Bereich @@ -13692,7 +14064,7 @@ Um es abzurufen, tippen Sie das Kürzel im Locator, gefolgt von einem Leerzeich TextEditor::BaseTextEditorEditable - + Line: %1, Col: %2 Zeile: %1, Spalte: %2 @@ -14789,7 +15161,7 @@ Die folgenden Encodings scheinen der Datei zu entsprechen: Utils::NewClassWidget - + Invalid base class name Der Name der Basisklasse ist ungültig @@ -14843,6 +15215,11 @@ Die folgenden Encodings scheinen der Datei zu entsprechen: Path: Pfad: + + + Inherits QObject + Erbt von Klasse QObject + Utils::PathChooser @@ -14857,7 +15234,7 @@ Die folgenden Encodings scheinen der Datei zu entsprechen: Auswählen... - + Choose a directory Wählen Sie ein Verzeichnis @@ -15363,7 +15740,7 @@ p, li { white-space: pre-wrap; } Formular - + News From the Qt Labs Neuigkeiten aus den Qt Labs @@ -15379,7 +15756,7 @@ p, li { white-space: pre-wrap; } - + Qt Home Qt Home @@ -15399,6 +15776,11 @@ p, li { white-space: pre-wrap; } Qt Centre + + + Qt Apps + + Qt for Symbian at Forum Nokia @@ -15434,7 +15816,7 @@ Qt Centre Feedback - + Welcome Willkommen @@ -15483,15 +15865,19 @@ Qt Centre Debugger::Internal::TrkOptionsPage - Symbian Trk - Symbian-Trk + Symbian-Trk + + + + Symbian TRK + Symbian TRK Debugger::Internal::AbstractGdbAdapter - + The Gdb process could not be stopped: %1 Der Gdb-Prozess konnte nicht angehalten werden: @@ -15527,4 +15913,191 @@ Qt Centre %1 + + Debugger::Internal::TermGdbAdapter + + + Debugger Error + Debugger-Fehler + + + + QmlParser + + + Illegal character + Ungültiges Zeichen + + + + Unclosed string at end of line + Zeichenkette am Zeilenende nicht geschlossen + + + + Illegal escape squence + Ungültige Escape-Sequenz + + + + Illegal unicode escape sequence + Ungültige Unicode-Escape-Sequenz + + + + Unclosed comment at end of file + Kommentar am Dateiende nicht geschlossen + + + + Illegal syntax for exponential number + Ungültige Syntax des Exponenten der Zahl + + + + Identifier cannot start with numeric literal + Bezeichner kann nicht mit numerischem Zeichen beginnen + + + + Unterminated regular expression literal + Regulärer Ausdruck nicht abgeschlossen + + + + Invalid regular expression flag '%0' + Ungültiger Modifizierer für regulären Ausdruck '%0' + + + + Unexpected token '%1' + Unerwartetes Zeichen '%1' + + + + + Expected token '%1' + Erwartet: '%1' + + + + Syntax error + Syntaxfehler + + + + Qt4ProjectManager::Internal::S60Devices::Device + + + Id: + Id: + + + + Name: + Name: + + + + EPOC: + EPOC: + + + + Tools: + Tools: + + + + Qt: + Qt: + + + + trk::BluetoothListener + + + %1: Stopping listener %2... + %1: Halte Prozess %2 an ... + + + + %1: Starting Bluetooth listener %2... + %1: Starte Prozess %2... + + + + Unable to run '%1': %2 + '%1' kann nicht ausgeführt werden: %2 + + + + %1: Bluetooth listener running (%2). + %1: Prozess läuft (%2). + + + + %1: Process %2 terminated with exit code %3. + %1: Der Prozess %2 wurde beendet, Rückgabewert %3. + + + + %1: Process %2 crashed. + %1: Der Prozess %2 ist abgestürzt. + + + + %1: Process error %2: %3 + %1: Fehler bei Prozess %2: %3 + + + + trk::promptStartCommunication + + + Connection on %1 canceled. + Die Verbindung auf %1 wurde abgebrochen. + + + + Waiting for App TRK + Warte auf App TRK + + + + Waiting for App TRK to start on %1... + Warte auf App TRK an %1... + + + + Waiting for Bluetooth Connection + Warte auf Bluetooth-Verbindung + + + + Connecting to %1... + Verbinde zu %1... + + + + trk::BaseCommunicationStarter + + + %1: timed out after %n attempts using an interval of %2ms. + + %1: Zeitüberschreitung nach einem Versuch (Interval %2ms). + %1: Zeitüberschreitung nach %n Versuchen (Interval %2ms). + + + + + %1: Connection attempt %2 succeeded. + %1: Verbindung im Versuch %2 hergestellt. + + + + %1: Connection attempt %2 failed: %3 (retrying)... + %1: Verbindung im Versuch %2 fehlgeschlagen: %3 (wird wiederholt)... + + diff --git a/share/qtcreator/translations/qtcreator_fr.ts b/share/qtcreator/translations/qtcreator_fr.ts index e77be508a0c..60d3782051b 100644 --- a/share/qtcreator/translations/qtcreator_fr.ts +++ b/share/qtcreator/translations/qtcreator_fr.ts @@ -4,7 +4,7 @@ Application - + Failed to load core: %1 traduire core ? Échec dans le chargement du core : %1 @@ -17,12 +17,13 @@ Could not find 'Core.pluginspec' in %1 - + 'Core.pluginspec' introuvable dans %1 Qt Creator - Plugin loader messages - + Un s à plugin ? + Qt Creator - Messages du chargeur de plugin Couldn't find 'Core.pluginspec' in %1 @@ -355,7 +356,7 @@ Clear system environment - + Nettoyer l'environnement système @@ -368,23 +369,23 @@ Create - + Créer New configuration - + Nouvelle configuration New Configuration Name: - + Nom de la nouvelle configuration : CMakeProjectManager::Internal::CMakeBuildSettingsWidget - + &Change &Modifier @@ -471,22 +472,23 @@ Please specify the path to the cmake executable. No cmake executable was found in the path. - + Traduction de path, ici chemin ? + Veuillez spécifier le chemin de l'exécutable cmake. Aucun exécutable cmake n'a été trouvé dans le chemin. The cmake executable (%1) does not exist. - + L'exécutable cmake (%1) n'existe pas. The path %1 is not a executable. - + %1 n'est pas le chemin d'un exécutable. The path %1 is not a valid cmake. - + %1 n'est pas un cmake valide. @@ -501,7 +503,8 @@ The directory %1 already contains a cbp file, which is recent enough. You can pass special arguments or change the used toolchain here and rerun cmake. Or simply finish the wizard directly - + toolchain -> chaine de compilation ? terminer ou terminez ? + Le répertoire %1 contient déjà un fichier cbp, ce qui est assez récent. Vous pouvez passer des arguments spéciaux ou changez la chaine de compilation utilisée ici et réexécuter cmake. Ou simplement terminer l'assistant directement @@ -526,28 +529,28 @@ NMake Generator - + Générateur NMake NMake Generator (%1) - + Générateur NMake (%1) MinGW Generator - + Générateur MinGW - + No valid cmake executable specified. - + L'exécutable cmake spécifié est invalide. CMakeProjectManager::Internal::CMakeSettingsPage - + CMake CMake @@ -561,25 +564,26 @@ CMakeProjectManager::Internal::MakeStepConfigWidget - + Additional arguments: - Arguments supplémentaires : + Arguments supplémentaires : Targets: - Cibles : + Cibles : <b>Make:</b> %1 %2 - + Traduire Make ? Construire ? + <b>Make : </b>%1 %2 CMakeProjectManager::Internal::ShadowBuildPage - + Please enter the directory in which you want to build your project. Veuillez spécifier le répertoire où vous voulez compiler votre projet. @@ -591,7 +595,7 @@ Build directory: - Répertoire de compilation : + Répertoire de compilation : @@ -651,7 +655,7 @@ <html><body><p>Specify the path to the <a href="%1">Debugging Tools for Windows</a> (%2) here.</p><p><b>Note:</b> Restarting Qt Creator is required for these settings to take effect.</p></p></body></html> Label text for path configuration. %2 is "x-bit version". - <html><body><p>Spécifiez le chemin vers l'<a href="%1">outil de déboguage Windows</a> (%2) ici.</p><p><b>Note:</b> Il est nécessaire de redémarrer Qt Creator pour que ces changements prennent effet.</p></p></body></html> + <html><body><p>Spécifiez le chemin vers l'<a href="%1">outil de déboguage Windows</a> (%2) ici.</p><p><b>Note:</b> Il est nécessaire de redémarrer Qt Creator pour que ces changements prennent effet.</p></p></body></html> @@ -666,7 +670,7 @@ Other options - + Autres options @@ -695,9 +699,13 @@ CodePaster::CodepasterPlugin - &CodePaster - &CodePaster + &CodePaster + + + + &Code Pasting + @@ -705,24 +713,24 @@ Coller le fragment... - + Alt+C,Alt+P - + Fetch Snippet... Récuperer le fragment... - + Alt+C,Alt+F - + This protocol supports no listing - + Ce protocole ne prend en charge aucune liste @@ -763,14 +771,14 @@ Protocol: - + Protocole : CodePaster::SettingsPage - + General Général @@ -795,14 +803,13 @@ - CodePaster CodePaster Default Protocol: - + Protocole par défaut : @@ -814,6 +821,11 @@ Pastebin.com + + + Code Pasting + + CommonOptionsPage @@ -876,12 +888,13 @@ Show a message box when receiving a signal - + message box -> message, boîte de message, fenêtre de message ? + Afficher un message à la réception d'un signal Use tooltips in main editor while debugging - + Utiliser les info-bulles dans l'éditeur principal lors du déboguage @@ -927,12 +940,12 @@ Open Link - Ouvrir le lien + Ouvrir le lien Open Link in New Tab - Ouvrir le lien dans un nouvel onglet + Ouvrir le lien dans un nouvel onglet @@ -940,17 +953,17 @@ Unable to create the directory %1. - Impossible de créer le répertoire %1. + Impossible de créer le répertoire %1. Unable to open %1 for writing: %2 - Impossible d'ouvrir %1 pour écrire : %2 + Impossible d'ouvrir %1 pour écrire : %2 Error while writing to %1: %2 - Erreur pendant l'écriture de %1 : %2 + Erreur pendant l'écriture de %1 : %2 @@ -958,39 +971,39 @@ File Generation Failure - Échec de la génération du fichier + Échec de la génération du fichier Existing files - Fichier existants + Fichiers existants Failed to open an editor for '%1'. - Échec de l'ouverture d'un éditeur pour '%1'. + Échec de l'ouverture d'un éditeur pour '%1'. [read only] - [lecture seule] + [lecture seule] [directory] - [répertoire] + [répertoire] [symbolic link] - [lien symbolique] + [lien symbolique] The project directory %1 contains files which cannot be overwritten: %2. - Le répertoire du projet %1 contient des fichiers qui ne peuvent être écrasés : + Le répertoire du projet %1 contient des fichiers qui ne peuvent être écrasés : %2. @@ -998,8 +1011,8 @@ The following files already exist in the directory %1: %2. Would you like to overwrite them? - Les fichiers suivants existent déjà dans le répertoire %1 : -%2, + Les fichiers suivants existent déjà dans le répertoire %1 : +%2. Voulez vous les écraser? @@ -1007,15 +1020,15 @@ Voulez vous les écraser? Core::EditorManager - + Revert to Saved Revenir à la version sauvegardée - + Close - Fermer + Fermer @@ -1024,7 +1037,7 @@ Voulez vous les écraser? - + Close Others Fermer les Autres Éditeurs @@ -1037,7 +1050,7 @@ Voulez vous les écraser? Document Précédent dans l'Historique - + Next Open Document in History @@ -1117,57 +1130,67 @@ Voulez vous les écraser? - + + Meta+E + + + + + Ctrl+E + + + + Split Scinder - - Ctrl+E,2 - - - - + Split Side by Side Scinder Verticalement - - Ctrl+E,3 - - - - + Remove Current Split Fermer la Vue Courante - - Ctrl+E,0 - - - - + Remove All Splits Fermer toutes les vues - - Ctrl+E,1 - - - - + Goto Other Split Changer de vue - - Ctrl+E,o + + %1,2 - + + %1,3 + + + + + %1,0 + + + + + %1,1 + + + + + %1,o + + + + &Advanced &Avancé @@ -1190,17 +1213,17 @@ Voulez vous les écraser? Cannot open file %1! - Impossible d'ouvrir le fichier %1! + Impossible d'ouvrir le fichier %1! Open File - Ouvrir le Fichier + Ouvrir le Fichier File is Read Only - Le Fichier est en Lecture Seule + Le Fichier est en Lecture Seule @@ -1214,17 +1237,17 @@ Voulez vous les écraser? - + Make writable Rendre Inscriptible - + Save as ... - Enregistrer sous... + Enregistrer sous... - + Failed! Échec! @@ -1242,12 +1265,12 @@ Voulez vous les écraser? <b>Warning:</b> You are changing a read-only file. - <b>Attention:</b> Vous apportez des modifications à un fichier en lecture seule. + <b>Attention:</b> Vous apportez des modifications à un fichier en lecture seule. Save %1 As... - Enregistrer %1 sous... + Enregistrer %1 sous... @@ -1262,7 +1285,7 @@ Voulez vous les écraser? Close %1 - Fermer %1 + Fermer %1 @@ -1282,7 +1305,7 @@ Voulez vous les écraser? Cancel - Annuler + Annuler @@ -1303,12 +1326,13 @@ Voulez vous les écraser? Cannot save file - + sauver ou sauvegarder ? + Impossible de sauver le fichier Cannot save changes to '%1'. Do you want to continue and lose your changes? - + Impossible de sauvegarder les modifications dans '%1'. Voulez vous continuer et perdre vos modifications? @@ -1323,7 +1347,7 @@ Voulez vous les écraser? Save File As - Enregistrer sous + Enregistrer sous @@ -1378,7 +1402,7 @@ Voulez vous les écraser? Previous Document - Document précédent + Document précédent @@ -1388,7 +1412,7 @@ Voulez vous les écraser? Next Document - Document suivant + Document suivant @@ -1398,33 +1422,32 @@ Voulez vous les écraser? Previous Group - Groupe précédent + Groupe précédent Next Group - Groupe suivant + Groupe suivant Move Document to Previous Group - Déplacer le document vers le groupe précédent + Déplacer le document vers le groupe précédent Move Document to Next Group - Déplacer le document vers le groupe suivant + Déplacer le document vers le groupe suivant Core::Internal::EditorView - - + Go Back - Précédent + Précédent - + Go Forward Suivant @@ -1480,70 +1503,71 @@ Voulez vous les écraser? Terminal: - Terminal : + Terminal : External editor: - Éditeur externe : + Éditeur externe : ? - ? + ? General - Général + Général Environment - Environnement + Environnement Variables - Variables + Variables When files are externally modified: - + modifié à l'extérieur ? + Quand un fichier a été modifié à l'extérieur : Always ask - + Demander quoi faire Reload all modified files - + Recharger tous les fichiers modifiés Ignore modifications - + Ignorer les modifications Core::Internal::MainWindow - + Qt Creator - Qt Creator + Qt Creator Output - Sortie + Sortie &File - &Fichier + &Fichier @@ -1580,22 +1604,22 @@ Voulez vous les écraser? &New File or Project... - + &Nouveau fichier ou projet... &Open File or Project... - + &Ouvrir le fichier ou le projet... &Open File With... - + &Ouvrir le fichier avec... Recent Files - Fichiers récents + Fichiers récents @@ -1685,12 +1709,12 @@ Voulez vous les écraser? Minimize - Minimiser + Minimiser Zoom - Zoom + Zoom @@ -1700,7 +1724,7 @@ Voulez vous les écraser? Full Screen - Plein écran + Plein écran @@ -1723,6 +1747,11 @@ Voulez vous les écraser? Title of dialog Nouveau... + + + Settings... + + Core::Internal::MessageOutputWindow @@ -1831,22 +1860,22 @@ Voulez vous les écraser? Output - Sortie + Sortie Clear - Effacer + Effacer Next Item - Élement suivant + Élement suivant Previous Item - Élement précédent + Élement précédent @@ -1859,7 +1888,7 @@ Voulez vous les écraser? Details - Détails + Détails @@ -1869,21 +1898,23 @@ Voulez vous les écraser? Close - Fermer + Fermer Installed Plugins - Plugins installés + Plugins installés Plugin Details of %1 + Détail sur le plugin %1 ? Détail sur plugin %1 Plugin Errors of %1 + Pas de s Erreurs du plugins %1 @@ -1904,22 +1935,22 @@ Voulez vous les écraser? Do not Save - + Ne pas enregistrer Save All - Tout enregistrer + Tout enregistrer Save - Enregistrer + Enregistrer Save Selected - Enregistrer la selection + Enregistrer la sélection @@ -1927,12 +1958,12 @@ Voulez vous les écraser? Keyboard - Clavier + Clavier Environment - Environnement + Environnement @@ -1961,7 +1992,7 @@ Voulez vous les écraser? Close - Fermer + Fermer @@ -1969,7 +2000,7 @@ Voulez vous les écraser? About Qt Creator - À propos de Qt Creator + À propos de Qt Creator @@ -2129,7 +2160,7 @@ Voulez vous les écraser? Switch to %1 mode - Basculer vers le mode %1 + Basculer vers le mode %1 @@ -2138,13 +2169,13 @@ Voulez vous les écraser? Exception at line %1: %2 %3 - Exception à la ligne %1 : %2 + Exception à la ligne %1 : %2 %3 Unknown error - Erreur inconnue + Erreur inconnue @@ -2152,7 +2183,7 @@ Voulez vous les écraser? New %1 - Nouveau %1 + Nouveau %1 @@ -2241,7 +2272,7 @@ Voulez vous les écraser? The process '%1' could not be started: %2 - Le processus '%1' ne peut pas être démarré : %2 + Le processus '%1' ne peut pas être démarré : %2 @@ -2342,7 +2373,7 @@ Voulez vous les écraser? Chemin : - + Invalid base class name Nom de la classe parente invalide @@ -2361,6 +2392,11 @@ Voulez vous les écraser? Invalid form file name: '%1' Nom du fichier d'interface invalide : '%1' + + + Inherits QObject + + Utils::PathChooser @@ -2375,14 +2411,14 @@ Voulez vous les écraser? Parcourir... - + Choose a directory - Selectionner un répertoire + Sélectionner un répertoire Choose a file - Sélectionner un fichier + Sélectionner un fichier @@ -2525,7 +2561,7 @@ Voulez vous les écraser? The unsaved file %1 has been changed outside Qt Creator. Do you want to reload it and discard your changes? - + @@ -2536,19 +2572,19 @@ Voulez vous les écraser? CppEditor::Internal::CPPEditor - + Sort alphabetically Trier par ordre alphabétique - + This change cannot be undone. - + Yes, I know what I am doing. - + Simplifier les déclarations Simplify Declarations @@ -2565,10 +2601,10 @@ Voulez vous les écraser? The header and source file names will be derived from the class name - Le nom du fichier source et du fichier d'en-tête seront dérivés du nom de la classe + Le nom du fichier source et du fichier d'en-tête seront dérivés du nom de la classe - + Configure... Configurer... @@ -2576,7 +2612,7 @@ Voulez vous les écraser? CppEditor::Internal::CppClassWizard - + Error while generating file contents. Erreur a la génération du contenu du fichier. @@ -2584,7 +2620,7 @@ Voulez vous les écraser? CppEditor::Internal::CppClassWizardDialog - + C++ Class Wizard Assistant de création de classe C++ @@ -2600,7 +2636,7 @@ Voulez vous les écraser? CppEditor::Internal::CppPlugin - + C++ @@ -2647,7 +2683,7 @@ Voulez vous les écraser? Find Usages - + Trouver des utilisations @@ -2657,7 +2693,7 @@ Voulez vous les écraser? Rename Symbol under Cursor - + Renommer le symbole sous le curseur @@ -2691,7 +2727,7 @@ Voulez vous les écraser? CppPreprocessor - + %1: No such file or directory %1 : aucun fichier ou répertoire de ce type @@ -2699,9 +2735,10 @@ Voulez vous les écraser? CppTools::Internal::CppModelManager - + Scanning - + Balayage ? + Numérisation @@ -2763,7 +2800,7 @@ Voulez vous les écraser? **************************************************************************/ /************************************************************************** -** modèle de licence Qt Creator +** Modèle de licence Qt Creator ** Mot-clés spéciaux: %USER% %DATE% %YEAR% ** Variables d'environnement : %$VARIABLE% ** Pour échaper un caractère pourcentage, utilisez '%%'. @@ -2777,7 +2814,7 @@ Voulez vous les écraser? Choose a location for the new license template file - + Choisir un nouveau fichier pour le modèle de license Choose a new license template file @@ -2791,7 +2828,7 @@ Voulez vous les écraser? Cannot write to %1: %2 - Impossible d'écrire %1 : %2 + Impossible d'écrire %1 : %2 @@ -2813,7 +2850,7 @@ Voulez vous les écraser? CppTools::Internal::CppToolsPlugin - + &C++ &C++ @@ -2827,35 +2864,31 @@ Voulez vous les écraser? CppTools::Internal::FindClassDeclarations - Search class - Rechercher la classe + Rechercher la classe - Class Declarations - Déclarations de classe + Déclarations de classe CppTools::Internal::FindFunctionCalls - Search functions - Rechercher fonctions + Rechercher les fonctions - Function calls - Appels de fonction + Appels de fonction CppTools::Internal::FunctionArgumentWidget - + %1 of %2 - %1 de %2 + %1 de %2 @@ -2863,15 +2896,15 @@ Voulez vous les écraser? Common - Commun + Commun Debugger - Débogueur + Débogueur - + <Encoding error> <Erreur d'encodage> @@ -2879,8 +2912,12 @@ Voulez vous les écraser? QtDumperHelper - Found a too-old version of the debugging helper library (%1); version %2 is required. + Une version trop ancienne de la bibliothèque d'aide au déboguage a été trouvé(%1); La version %2 est nécessaire. + + + + Found an outdated version of the debugging helper library (%1); version %2 is required. @@ -2894,13 +2931,13 @@ Voulez vous les écraser? <none> - + Debugger::Internal::AttachCoreDialog - + Select Executable Selectionner l'exécutable @@ -2938,20 +2975,12 @@ Voulez vous les écraser? Select start address - + Sélectionner l'adresse de départ Enter an address: - - - - - Debugger::MessageBox - - - Settings... - + Entrer une adresse : @@ -3028,7 +3057,7 @@ Voulez vous les écraser? Ignore Count: - Nombre de passages à ignorer : + Nombre de passages à ignorer : @@ -3063,12 +3092,12 @@ Voulez vous les écraser? Address - + Breakpoint will only be hit if this condition is met. - Le point d'arrêt ne sera respecté que si la condition est remplie. + Le point d'arrêt ne sera respecté que si la condition est remplie. @@ -3081,164 +3110,188 @@ Voulez vous les écraser? Breakpoints - + Points d'arrêt Delete breakpoint - + Supprimer le point d'arrêt Delete all breakpoints - + Supprimer tous les points d'arrêt Delete breakpoints of "%1" - + Supprimer les points d'arrêt de "%1" Delete breakpoints of file - + Supprimer les points d'arrêt du fichier Adjust column widths to contents - + Ajuster la largeur des colonnes au contenu Always adjust column widths to contents - + Toujours ajuster la largeur des colonnes au contenu Edit condition... - + Changer ou Modifier ? Condition ou Etat ? + Modifier l'état... Synchronize breakpoints - + Synchroniser les points d'arrêt Disable breakpoint - + Désactiver le point d'arrêt Enable breakpoint - + Activer le point d'arrêt Use short path - + Utiliser le chemin court Use full path - + Utiliser le chemin complet Set Breakpoint at Function... - + Placer un point d'arrêt à la fonction... Set Breakpoint at Function "main" - + Placer un point d'arrêt à la fonction "main" Conditions on Breakpoint %1 - + Condition au point d'arrêt %1 Debugger::Internal::CdbDebugEngine - + Unable to load the debugger engine library '%1': %2 - + Impossible de charger la bibliothèque de déboguage '%1': %2 The function "%1()" failed: %2 Function call failed - + La fonction "%1()" a échoué : %2 - + Unable to resolve '%1' in the debugger engine library '%2' + Impossible de résoudre '%1' dans la bibliothèque de déboguage '%2' + + + + Version: %1 - + + <html>The installed version of the <i>Debugging Tools for Windows</i> (%1) is rather old. Upgrading to version %2 is recommended for the proper display of Qt's data types.</html> + + + + + Debugger + Débogueur + + + The dumper library was not found at %1. - + The console stub process was unable to start '%1'. Attaching to core files is not supported! - + A noun could be better instead of Attacher + Attacher à un fichier core n'est pas supporté! Debugger running - + Débogueur en fonctionnement - + Attaching to a process failed for process id %1: %2 - + Impossible d'attacher au processsus d'id %1: %2 Unable to set the image path to %1: %2 - + Impossible de définir le chemin de l'image %1 : %2 Unable to create a process '%1': %2 - + Impossible de créer un processus '%1': %2 - + The process exited with exit code %1. - + Ou avec le code de sortie ? + Le processus s'est terminé et a retourné le code %1. Continuing with '%1'... - + Continue avec '%1'... Unable to continue: %1 - + Impossible de continuer : %1 Reverse stepping is not implemented. + L'échelonnage inversé n'est pas implémenté. + + + + Thread %1 cannot be stepped. Stepping %1 - + Intensification ? + Echellonage %1 - + Running to 0x%1... @@ -3248,7 +3301,7 @@ Voulez vous les écraser? - + Running up to %1:%2... @@ -3260,61 +3313,73 @@ Voulez vous les écraser? Jump to line is not implemented - + Aller à la ligne n'est pas implémenté Unable to assign the value '%1' to '%2': %3 - + Impossible d'assigner la valeur '%1' à '%2': %3 Unable to retrieve %1 bytes of memory at 0x%2: %3 - + Impossible de récupérer %1 octets de mémoire sur 0x%2 : %3 Cannot retrieve symbols while the debuggee is running. - + note: debuggee is not a typo + Les symboles ne peuvent pas être obtenus lorsque le processus débogué est en fonctionnement. Debugger Error + Erreur du débogueur + + + + Ignoring initial breakpoint... - - Stopped, current thread: %1 - - - - - Changing threads: %1 -> %2 - - - - - Thread %1: Missing debug information for top stack frame (%2). + + Interrupted in thread %1, current thread: %2 + + + Stopped, current thread: %1 + Arrêté, thread courant : %1 + + + + Changing threads: %1 -> %2 + Changement de threads:%1 ->%2 + + + + Thread %1: Missing debug information for top stack frame (%2). + stack frame ? + Thread %1 : Manque d'informations de débogage sur le haut de la pile ????(%2). + Thread %1: No debug information available (%2). - + Thread %1 : Aucune information de débogage disponible (%2). Debugger::Internal::CdbDumperHelper - + injection - + injection debugger call - + appel au débogueur @@ -3332,32 +3397,32 @@ Voulez vous les écraser? - + + Stopped / Custom dumper library initialized. + + + + Disabling dumpers due to debuggee crash... - + The debuggee does not appear to be Qt application. - + Initializing dumpers... - - Custom dumper library initialized. - - - - + The custom dumper library could not be initialized: %1 - + Querying dumpers for '%1'/'%2' (%3) @@ -3367,28 +3432,30 @@ Voulez vous les écraser? Cdb - Cdb + Cdb Autodetect - + Noun or verb? + Autodétecter "Debugging Tools for Windows" could not be found. - + "L'outil de débogage pour Windows" ne peut pas être trouvé. Checked: %1 - + Coché : +%1 Autodetection - + Autodétection @@ -3396,79 +3463,82 @@ Voulez vous les écraser? Symbol Server... - + Serveur de symbole... Adds the Microsoft symbol server providing symbols for operating system libraries.Requires specifying a local cache directory. - + Ajoute le serveur de symboles Microsoft pour fournir les symboles de la bilbiothèque du système d'exploitation. Exige de spécifier un répertoire local de cache. Pick a local cache directory - + Sélectionner un répertoire local de cache Debugger::Internal::DebugMode - + Debug - + Déboguer Debugger::DebuggerManager - + Continue - + Continue - + Interrupt - + Interrompre - + Reset Debugger - + Réinitialiser le débogueur Step Over - + Pas sur??? + Aller au dela Step Into - + Pas sur??? + Aller dans Step Out - + Pas sur ??? + Sortir de Run to Line - + Exécuter jusqu'à la ligne Run to Outermost Function - + Exécuter jusqu'à la fonction la plus éloigné Jump to Line - + Aller jusqu'à la ligne Toggle Breakpoint - + Basculer le point d'arrêt @@ -3481,95 +3551,110 @@ Voulez vous les écraser? - + Stopped. - + Arrêté. Running... - + En cours d'éxecution... Exited. - + Sorti. Changing breakpoint state requires either a fully running or fully stopped application. - + fully ? + Changer l'état d'un point d'arrêt nécessite soir une application en cours d'éxecution soi une application totalement arrêté. The application requires the debugger engine '%1', which is disabled. - + On traduit engine ou pas ? + L'application nécessite le débogueur '%1' qui est desactivé. - Debugging VS executables is currently not enabled. - + On traduit VS ? + Le débogage contre l'exécutable n'est actuellement pas activé. - + Starting debugger for tool chain '%1'... - + Lancer le débogueur pour la chaîne d'outils '%1'... Warning - + Alerte? + Avertissement Cannot debug '%1' (tool chain: '%2'): %3 - + Impossible de déboguer '%1' (chaîne d'outils : '%2') : %3 - + Save Debugger Log + Sauvegarderle log du débogueur + + + Turn helper usage off + Arrêter l'utilisation de l'assistant + + + The debugger did not find the debugging helper library. + Le débogueur n'a pas trouvé la bibliothèqe de l'assistant au déboguage. + + + The debugging helper is used to nicely format the values of some Qt and Standard Library data types. It must be compiled for each Qt version which you can do in the Qt preferences page by selecting a Qt installation and clicking on 'Rebuild' for the debugging helper. + L'assistant au déboguage est utilisé pour bien formater la valeur des types de données Qt et des bibliothèques standards.Il doit être compilé pour chaque version de Qt ce qui peut être fait dans les préférences de Qt en sélectionnant une installation de Qt et en cliquant sur 'Reconstruire' pour l'assistant de déboguage. + + + + Turn off helper usage - + + The debugger could not load the debugging helper library. + + + + + The debugging helper is used to nicely format the values of some Qt and Standard Library data types. It must be compiled for each used Qt version separately. This can be done in the Qt preferences page by selecting a Qt installation and clicking on 'Rebuild' in the 'Debugging Helper' row. + + + + Stop Debugger - + Arrêté le déboguer - + Open Qt preferences - + Ouvrir les préférences Qt %1 (explicitly set in the Debugger Options) - + %1 (définie explicitement dans les options du débogueur) - - Turn helper usage off - - - - + Continue anyway - + Continuer malgré tout Debugging helper missing - - - - - The debugger did not find the debugging helper library. - - - - - The debugging helper is used to nicely format the values of some Qt and Standard Library data types. It must be compiled for each Qt version which you can do in the Qt preferences page by selecting a Qt installation and clicking on 'Rebuild' for the debugging helper. - + Assistant au déboguage manquant @@ -3577,125 +3662,148 @@ Voulez vous les écraser? Debugger - Débogueur + Débogueur + + + + Debugger::Internal::DebuggerListener + + + Close Debugging Session + + + + + A debugging session is still in progress. Would you like to terminate it? + + + + + A debugging session is still in progress. Terminating the session in the current state (%1) can leave the target in an inconsistent state. Would you still like to terminate it? + Debugger::Internal::DebuggerPlugin - + Option '%1' is missing the parameter. - + Option '%1' le paramètre est manquant. The parameter '%1' of option '%2' is not a number. - + Le paramètre '%1' de l'option '%2' n'est pas un nombre. Invalid debugger option: %1 - + Option du débogueur invalide : %1 Error evaluating command line arguments: %1 - + Erreur durant l'évaluation des arguments de la ligne de commande : %1 Start and Debug External Application... - + Démarrer et déboguer une application externe... Attach to Running External Application... - + Attacher à l'application externe en cours d'éxecution... Attach to Core... - + idem, core? + Attacher au core... Start and Attach to Remote Application... - + Démarrer et attacher sur une application à distance... Detach Debugger - + Détacher le débogueur Stop Debugger/Interrupt Debugger - + Arrêter le débogueur/Interrompre le débogueur Reset Debugger - + Remise à zéro du débogueur &Views - + &Vues Locked - + Verrouillé Reset to default layout - + Restaurer la disposition par défaut Threads: - + Threads : Attaching to PID %1. - + Attachement ? + Attachement au PID %1. Remove Breakpoint - + Supprimer le point d'arrêt Disable Breakpoint - + Désactiver le point d'arrêt Enable Breakpoint - + Activer le point d'arrêt Set Breakpoint - + Définir un point d'arrêt Warning - + Alerte? + Avertissement Cannot attach to PID 0 - + de s'attacher ? Pas sur + Impossible de s'attacher au PID 0 Attaching to core %1. - + core, toujours? + Attachement au core %1. @@ -3708,12 +3816,12 @@ Voulez vous les écraser? Adjust column widths to contents - + Ajuster la largeur des colonnes au contenu Always adjust column widths to contents - + Toujours ajuster la largeur des colonnes au contenu @@ -3723,7 +3831,7 @@ Voulez vous les écraser? Show a message box when receiving a signal - + Afficher un message à la réception d'un signal @@ -3777,13 +3885,18 @@ Voulez vous les écraser? + Use code model + + + + Recheck debugging helper availability Synchronize breakpoints - + Synchroniser les points d'arrêt @@ -3869,7 +3982,7 @@ Voulez vous les écraser? Debugger::Internal::DebuggingHelperOptionPage - + Debugging Helper @@ -3879,7 +3992,7 @@ Voulez vous les écraser? - + Ctrl+Shift+F11 @@ -3887,7 +4000,7 @@ Voulez vous les écraser? Debugger::Internal::GdbEngine - + The Gdb process failed to start. Either the invoked program '%1' is missing, or you may have insufficient permissions to invoke the program. @@ -3912,27 +4025,22 @@ Voulez vous les écraser? - - Error - - - - + Library %1 loaded. - + Library %1 unloaded. - + Thread group %1 created. - + Thread %1 created. @@ -3952,65 +4060,53 @@ Voulez vous les écraser? - + Reading %1... - + Stopping temporarily. - - Continuing after temporary stop. - - - - + Jumped. Stopped. - - Run to Function finished. Stopped. - - - - + Processing queued commands. - + Loading %1... - + Stopped at breakpoint. - - - - + + Stopped. - + Arrêté. - + An unknown error in the Gdb process occurred. - + Running... - + En cours d'éxecution... - + Stop requested... @@ -4031,12 +4127,7 @@ Voulez vous les écraser? - - Function reached. Stopped. - - - - + Program exited with exit code %1. @@ -4051,7 +4142,7 @@ Voulez vous les écraser? - + <p>The inferior stopped because it received a signal from the Operating System.<p><table><tr><td>Signal name : </td><td>%1</td></tr><tr><td>Signal meaning : </td><td>%2</td></tr></table> @@ -4072,7 +4163,7 @@ Voulez vous les écraser? - + The debugger you are using identifies itself as: @@ -4084,23 +4175,12 @@ Using gdb 6.7 or later is strongly recommended. - - Starting executable failed - - - - - Starting executable failed: - - - - - + Running requested... - + Step requested... @@ -4120,7 +4200,7 @@ Using gdb 6.7 or later is strongly recommended. - + Step next instruction requested... @@ -4130,12 +4210,17 @@ Using gdb 6.7 or later is strongly recommended. - + Run to function %1 requested... + + + Jumping out of bogus frame... + + - + Dumper version %1, %n custom dumpers found. @@ -4143,64 +4228,79 @@ Using gdb 6.7 or later is strongly recommended. - - The dumper library was not found at %1. - - - - + Disassembler failed: %1 - + Adapter start failed - - Inferior start preparation failed - - - - - Inferior prepared for startup. - - - - + Setting breakpoints... - + Starting inferior... - + + The debugging helper library was not found at %1. + + + + + Unable to start gdb '%1': %2 + + + + + Gdb I/O Error + + + + + Unexpected Gdb Exit + + + + + The gdb process exited unexpectedly (%1). + + + + + crashed + + + + + code %1 + + + + Inferior start failed - + Inferior shutdown failed - + Adapter crashed - - Adapter shutdown failed - - - - + Cannot find debugger initialization script @@ -4210,30 +4310,40 @@ Using gdb 6.7 or later is strongly recommended. - + Unable to run '%1': %2 - + + Execution Error + + + + + Cannot continue debugged process: + + + + + + Continuing after temporary stop... + + + + <unknown> End address of loaded module - + Retrieving data for stack view... - - - <not in scope> - Variable - - - + Retrieving data for watch view (%n requests pending)... @@ -4241,7 +4351,7 @@ Using gdb 6.7 or later is strongly recommended. - + Finished retrieving data. @@ -4256,7 +4366,7 @@ Using gdb 6.7 or later is strongly recommended. - + <0 items> @@ -4270,19 +4380,12 @@ Using gdb 6.7 or later is strongly recommended. - - %1 <shadowed %2> - Variable %1 is the variable name, %2 is a simple count - - - - + <shadowed> - Type of local variable or parameter shadowed by another - + <n/a> @@ -4297,26 +4400,6 @@ Using gdb 6.7 or later is strongly recommended. About variable's value - - - Unknown error: - - - - - Dumper injection loading triggered (%1)... - - - - - Dumper loading (%1) failed: %2 - - - - - Loading dumpers via debugger call (%1)... - - Debugger::Internal::GdbOptionsPage @@ -4374,12 +4457,12 @@ Using gdb 6.7 or later is strongly recommended. Adjust column widths to contents - + Ajuster la largeur des colonnes au contenu Always adjust column widths to contents - + Toujours ajuster la largeur des colonnes au contenu @@ -4513,12 +4596,12 @@ Using gdb 6.7 or later is strongly recommended. Adjust column widths to contents - + Ajuster la largeur des colonnes au contenu Always adjust column widths to contents - + Toujours ajuster la largeur des colonnes au contenu @@ -4552,7 +4635,7 @@ Using gdb 6.7 or later is strongly recommended. Stopped. - + Arrêté. @@ -4594,7 +4677,7 @@ Using gdb 6.7 or later is strongly recommended. Debugger::Internal::StackHandler - + Address: @@ -4630,7 +4713,7 @@ Using gdb 6.7 or later is strongly recommended. - + ... @@ -4743,18 +4826,18 @@ Using gdb 6.7 or later is strongly recommended. Adjust column widths to contents - + Ajuster la largeur des colonnes au contenu Always adjust column widths to contents - + Toujours ajuster la largeur des colonnes au contenu Debugger::Internal::StartExternalDialog - + Select Executable Selectionner l'exécutable @@ -4780,33 +4863,39 @@ Using gdb 6.7 or later is strongly recommended. Debugger::Internal::ThreadsWindow - + Thread - + Adjust column widths to contents - + Ajuster la largeur des colonnes au contenu Always adjust column widths to contents - + Toujours ajuster la largeur des colonnes au contenu Debugger::Internal::WatchData - + + <not in scope> + + + %1 <shadowed %2> + + Debugger::Internal::WatchHandler - + Expression @@ -4836,7 +4925,7 @@ Using gdb 6.7 or later is strongly recommended. - + Root @@ -4856,12 +4945,12 @@ Using gdb 6.7 or later is strongly recommended. - + <Edit> - + Internal ID @@ -4874,7 +4963,7 @@ Using gdb 6.7 or later is strongly recommended. Debugger::Internal::WatchModel - + decimal @@ -4894,7 +4983,7 @@ Using gdb 6.7 or later is strongly recommended. - + Name Nom @@ -4942,7 +5031,7 @@ Using gdb 6.7 or later is strongly recommended. - + Open memory editor... @@ -4952,17 +5041,22 @@ Using gdb 6.7 or later is strongly recommended. - - Adjust column widths to contents + + Refresh code model snapshot + + + Adjust column widths to contents + Ajuster la largeur des colonnes au contenu + Always adjust column widths to contents - + Toujours ajuster la largeur des colonnes au contenu - + Insert new watch item @@ -4972,12 +5066,12 @@ Using gdb 6.7 or later is strongly recommended. Clear contents - + Effacer le contenu Save contents - + Sauver le contenu @@ -5017,18 +5111,28 @@ Using gdb 6.7 or later is strongly recommended. Debug debugging helper + + + Makes use of Qt Creator's code model to find out if a variable has already been assigned a value at the point the debugger interrupts. + + + + + Use code model + + DependenciesModel Unable to add dependency - + Impossible d'ouvrir les dépendances This would create a circular dependency. - + Ceci créerais une dépendance circulaire. @@ -5054,17 +5158,17 @@ Using gdb 6.7 or later is strongly recommended. The file name is empty. - + Le nom de fichier est vide. XML error on line %1, col %2: %3 - + Erreur XML à la ligne %1, col %2: %3 The <RCC> root element is missing. - + L'élement racine <RCC> est manquant. @@ -5255,7 +5359,7 @@ Using gdb 6.7 or later is strongly recommended. Locked - + Verrouillé @@ -5627,7 +5731,7 @@ Reason: %3 FakeVim::Internal::FakeVimHandler - + Not implemented in FakeVim @@ -5647,7 +5751,7 @@ Reason: %3 - + File '%1' exists (add ! to override) @@ -5713,7 +5817,7 @@ Reason: %3 - + Already at newest change @@ -6058,7 +6162,7 @@ Reason: %3 - Replace all occurances + Replace all occurrences @@ -6158,7 +6262,7 @@ Reason: %3 <new> - + <nouveau> @@ -6166,17 +6270,17 @@ Reason: %3 Create - + Créer New configuration - + Nouvelle configuration New Configuration Name: - + Nom de la nouvelle configuration : @@ -6200,14 +6304,14 @@ Reason: %3 GenericProjectManager::Internal::GenericMakeStepConfigWidget - + Override %1: <b>Make:</b> %1 %2 - + <b>Make : </b>%1 %2 @@ -6532,12 +6636,12 @@ Reason: %3 Faire un diff de "%1" - + Alt+G,Alt+D - + File Status @@ -6547,12 +6651,12 @@ Reason: %3 - + Alt+G,Alt+S - + Log File @@ -6562,12 +6666,12 @@ Reason: %3 - + Alt+G,Alt+L - + Blame @@ -6577,12 +6681,12 @@ Reason: %3 - + Alt+G,Alt+B - + Undo Changes @@ -6592,12 +6696,12 @@ Reason: %3 - + Alt+G,Alt+U - + Stage File for Commit @@ -6607,12 +6711,12 @@ Reason: %3 - + Alt+G,Alt+A - + Unstage File from Commit @@ -6632,7 +6736,7 @@ Reason: %3 - + Project Status Status du projet @@ -6652,12 +6756,12 @@ Reason: %3 - + Alt+G,Alt+K - + Undo Project Changes @@ -6692,12 +6796,12 @@ Reason: %3 - + Alt+G,Alt+C - + Push @@ -6991,7 +7095,7 @@ Reason: %3 unknown - + inconnue @@ -7398,7 +7502,7 @@ Reason: %3 Debug - + Déboguer @@ -7578,12 +7682,12 @@ in your .pro file. - + Alt+P,Alt+E - + Edit File @@ -7598,12 +7702,12 @@ in your .pro file. Ajouter "%1" - + Alt+P,Alt+A - + Add File @@ -7633,12 +7737,12 @@ in your .pro file. Rétablir "%1" - + Alt+P,Alt+R - + Revert File @@ -7664,12 +7768,12 @@ in your .pro file. - + Alt+P,Alt+D - + Diff Opened Files @@ -7679,12 +7783,12 @@ in your .pro file. - + Alt+P,Alt+O - + Submit Project @@ -7731,22 +7835,22 @@ in your .pro file. - + Filelog Current File Journal du fichier courant - + Filelog "%1" Journal du fichier "%1" - + Alt+P,Alt+F - + Filelog... @@ -8057,17 +8161,17 @@ in your .pro file. The plugin '%1' does not exist. - + L'extension '%1' n'existe pas. Unknown option %1 - + Option '%1' non reconnue The option %1 requires an argument. - + L'option %1 requiert un argument. @@ -8075,77 +8179,77 @@ in your .pro file. '%1' misses attribute '%2' - + L'attribute '%1' est manquant pour '%2' '%1' has invalid format - + '%1' a un format invalide Invalid element '%1' - + Élément invalide '%1' Unexpected closing element '%1' - + Élement fermant inattendu '%1' Unexpected token - + Lexème inatendu Expected element '%1' as top level element - + L'élément '%1' devrait être l'élément racine Resolving dependencies failed because state != Read - + La résolution des dépendances a échoué car l'état courant est différent de "Lecture" Could not resolve dependency '%1(%2)' - + Impossible de résoudre la dépendance '%1(%2)' Loading the library failed because state != Resolved - + Le chargement de la bibliothèque a échoué car l'état courant est différent de "Résolu" Plugin is not valid (does not derive from IPlugin) - + L'extension n'est pas valide (elle n'est pas une sous-classe de IPlugin) Initializing the plugin failed because state != Loaded - + L'initialisation de l'extension a échoué car l'état courant est différent de "chargé" Internal error: have no plugin instance to initialize - + Erreur interne : pas d'instance de l'extension à initialiser Plugin initialization failed: %1 - + L'initialisation de l'extension a échoué: %1 Cannot perform extensionsInitialized because state != Initialized - + Impossible d'exécuter extensionsInitialized car l'état est différent de "Initialisé" Internal error: have no plugin instance to perform extensionsInitialized - + Erreur interne: aucune instance de l'extention sur laquelle exécuter extensionsInitialized @@ -8343,7 +8447,7 @@ in your .pro file. ProjectExplorer::Internal::BuildSettingsWidget - + &Clone Selected @@ -8375,7 +8479,7 @@ in your .pro file. New Configuration Name: - + Nom de la nouvelle configuration : @@ -9380,7 +9484,7 @@ to version control (%2)? Warning - + Avertissement @@ -9462,7 +9566,7 @@ to version control (%2)? - + The project %1 could not be opened. @@ -9470,7 +9574,7 @@ to version control (%2)? QmlProjectManager::Internal::QmlNewProjectWizardDialog - + New QML Project @@ -9530,19 +9634,19 @@ to version control (%2)? QmlProjectManager::Internal::QmlRunConfiguration - + QML Viewer - + <Current File> - + QML Viewer arguments: @@ -9873,8 +9977,9 @@ to version control (%2)? Qt4ProjectManager::Internal::ProjectLoadWizard - - Import existing settings + + + Import existing build settings @@ -9898,7 +10003,7 @@ to version control (%2)? Clear system environment - + Nettoyer l'environnement système @@ -10073,7 +10178,17 @@ to version control (%2)? Qt4ProjectManager::Internal::Qt4RunConfigurationWidget - + + Running executable: <b>%1</b> %2 (in terminal) + + + + + Running executable: <b>%1</b> %2 + + + + Arguments: @@ -10103,17 +10218,7 @@ to version control (%2)? Environnement de compilation - - Running executable: <b>%1</b> %2 %3 - - - - - (in terminal) - - - - + Name: @@ -10151,7 +10256,7 @@ to version control (%2)? Qt4ProjectManager::Internal::QtOptionsPageWidget - + <specify a name> @@ -10172,11 +10277,16 @@ to version control (%2)? - Select "x86build" Directory from Carbide Install + Select Carbide Install Directory - + + Select S60 SDK Root + + + + Auto-detected @@ -10186,7 +10296,7 @@ to version control (%2)? - + Building helpers @@ -10197,7 +10307,7 @@ to version control (%2)? - + The Qt Version identified by %1 is not installed. Run make install @@ -10295,7 +10405,12 @@ p, li { white-space: pre-wrap; } - MWC Directory: + S60 SDK: + + + + + Carbide Directory: @@ -10413,7 +10528,7 @@ p, li { white-space: pre-wrap; } - + <font color="#0000ff"><b>No Makefile found, assuming project is clean.</b></font> @@ -10529,7 +10644,7 @@ p, li { white-space: pre-wrap; } Qt4ProjectManager::QtVersionManager - + <not found> @@ -10539,6 +10654,54 @@ p, li { white-space: pre-wrap; } Qt in PATH + + + Name: + + + + + Source: + + + + + mkspec: + + + + + qmake: + + + + + Default: + + + + + Compiler: + + + + + Version: + + + + + Debugging helper: + + + + + QApplication + + + The Qt Version has no toolchain. + + QtModulesInfo @@ -10721,7 +10884,7 @@ p, li { white-space: pre-wrap; } Qt Script file - + Fichier de script Qt @@ -10947,39 +11110,32 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Locator::Internal::SettingsDialog - Configure Filters - Configurer les filtres + Configurer les filtres - Add - Ajouter + Ajouter - Remove - Supprimer + Supprimer - Edit... - Modifier... + Modifier... - Refresh Interval: - Intervalle de raffraichissement: + Intervalle de raffraichissement: - min - min + min - Refresh now! - Raffraîchir maintenant! + Raffraîchir maintenant! @@ -11538,12 +11694,12 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Ajouter "%1" - + Alt+S,Alt+A Alt+S,Alt+A - + Delete Supprimer @@ -11578,12 +11734,12 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Faire un diff de "%1" - + Alt+S,Alt+D Alt+S,Alt+D - + Commit All Files Faire un commit de tous les fichiers @@ -11598,12 +11754,12 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Faire un commit de "%1" - + Alt+S,Alt+C Alt+S,Alt+C - + Filelog Current File Journal du fichier courant @@ -11695,7 +11851,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Cannot create temporary file: %1 - Impossible de créer le fichier temporaire : %1 + Impossible de créer le fichier temporaire : %1 @@ -11705,7 +11861,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Revision number: - Numéro de révision : + Numéro de révision : @@ -11810,7 +11966,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t TextEditor::BaseTextEditorEditable - + Line: %1, Col: %2 Ligne : %1, Col : %2 @@ -11994,7 +12150,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t TextEditor::FontSettingsPage - + Font & Colors Polices & couleurs @@ -12262,27 +12418,27 @@ The following encodings are likely to fit: Ctrl+I - - &Rewrap Paragraph + + Meta + + + + + Ctrl - Ctrl+E, R + &Rewrap Paragraph - + &Visualize Whitespace - - Ctrl+E, Ctrl+V - - - - + Clean Whitespace Nettoyer les espaces @@ -12292,12 +12448,26 @@ The following encodings are likely to fit: - Ctrl+E, Ctrl+W - Ctrl+E, Ctrl+W + Ctrl+E, Ctrl+W - + + %1+E, R + + + + + %1+E, %2+V + + + + + %1+E, %2+W + + + + (Un)Comment &Selection (Dé)Commenter la &Sélection @@ -12964,7 +13134,7 @@ p, li { white-space: pre-wrap; } Protocol: - + Protocole : @@ -12978,7 +13148,7 @@ p, li { white-space: pre-wrap; } Parts to send to server - + @@ -13087,11 +13257,6 @@ p, li { white-space: pre-wrap; } Symbian ARM gdb location: - - - Cygwin location: - - Communication @@ -13454,10 +13619,15 @@ p, li { white-space: pre-wrap; } Reprendre la session - + %1 (last session) %1 (dernière session) + + + %1 (current session) + + New Project... @@ -13694,7 +13864,7 @@ p, li { white-space: pre-wrap; } Ouvrir - + Tutorials Tutoriels @@ -13739,7 +13909,42 @@ p, li { white-space: pre-wrap; } Choisir un exemple... - + + Copy Project to writable Location? + + + + + <p>The project you are about to open is located in the write-protected location:</p><blockquote>%1</blockquote><p>Please select a writable location below and click "Copy Project and Open" to open a modifiable copy of the project or click "Keep Project and Open" to open the project in location.</p><p><b>Note:</b> You will not be able to alter or compile your project in the current location.</p> + + + + + &Location: + + + + + &Copy Project and Open + + + + + &Keep Project and Open + + + + + Warning + Avertissement + + + + The specified location already exists. Please specify a valid location. + + + + Cmd Shortcut key @@ -13868,7 +14073,7 @@ p, li { white-space: pre-wrap; } - + S60 SDKs @@ -13932,7 +14137,7 @@ p, li { white-space: pre-wrap; } - + News From the Qt Labs Actualité de Qt Labs @@ -13948,7 +14153,7 @@ p, li { white-space: pre-wrap; } - + Qt Home Qt Home @@ -13969,8 +14174,17 @@ p, li { white-space: pre-wrap; } + Qt Apps + + + + + Qt for Symbian at Forum Nokia + + + Qt for S60 at Forum Nokia - Qt pour S60 + Qt pour S60 @@ -14002,7 +14216,7 @@ p, li { white-space: pre-wrap; } Votre avis nous interesse - + Welcome Accueil @@ -14054,7 +14268,17 @@ p, li { white-space: pre-wrap; } CodePaster::CodePasterProtocol - + + No Server defined in the CodePaster preferences! + + + + + No Server defined in the CodePaster options! + + + + No such paste @@ -14063,15 +14287,24 @@ p, li { white-space: pre-wrap; } CodePaster::CodePasterSettingsPage - CodePaster CodePaster + + + Code Pasting + + Server: + + + Note: Specify the host name for the CodePaster service without any protocol prepended (e.g. codepaster.mycompany.com). + + PasteBinDotComProtocol @@ -14090,8 +14323,12 @@ p, li { white-space: pre-wrap; } + Code Pasting + + + CodePaster - CodePaster + CodePaster @@ -14123,7 +14360,7 @@ p, li { white-space: pre-wrap; } CppTools::Internal::CppFindReferences - + Searching... @@ -14185,12 +14422,12 @@ p, li { white-space: pre-wrap; } Ajouter "%1" - + Alt+C,Alt+A - + Delete Supprimer @@ -14225,12 +14462,12 @@ p, li { white-space: pre-wrap; } Faire un diff de "%1" - + Alt+C,Alt+D - + Commit All Files Faire un commit de tous les fichiers @@ -14245,12 +14482,12 @@ p, li { white-space: pre-wrap; } Faire un commit de "%1" - + Alt+C,Alt+C - + Filelog Current File Journal du fichier courant @@ -14454,7 +14691,7 @@ p, li { white-space: pre-wrap; } SymbolGroup - + Out of scope @@ -14470,99 +14707,76 @@ p, li { white-space: pre-wrap; } Debugger::Internal::DebuggerRunControlFactory - + Debug - + Déboguer - Debugger::Internal::AttachGdbAdapter + Debugger::Internal::DebuggerRunControl - - Attached to stopped inferior. - - - - - Inferior process could not be stopped: - - - - - - Gdb process could not be stopped: - - + + Debugger + Débogueur Debugger::Internal::CoreGdbAdapter - + + + + Error Loading Symbols + + + + + No executable to load symbols from specified. + + + + + Loading symbols from "%1" failed: + + + + + Attached to core temporarily. - - No binary found. + + Unable to determine executable from core file. - + + Attach to core "%1" failed: + + + + + Symbols found. - - Symbols not found in "%1" failed: -%2 - - - - + Attached to core. - - - Attach to core "%1" failed: -%2 - - - - - Gdb process could not be stopped: - - - Debugger::Internal::PlainGdbAdapter - + Cannot set up communication with child process: %1 - + Starting executable failed: - - - - - - Inferior started. - - - - - Inferior process could not be stopped: - - - - - - Gdb process could not be stopped: @@ -14570,12 +14784,12 @@ p, li { white-space: pre-wrap; } Debugger::Internal::RemoteGdbAdapter - - The upload process failed to start. Either the invoked script '%1' is missing, or you may have insufficient permissions to invoke the program. + + The upload process failed to start. Shell missing? - + The upload process crashed some time after starting successfully. @@ -14610,31 +14824,8 @@ p, li { white-space: pre-wrap; } - + Starting remote executable failed: - - - - - - Attached to stopped inferior. - - - - - Connecting to remote server failed: - - - - - - Inferior process could not be stopped: - - - - - - Gdb process could not be stopped: @@ -14642,46 +14833,21 @@ p, li { white-space: pre-wrap; } Debugger::Internal::TrkGdbAdapter - + + Process started, PID: 0x%1, thread id: 0x%2, code segment: 0x%3, data segment: 0x%4. + + + + Connecting to trk server adapter failed: - - - Inferior running. - - - - - Connecting to remote server failed: - - - - - Inferior process could not be stopped: - - - - - - Gdb process could not be stopped: - - - - - - Debugger::Internal::TrkOptionsPage - - - S60 / Trk - - NameDemanglerPrivate - + Premature end of input @@ -14691,7 +14857,7 @@ p, li { white-space: pre-wrap; } - + Invalid name @@ -14757,7 +14923,7 @@ p, li { white-space: pre-wrap; } - + Invalid type @@ -14778,13 +14944,13 @@ p, li { white-space: pre-wrap; } - - + + Invalid unqualified-name - + Invalid operator-name '%s' @@ -14795,19 +14961,19 @@ p, li { white-space: pre-wrap; } - + Invalid pointer-to-member-type - + - + Invalid substitution - + Invalid substitution: element %1 was requested, but there are only %2 @@ -14817,14 +14983,14 @@ p, li { white-space: pre-wrap; } - + Invalid special-name - + Invalid local-name @@ -14993,7 +15159,7 @@ p, li { white-space: pre-wrap; } ProjectExplorer::ApplicationLauncher - + Failed to start program. Path or permissions wrong? @@ -15158,7 +15324,7 @@ Reason: %2 QmlEditor::Internal::QmlEditorPlugin - + Qt Qt @@ -15258,40 +15424,50 @@ Reason: %2 Qt4ProjectManager::Internal::S60DeviceRunConfiguration - - %1 on Device - - - - + QtS60DeviceRunConfiguration - + Could not parse %1. The QtS60 Device run configuration %2 can not be started. + + + %1 on Symbian Device + + Qt4ProjectManager::Internal::S60DeviceRunConfigurationWidget - + + Device: + + + + Name: - + Install File: - + Device on Serial Port: - + + Queries the device for information + + + + Self-signed certificate @@ -15315,19 +15491,50 @@ Reason: %2 Key file: + + + <No Device> + Summary text of S60 device run configuration + + + + + (custom certificate) + + + + + (self-signed certificate) + + + + + Summary: Run on '%1' %2 + + + + + Connecting... + + + + + A timeout occurred while querying the device. Check whether Trk is running + + Qt4ProjectManager::Internal::S60DeviceRunConfigurationFactory - - %1 on Device + + %1 on Symbian Device Qt4ProjectManager::Internal::S60DeviceRunControlBase - + Creating %1.sisx ... @@ -15337,35 +15544,40 @@ Reason: %2 - - + + Debugger for Symbian Platform + + + + + %1 %2 - + Could not read template package file '%1' - + Could not write package file '%1' - + An error occurred while creating the package. - + Package: %1 Deploying application to '%2'... - + Could not connect to phone on port '%1': %2 Check if the phone is connected and the TRK application is running. @@ -15387,6 +15599,11 @@ Check if the phone is connected and the TRK application is running. + Could not connect to App TRK on device: %1. Restarting App TRK might help. + + + + Copying install file... @@ -15424,7 +15641,7 @@ Check if the phone is connected and the TRK application is running. Qt4ProjectManager::Internal::S60DeviceRunControl - + Finished. @@ -15447,7 +15664,7 @@ Check if the phone is connected and the TRK application is running. Qt4ProjectManager::Internal::S60DeviceDebugRunControl - + Warning: Cannot locate the symbol file belonging to %1. @@ -15465,47 +15682,52 @@ Check if the phone is connected and the TRK application is running. Qt4ProjectManager::Internal::S60DevicesWidget - + No Qt installed - - Qt4ProjectManager::Internal::S60EmulatorRunConfiguration - - - %1 in Emulator - - - - - QtS60EmulatorRunConfiguration - - - - - Could not parse %1. The QtS60 emulator run configuration %2 can not be started. - - - Qt4ProjectManager::Internal::S60EmulatorRunConfigurationWidget - + Name: - + Executable: + + + Summary: Run %1 in emulator + + + + + Qt4ProjectManager::Internal::S60EmulatorRunConfiguration + + + %1 in Symbian Emulator + + + + + QtSymbianEmulatorRunConfiguration + + + + + Could not parse %1. The Qt for Symbian emulator run configuration %2 can not be started. + + Qt4ProjectManager::Internal::S60EmulatorRunConfigurationFactory - - %1 in Emulator + + %1 in Symbian Emulator @@ -15560,11 +15782,21 @@ Check if the phone is connected and the TRK application is running. New configuration - + Nouvelle configuration New Configuration Name: + Nom de la nouvelle configuration : + + + + %1 Debug + + + + + %1 Release @@ -15710,112 +15942,114 @@ Check if the phone is connected and the TRK application is running. unknown - + inconnue CMake Project file - + Fichier de projet CMake C Source file - + Fichier source C C Header file - + Fichier d'en-tête C C++ Header file - + Fichier d'en-tête C++ C++ header - + En-tête C++ C++ Source file - + Fichier source C++ C++ source code - + Code source C++ Objective-C source code - + Code source en objective-C CVS submit template - + Modéle d'envoi de CVS Qt Designer file - + Fichier du designer Qt Generic Qt Creator Project file - + Fichier générique de projet Qt Creator Generic Project Files - + Fichiers génériques de projet Generic Project Include Paths - + Chemins générique d'inclusion de projet Generic Project Configuration File - + Fichier générique de configuration de projet Perforce submit template - + Modéle d'envoi de Perforce QML file - + Fichier QML Qml Project file - + Fichier de projet Qml Qt Project file - + Fichier de projet Qt Qt Project include file - + Pas sur du tout??? Sens peut être modifié... + Fichier d'inclusion de projet Qt message catalog - + Un ou plusieurs messages ? + Catalogue de messages Qt Script file - + Fichier de script Qt @@ -15825,22 +16059,272 @@ Check if the phone is connected and the TRK application is running. Subversion submit template - + d'envoi ? de soumission (du verbe soumettre)? + Modéle d'envoi de Subversion Plain text document - + Document de text brut XML document - + Document XML Differences between files + Différences entre fichiers + + + + Debugger::Internal::AbstractGdbAdapter + + + The Gdb process could not be stopped: +%1 + + + + + Inferior process could not be stopped: +%1 + + + + + Inferior started. + + + + + Inferior running. + + + + + Attached to stopped inferior. + + + + + Connecting to remote server failed: +%1 + + Debugger::Internal::TermGdbAdapter + + + Debugger Error + Erreur du débogueur + + + + TrkOptions + + + No Symbian gdb executable specified. + + + + + The Symbian gdb executable '%1' could not be found in the search path. + + + + + Debugger::Internal::TrkOptionsPage + + + Symbian Trk + TRK Symbian + + + + QmlParser + + + Illegal character + Caractère invalide + + + + Unclosed string at end of line + Chaîne de caractère non terminée en fin de ligne + + + + Illegal escape squence + Séquence d'échappement invalide + + + + Illegal unicode escape sequence + trad illegal ? + Séquence d'échappement unicode invalide + + + + Unclosed comment at end of file + Commentaire non terminée en fin de ligne + + + + Illegal syntax for exponential number + Syntaxe pour le nombre exponentiel invalide + + + + Identifier cannot start with numeric literal + Trad numeric literal ? + Un identificateur ne peut pas commencer par un nombre + + + + Unterminated regular expression literal + Expression régulière littérale non terminée + + + + Invalid regular expression flag '%0' + On traduit flag ? Comment ? + Expression régulière invalide '%0' + + + + Unexpected token `%1' + Symbole inattendu '%1' + + + + + Expected token `%1' + Symbole attendu '%1' + + + + Syntax error + Erreur de syntaxe + + + + Qt4ProjectManager::Internal::S60Devices::Device + + + Id: + Id : + + + + Name: + Nom : + + + + EPOC: + EPOC : + + + + Tools: + Outils : + + + + Qt: + Qt : + + + + trk::BluetoothListener + + + %1: Stopping listener %2... + %1 : arrêt de l'observateur %2... + + + + %1: Starting Bluetooth listener %2... + %1 : démarrage de l'observateur Bluetooth %2... + + + + Unable to run '%1': %2 + Impossible de démarrer '%1' : %2 + + + + %1: Bluetooth listener running (%2). + %1 : observateur Bluetooth en cours d'éxecution (%2). + + + + %1: Process %2 terminated with exit code %3. + %1 : processus %2 terminé avec le code %3. + + + + %1: Process %2 crashed. + %1 : processus %2 planté. + + + + %1: Process error %2: %3 + %1 : erreur de processus %2 : %3 + + + + trk::promptStartCommunication + + + Connection on %1 canceled. + Connexion sur %1 annulée. + + + + Waiting for TRK + Attente de TRK + + + + Waiting for TRK to start on %1... + Attente de TRK pour démarrer sur %1... + + + + Waiting for Bluetooth Connection + Attente d'une connexion Bluetooth + + + + Connecting to %1... + Connexion à %1... + + + + trk::BaseCommunicationStarter + + + %1: timed out after %n attempts using an interval of %2ms. + timed out ? + + %1 : interruption après %n tentative en utilisant un intervalle de %2ms. + %1 : interruption après %n tentatives en utilisant un intervalle de %2ms. + + + + + %1: Connection attempt %2 succeeded. + %1 : tenative de connexion %2 réussi. + + + + %1: Connection attempt %2 failed: %3 (retrying)... + retrying ? + %1 : tenative de connexion %2 echoué : %3 (nouvel essai)... + + diff --git a/share/qtcreator/translations/qtcreator_pl.ts b/share/qtcreator/translations/qtcreator_pl.ts index 1f45682dd44..6a392a0e719 100644 --- a/share/qtcreator/translations/qtcreator_pl.ts +++ b/share/qtcreator/translations/qtcreator_pl.ts @@ -34,12 +34,12 @@ Name: - + Nazwa: Version: - + Wersja: @@ -49,37 +49,37 @@ Vendor: - + Dostawca: Url: - + Url: Location: - + Położenie: Description: - + Opis: Copyright: - + Prawa autorskie: License: - + Licencja: Dependencies: - + Zależności: @@ -87,12 +87,12 @@ State: - + Stan: Error Message: - + Komunikat Błędu: @@ -100,27 +100,27 @@ State - + Stan Name - + Nazwa Version - + Wersja Vendor - + Dostawca Location - + Położenie @@ -146,7 +146,7 @@ Choose the location - Wybierz miejsce + Wybierz położenie @@ -197,7 +197,7 @@ Ścieżka: - + Invalid base class name Niepoprawna nazwa klasy podstawowej @@ -216,38 +216,43 @@ Invalid form file name: '%1' Niepoprawna nazwa pliku z formularzem: "%1" + + + Inherits QObject + Wywodzi się z QObject + Utils::ProjectIntroPage Introduction and project location - + Wprowadzenie oraz położenie projektu Name: - + Nazwa: Create in: - + Utwórz w: <Enter_Name> - + <Wprowadź nazwę> The project already exists. - + Projekt już istnieje. A file with that name already exists. - + Plik o tej samej nazwie już istnieje. @@ -255,17 +260,17 @@ Subversion Submit - + Wyślij do Subversion Des&cription - + &Opis F&iles - + Pl&iki @@ -273,12 +278,12 @@ New Project - + Nowy projekt 1 - + 1 @@ -286,12 +291,12 @@ Open File With... - + Otwórz plik przy pomocy... Open file extension with: - + Otwórz rozszerzenie pliku przy pomocy: @@ -299,17 +304,17 @@ Save Changes - + Zachowaj zmiany The following files have unsaved changes: - + Następujące pliki posiadają niezachowane zmiany: Automatically save all files before building - + Automatycznie zachowuj wszystkie pliki przed budowaniem @@ -393,72 +398,72 @@ General settings - + Ustawienia ogólne User &interface color: - + Kolor &interfejsu użytkownika: Reset to default - + Przywróć domyślne R - + R Terminal: - + Terminal: External editor: - + Zewnętrzny edytor: ? - + ? When files are externally modified: - + W przypadku zewnętrznej modyfikacji plików: Always ask - + Zawsze pytaj Reload all modified files - + Przeładuj wszystkie zmodyfikowane pliki Ignore modifications - + Zignoruj modyfikacje General - + Ogólne Environment - + Środowisko Variables - + Zmienne @@ -502,7 +507,7 @@ p, li { white-space: pre-wrap; } Send to Codepaster - + Wyślij do @@ -545,7 +550,7 @@ p, li { white-space: pre-wrap; } Parts to send to server - + Zawartość wysyłki do serwera @@ -562,9 +567,9 @@ p, li { white-space: pre-wrap; } CodePaster::SettingsPage - + General - + Ogólne @@ -573,19 +578,18 @@ p, li { white-space: pre-wrap; } - CodePaster Pastebin.ca - + Pastebin.ca Pastebin.com - + Pastebin.com @@ -595,40 +599,45 @@ p, li { white-space: pre-wrap; } Copy Paste URL to clipboard - + Skopiuj i wklej URL do schowka Display Output Pane after sending a post + + + Code Pasting + + CompletionSettingsPage Code Completion - + Uzupełnianie kodu Do a case-sensitive match for completion items. - + Uwzględniaj wielkość liter w uzupełnianych elementach. &Case-sensitive completion - + Uwzględniaj &wielkość liter w uzupełnieniach Automatically insert (, ) and ; when appropriate. - + Automatycznie wstawiaj (, ) i ; gdy należy. &Automatically insert brackets - + &Automatycznie wstawiaj nawiasy @@ -674,7 +683,7 @@ p, li { white-space: pre-wrap; } Prompt to submit - Przypominaj o wysyłaniu zmian do serwera + Pytaj przed wysłaniem zmian do serwera @@ -689,12 +698,12 @@ p, li { white-space: pre-wrap; } CVS Command: - + Komenda CVS: CVS Root: - + Korzeń CVS: @@ -704,7 +713,7 @@ p, li { white-space: pre-wrap; } CVS - + CVS @@ -712,12 +721,12 @@ p, li { white-space: pre-wrap; } Start Debugger - + Uruchom debuggera Executable: - + Program: @@ -730,22 +739,22 @@ p, li { white-space: pre-wrap; } Start Debugger - + Uruchom debuggera Attach to Process ID: - + Dołącz do procesu o identyfikatorze: Filter: - + Filtr: Clear - + Wyczyść @@ -758,7 +767,7 @@ p, li { white-space: pre-wrap; } Function to break on: - + Funkcja w której przerwać: @@ -766,7 +775,7 @@ p, li { white-space: pre-wrap; } Condition: - + Warunek: @@ -785,32 +794,32 @@ p, li { white-space: pre-wrap; } Cdb Placeholder - + Cdb Path: - + Ścieżka: Debugger Paths - + Ścieżki debuggera Symbol paths: - + Ścieżki do symboli: Source paths: - + Ścieżki do źródeł: Other options - + Inne opcje @@ -826,12 +835,12 @@ p, li { white-space: pre-wrap; } 64-bit version - + Wersja 64 bitowa 32-bit version - + Wersja 32 bitowa @@ -839,32 +848,32 @@ p, li { white-space: pre-wrap; } User interface - + Interfejs użytkownika Checking this will populate the source file view automatically but might slow down debugger startup considerably. - + Ustawienie tej opcji spowoduje automatyczne wypełnienie widoku pliku źródłowego lecz może znacznie spowolnić uruchomienie debuggera. Populate source file view automatically - + Wypełnij automatycznie widok pliku źródłowego Show a message box when receiving a signal - + Pokaż komunikat po otrzymaniu sygnału Use alternating row colors in debug views - + Używaj alternatywnych kolorów wierszy w widokach debugowych Use tooltips in main editor while debugging - + Używaj podpowiedzi w głównym edytorze podczas debugowania @@ -885,12 +894,12 @@ p, li { white-space: pre-wrap; } Maximal stack depth: - + Maksymalna głębokość stosu: <unlimited> - + <nieograniczony> @@ -923,75 +932,85 @@ p, li { white-space: pre-wrap; } Location: - + Położenie: Debug debugging helper + + + Makes use of Qt Creator's code model to find out if a variable has already been assigned a value at the point the debugger interrupts. + + + + + Use code model + Używaj modelu kodu + GdbOptionsPage Gdb interaction - + Interakcje gdb This is either a full absolute path leading to the gdb binary you intend to use or the name of a gdb binary that will be searched in your PATH. - + Jest to albo pełna ścieżka do programu gdb którego chcesz użyć albo nazwa programu gdb która będzie odnaleziona w zmiennej PATH. Gdb location: - + Położenie gdb: Environment: - + Środowisko: This is either empty or points to a file containing gdb commands that will be executed immediately after gdb starts up. - + Może wskazywać plik zawierający komendy gdb które będą wykonane zaraz po uruchomieniu gdb. Gdb startup script: - + Skrypt startowy gdb: Behaviour of breakpoint setting in plugins - + Ustawianie pułapek we wtyczkach This is the slowest but safest option. - + To jest najwolniejsza ale i zarazem najbezpieczniejsza opcja. Try to set breakpoints in plugins always automatically. - + Próbuj zawsze ustawiać pułapki we wtyczkach automatycznie. Try to set breakpoints in selected plugins - + Próbuj ustawić pułapki w wybranych wtyczkach Matching regular expression: - + pasujących do wyrażeń regularnych: Never set breakpoints in plugins automatically - + Nigdy automatycznie nie ustawiaj pułapek we wtyczkach @@ -999,42 +1018,42 @@ p, li { white-space: pre-wrap; } Form - + Formularz Gdb - + Gdb Symbian ARM gdb location: - + Położenie gdb Symbian ARM: Communication - + Komunikacja Serial Port - + Port szeregowy Bluetooth - + Bluetooth Port: - + Port: Device: - + Urządzenie: @@ -1042,22 +1061,22 @@ p, li { white-space: pre-wrap; } Start Debugger - + Uruchom debuggera Executable: - + Program: Arguments: - + Argumenty: Break at 'main': - + Przerwij w "main": @@ -1065,27 +1084,27 @@ p, li { white-space: pre-wrap; } Start Debugger - + Uruchom debuggera Host and port: - + Host i port: Architecture: - + Architektura: Use server start script: - + Użyj startowego skryptu serwera: Server start script: - + Startowy skrypt serwera: @@ -1093,42 +1112,42 @@ p, li { white-space: pre-wrap; } Form - + Formularz Embedding of the UI Class - + Osadzanie klas UI Aggregation as a pointer member - + Agregacja poprzez wskaźnik do składnika Aggregation - + Agregacja Multiple Inheritance - + Dziedziczenie wielokrotne Code Generation - + Generacja kodu Support for changing languages at runtime - + Obsługa zmian języków w trakcie wykonywania programu Use Qt module name in #include-directive - + Używaj nazwy modułu Qt w dyrektywach #include @@ -1136,22 +1155,22 @@ p, li { white-space: pre-wrap; } Choose a class name - + Podaj nazwę klasy Class - + Klasa Configure... - + Skonfiguruj... %1 - Error - + %1 - Błąd @@ -1159,12 +1178,12 @@ p, li { white-space: pre-wrap; } Use FakeVim - + Używaj FakeVim Vim style settings - + Ustawienia stylu Vim @@ -1247,37 +1266,37 @@ p, li { white-space: pre-wrap; } Search for... - + Wyszukaj... Sc&ope: - + &Zakres: &Search - + Wy&szukaj Search &for: - + Wysz&ukaj: Close - + Zamknij &Case sensitive - + Uwzględniaj &wielkość liter &Whole words only - + Tylko &całe słowa @@ -1285,27 +1304,27 @@ p, li { white-space: pre-wrap; } Find - + Znajdź Find: - + Znajdź: ... - + ... Replace with: - + Zastąp: All - + Wszystko @@ -1313,17 +1332,17 @@ p, li { white-space: pre-wrap; } Override %1: - + Nadpisanie %1: Make arguments: - + Argumenty make'a: Targets: - + Produkty docelowe: @@ -1331,22 +1350,22 @@ p, li { white-space: pre-wrap; } Branches - + Gałęzie General information - + Ogólne informacje Repository: - + Składnica: Remote branches - + Zdalne gałęzie @@ -1356,52 +1375,52 @@ p, li { white-space: pre-wrap; } Delete - + Usuń Unable to find the repository directory for '%1'. - + Nie można znależć katalogu składnicy "%1". Delete Branch - + Usuń gałąź Would you like to delete the branch '%1'? - + Czy chcesz usunąć gałąź "%1"? Failed to delete branch - + Nie można usunąć gałęzi Failed to create branch - + Utworzenie gałęzi niepomyślnie zakończone Failed to stash - + Odłożenie zmian zakończone niepowodzeniem Would you like to create a local branch '%1' tracking the remote branch '%2'? - + Czy chcesz utworzyć lokalną gałąź "%1" śledzącą zdalną gałąź "%2"? Create branch - + Utwórz gałąź Failed to create a tracking branch - + Utworzenie gałęzi śledzącej zakończone niepowodzeniem @@ -1409,17 +1428,17 @@ p, li { white-space: pre-wrap; } Repository Location: - + Położenie składnicy: Select - + Wybierz Change: - + Zmiana: @@ -1427,27 +1446,27 @@ p, li { white-space: pre-wrap; } ... - + ... <New Host> - + <Nowy Host> Host - + Host Projects - + Projekty Description - + Opis @@ -1455,32 +1474,32 @@ p, li { white-space: pre-wrap; } WizardPage - + StronaKreatora Filter: - + Filtr: ... - + ... Keep updating - + Odświeżaj Project - + Projekt Description - + Opis @@ -1488,62 +1507,62 @@ p, li { white-space: pre-wrap; } WizardPage - + StronaKreatora Filter: - + Filtr: ... - + ... Name - + Nazwa Owner - + Właściciel Description - + Opis Choose a repository of the project '%1'. - + Wybierz składnicę dla projektu "%1". Mainline Repositories - + Główne składnice Clones - + Klony Baseline Repositories - + Podstawowe składnice Shared Project Repositories - + Współdzielone składnice Personal Repositories - + Osobiste składnice @@ -1551,27 +1570,27 @@ p, li { white-space: pre-wrap; } General Information - + Ogólne informacje Repository: - + Składnica: repository - + składnica Branch: - + Gałąź: branch - + gałąź @@ -1581,12 +1600,12 @@ p, li { white-space: pre-wrap; } Author: - + Autor: Email: - + Email: @@ -1594,27 +1613,27 @@ p, li { white-space: pre-wrap; } Environment variables - + Zmienne środowiskowe PATH: - + ŚCIEŻKA: From system - + Z systemu <b>Note:</b> - + <b>Uwaga:</b> Git needs to find Perl in the environment as well. - + Git musi znaleźć również Perl w środowisku. @@ -1634,7 +1653,7 @@ p, li { white-space: pre-wrap; } Prompt to submit - Przypominaj o wysyłaniu zmian do serwera + Pytaj przed wysłaniem zmian do serwera @@ -1644,12 +1663,12 @@ p, li { white-space: pre-wrap; } Git - + Git Git Settings - + Ustawienia Git @@ -1657,17 +1676,17 @@ p, li { white-space: pre-wrap; } Registered Documentation - + Zarejestrowana dokumentacja Add... - + Dodaj... Remove - + Usuń @@ -1703,27 +1722,27 @@ p, li { white-space: pre-wrap; } Form - + Formularz Font - + Czcionka Family: - + Rodzina: Style: - + Styl: Size: - + Rozmiar: @@ -1758,52 +1777,52 @@ p, li { white-space: pre-wrap; } Show my home page - + Pokaż moją stronę startową Show a blank page - + Pokaż pustą stronę Show my tabs from last session - + Pokaż moje karty z ostatniej sesji Home Page: - + Strona startowa: Use &Current Page - + Użyj &bieżącej strony Use &Blank Page - + Użyj &pustej strony Restore to Default - + Przywróć domyślną Help Bookmarks - + Zakładki pomocy Import... - + Zaimportuj... Export... - + Wyeksportuj... @@ -1847,7 +1866,7 @@ p, li { white-space: pre-wrap; } Perforce Prompt - Przypomnienie z Perforce'a + Pytanie Perforce'a @@ -1860,7 +1879,7 @@ p, li { white-space: pre-wrap; } Prompt to submit - Przypominaj o wysyłaniu zmian do serwera + Pytaj przed wysłaniem zmian do serwera @@ -1931,7 +1950,7 @@ p, li { white-space: pre-wrap; } Default File Encoding: - + Domyślne kodowanie plików: @@ -1944,22 +1963,22 @@ p, li { white-space: pre-wrap; } Name: - + Nazwa: Command: - + Komenda: Working Directory: - + Katalog roboczy: Command Arguments: - + Argumenty komendy: @@ -1967,32 +1986,32 @@ p, li { white-space: pre-wrap; } Build and Run - + Budowanie i uruchamianie Save all files before Build - + Zachowuj wszystkie pliki przed budowaniem Always build Project before Running - + Zawsze buduj projekt przed uruchomieniem Show Compiler Output on building - + Pokazuj wyjście kompilatora w trakcie budowania Use jom instead of nmake - + Używaj jom zamiast nmake <i>jom</i> is a drop-in replacement for <i>nmake</i> which distributes the compilation process to multiple CPU cores. For more details, see the <a href="http://qt.gitorious.org/qt-labs/jom/">jom Homepage</a>. Disable it if you experience problems with your builds. - + <i>jom</i> jest zamiennikiem <i>nmake</i> który dystrybuuje proces kompilacji do wielu rdzeni CPU. Szczegóły znajdziesz tu: <a href="http://qt.gitorious.org/qt-labs/jom/">jom Homepage</a>. Wyłącz tą opcję jeśli napotykasz na problemy podczas budowania. @@ -2000,37 +2019,42 @@ p, li { white-space: pre-wrap; } Form - + Formularz Manage Sessions... - + Zarządzanie sesjami... Create New Project... - + Utwórz nowy projekt... Open Recent Project - + Otwórz ostatnio używany projekt Resume Session - + Wznów sesję - + %1 (last session) + %1 (ostatnia sesja) + + + + %1 (current session) New Project... - + Nowy projekt... @@ -2046,22 +2070,22 @@ p, li { white-space: pre-wrap; } Project management - + Zarządzanie projektami &Add to Project - + &Dodaj do projektu &Project - + &Projekt Add to &version control - + Dodaj do systemu kontroli &wersji @@ -2070,7 +2094,11 @@ p, li { white-space: pre-wrap; } - + Następujące pliki zostaną dodane: + + + + @@ -2078,22 +2106,22 @@ p, li { white-space: pre-wrap; } Remove File - + Usuń plik File to remove: - + Plik do usunięcia: &Delete file permanently - + &Skasuj plik bezpowrotnie &Remove from Version Control - + &Usuń z systemu kontroli wersji @@ -2101,17 +2129,17 @@ p, li { white-space: pre-wrap; } Edit run configuration: - + Zmodyfikuj konfigurację uruchamiania: + - + + - - + - @@ -2119,32 +2147,32 @@ p, li { white-space: pre-wrap; } Session Manager - + Zarządzanie sesjami Create New Session - + Utwórz nową sesję Clone Session - + Sklonuj sesję Delete Session - + Usuń sesję <a href="qthelp://com.nokia.qtcreator/doc/creator-quick-tour.html#session-management-in-qt-creator">What is a Session?</a> - + <a href="qthelp://com.nokia.qtcreator/doc/creator-quick-tour.html#session-management-in-qt-creator">Co to jest sesja?</a> Switch to session - + Przełącz sesję @@ -2152,132 +2180,132 @@ p, li { white-space: pre-wrap; } Form - + Formularz The header file - + Plik nagłówkowy &Sources - + Źró&dła Widget librar&y: - + &Biblioteka widżetów: Widget project &file: - + Plik z &projektem widżetu: Widget h&eader file: - + Plik na&główkowy widżetu: The header file has to be specified in source code. - + Plik nagłowkowy musi wystąpić w kodzie źródłowym. Widge&t source file: - + Plik żródłowy widże&tu: Widget &base class: - + Klasa podsta&wowa widżetu: QWidget - + QWidget Plugin class &name: - + &Nazwa klasy wtyczki: Plugin &header file: - + Plik &nagłówkowy wtyczki: Plugin sou&rce file: - + Plik ź&ródłowy wtyczki: Icon file: - + Plik z ikoną: &Link library - + Dowiąż bib&liotekę Create s&keleton - + Utwórz sz&kielet Include pro&ject - + Dołącz pro&jekt &Description - + &Opis G&roup: - + &Grupa: &Tooltip: - + &Podpowiedź: W&hat's this: - + "&Co to jest": The widget is a &container - + Widżet jest po&jemnikiem Property defa&ults - + Dom&yślne wartości właściwości dom&XML: - + dom&XML: Select Icon - + Wybierz ikonę Icon files (*.png *.ico *.jpg *.xpm *.tif *.svg) - + Pliki z ikonami (*.png *.ico *.jpg *.xpm *.tif *.svg) @@ -2285,7 +2313,7 @@ p, li { white-space: pre-wrap; } WizardPage - + StronaKreatora @@ -2315,17 +2343,17 @@ p, li { white-space: pre-wrap; } Plugin name: - + Nazwa wtyczki: Resource file: - + Plik z zasobami: icons.qrc - + icons.qrc @@ -2333,22 +2361,22 @@ p, li { white-space: pre-wrap; } Custom Qt Widget Wizard - + Kreator własnych widżetów Qt Custom Widget List - + Lista własnych widżetów Widget &Classes: - + &Klasy widżetów: Specify the list of custom widgets and their properties. - + Podaj listę własnych widżetów i ich właściwości. @@ -2363,7 +2391,7 @@ It also automatically sets the correct Qt version. Skin: - + Skórka: @@ -2371,69 +2399,104 @@ It also automatically sets the correct Qt version. Form - + Formularz Examples not installed - + Przykłady nie są zainstalowane Open - + Otwórz - + Tutorials - + Samouczki Explore Qt Examples - + Zgłąb przykłady Qt Did You Know? - + Czy wiesz że? <b>Qt Creator - A quick tour</b> - + <b>Qt Creator - Krótki przegląd</b> Creating an address book - + Tworzenie książki adresowej Understanding widgets - + Pojęcie widżetów Building with qmake - + Budowanie przy pomocy qmake Writing test cases - + Pisanie testów Choose an example... + Wybierz przykład... + + + + Copy Project to writable Location? - + + <p>The project you are about to open is located in the write-protected location:</p><blockquote>%1</blockquote><p>Please select a writable location below and click "Copy Project and Open" to open a modifiable copy of the project or click "Keep Project and Open" to open the project in location.</p><p><b>Note:</b> You will not be able to alter or compile your project in the current location.</p> + + + + + &Location: + &Położenie: + + + + &Copy Project and Open + S&kopiuj projekt i otwórz + + + + &Keep Project and Open + + + + + Warning + Ostrzeżenie + + + + The specified location already exists. Please specify a valid location. + Podane położenie już istnieje. Podaj poprawne położenie. + + + Cmd Shortcut key - + Cmd @@ -2450,69 +2513,69 @@ It also automatically sets the correct Qt version. You can switch between Qt Creator's modes using <tt>Ctrl+number</tt>:<ul><li>1 - Welcome</li><li>2 - Edit</li><li>3 - Debug</li><li>4 - Projects</li><li>5 - Help</li><li></li><li>6 - Output</li></ul> - + Możesz przełączać tryby Qt Creator'a używając <tt>Ctrl+liczba</tt>:<ul><li>1 - Powitanie</li><li>2 - Edycja</li><li>3 - Debug</li><li>4 - Projekty</li><li>5 - Pomoc</li><li></li><li>6 - Wyjścia</li></ul> You can show and hide the side bar using <tt>%1+0<tt>. %1 gets replaced by Alt (Win/Unix) or Cmd (Mac) - + Możesz pokazać lub schować boczny pasek używając <tt>%1+0<tt>. You can fine tune the <tt>Find</tt> function by selecting &quot;Whole Words&quot; or &quot;Case Sensitive&quot;. Simply click on the icons on the right end of the line edit. - + Możesz wyregulować działanie funkcji <tt>Znajdź</tt> poprzez wybranie &quot;Tylko całe słowa&quot; lub &quot;Uwzględniaj wielkość liter&quot;.W tym celu naciśnij ikonę w prawym końcu pola edycyjnego. If you add <a href="qthelp://com.nokia.qtcreator/doc/creator-external-library-handling.html">external libraries</a>, Qt Creator will automatically offer syntax highlighting and code completion. - + Dodając <a href="qthelp://com.nokia.qtcreator/doc/creator-external-library-handling.html">zewnętrzne biblioteki</a>, Qt Creator automatycznie zaoferuje podświetlanie składni i uzupełnianie kodu. The code completion is CamelCase-aware. For example, to complete <tt>namespaceUri</tt> you can just type <tt>nU</tt> and hit <tt>Ctrl+Space</tt>. - + Uzupełnianie kodu uwzględnia wielkie litery w środku nazw. Na przykład aby uzupełnić <tt>namespaceUri</tt> wystarczy że napiszesz <tt>nU</tt> i przyciśniesz <tt>Ctrl+spacja</tt>. You can force code completion at any time using <tt>Ctrl+Space</tt>. - + W każdej chwili możesz wywołać uzupełnianie kodu naciskając <tt>Ctrl+spacja</tt>. You can start Qt Creator with a session by calling <tt>qtcreator &lt;sessionname&gt;</tt>. - + Wywołując <tt>qtcreator &lt;nazwa_sesji&gt;</tt> możesz uruchomić Qt Creator z wybraną sesją. You can return to edit mode from any other mode at any time by hitting <tt>Escape</tt>. - + Możesz zawsze powrócić do trybu edycji z każdego innego trybu naciskając <tt>Escape</tt>. You can switch between the output pane by hitting <tt>%1+n</tt> where n is the number denoted on the buttons at the window bottom:<ul><li>1 - Build Issues</li><li>2 - Search Results</li><li>3 - Application Output</li><li>4 - Compile Output</li></ul> %1 gets replaced by Alt (Win/Unix) or Cmd (Mac) - + Możesz przełączać panele wyjściowe naciskając <tt>%1+n</tt> gdzie n jest odpowiednim numerem na przycisku u dołu okna:<ul><li>1 - Problemy podczas budowania</li><li>2 - Wyniki poszukiwania</li><li>3 - Wyjście aplikacji</li><li>4 - Wyjście kompilacji</li></ul> You can quickly search methods, classes, help and more using the <a href="qthelp://com.nokia.qtcreator/doc/creator-navigation.html">Locator bar</a> (<tt>%1+K</tt>). - + Używając <a href="qthelp://com.nokia.qtcreator/doc/creator-navigation.html">lokalizatora</a> (<tt>%1+K</tt>) możesz szybko znależć metody, klasy, itd. lub przeszukać dokumentację. You can add custom build steps in the <a href="qthelp://com.nokia.qtcreator/doc/creator-build-settings.html">build settings</a>. - + Możesz dodać własne kroki do procesu budowania w <a href="qthelp://com.nokia.qtcreator/doc/creator-build-settings.html">ustawieniach budowania</a>. Within a session, you can add <a href="qthelp://com.nokia.qtcreator/doc/creator-build-settings.html#dependencies">dependencies</a> between projects. - + W ramach sesji możesz dodać <a href="qthelp://com.nokia.qtcreator/doc/creator-build-settings.html#dependencies">zależności</a> pomiędzy projektami. You can set the preferred editor encoding for every project in <tt>Projects -> Editor Settings -> Default Encoding</tt>. - + Możesz ustawić preferowane kodowanie dla wszystkich projektów w <tt>Projekty -> Ustawienia edytora -> Domyślne kodowanie plików</tt>. @@ -2522,12 +2585,12 @@ It also automatically sets the correct Qt version. You can use Qt Creator with a number of <a href="qthelp://com.nokia.qtcreator/doc/creator-version-control.html">revision control systems</a> such as Subversion, Perforce, CVS and Git. - + Możesz używać Qt Creator'a z wieloma różnymi <a href="qthelp://com.nokia.qtcreator/doc/creator-version-control.html">systemami kontroli wersji</a> takimi jak Subversion, Perforce, CVS i Git. In the editor, <tt>F2</tt> toggles declaration and definition while <tt>F4</tt> toggles header file and source file. - + Naciśnięcie w edytorze <tt>F2</tt> przełącza między deklaracją a definicją, zaś <tt>F4</tt> przełącza między plikiem nagłówkowym a plikiem źródłowym. @@ -2548,17 +2611,17 @@ It also automatically sets the correct Qt version. QMake Build Configuration: - + Konfiguracja QMake: debug - + debug release - + release @@ -2576,7 +2639,7 @@ It also automatically sets the correct Qt version. Form - + Formularz @@ -2586,7 +2649,7 @@ It also automatically sets the correct Qt version. SDK Location - + Położenie SDK @@ -2596,10 +2659,10 @@ It also automatically sets the correct Qt version. Refresh - + Odśwież - + S60 SDKs @@ -2609,17 +2672,17 @@ It also automatically sets the correct Qt version. Qt Version: - + Wersja Qt: This Qt-Version is invalid. - + Ta wersja Qt nie jest poprawna. Manage - + Zarządzaj @@ -2629,22 +2692,22 @@ It also automatically sets the correct Qt version. Build Directory: - + Katalog wersji: <a href="import">Import existing build</a> - + <a href="import">Zaimportuj istniejącą wersję</a> Configuration Name: - + Nazwa konfiguracji: Tool Chain: - + Zestaw narzędzi: @@ -2655,22 +2718,22 @@ It also automatically sets the correct Qt version. Default Qt Version (%1) - + Domyślna wersja Qt (%1) No Qt Version set - + Nie ustawiono wersji Qt using Qt version: <b>%1</b><br>with tool chain <b>%2</b><br>building in <b>%3</b> - + używa wersji: <b>%1</b><br>z zestawem narzędzi: <b>%2</b><br>zbudowane w: <b>%3</b> General - + Ogólne @@ -2678,17 +2741,17 @@ It also automatically sets the correct Qt version. Qt versions - + Wersje Qt + - + + - - + - @@ -2702,22 +2765,22 @@ p, li { white-space: pre-wrap; } Show &Log - + Pokaż &log &Rebuild - + P&rzebuduj Name - + Nazwa QMake Location - + Położenie QMake @@ -2727,22 +2790,22 @@ p, li { white-space: pre-wrap; } Version Name: - + Nazwa wersji: QMake Location: - + Położenie QMake: MinGw Directory: - + Katalog MinGW: MSVC Version: - + Wersja MSVC: @@ -2751,13 +2814,18 @@ p, li { white-space: pre-wrap; } - MWC Directory: - + Default Qt Version: + Domyślna wersja Qt: - Default Qt Version: - + S60 SDK: + S60 SDK: + + + + Carbide Directory: + Katalog Carbide: @@ -2769,156 +2837,91 @@ p, li { white-space: pre-wrap; } - Locator::Internal::DirectoryFilterOptions + QuickOpen::Internal::DirectoryFilterOptions - Name: - + Nazwa: - File Types: - + Typy plików: - - Specify file name filters, separated by comma. Filters may contain wildcards. - - - - - Prefix: - - - - - Specify a short word/abbreviation that can be used to restrict completions to files from this directory tree. -To do this, you type this shortcut and a space in the Locator entry field, and then the word to search for. - - - - - Limit to prefix - - - - Add... - + Dodaj... - Edit... - + Edycja... - Remove - + Usuń - Directories: - + Katalogi: - Locator::Internal::FileSystemFilterOptions + QuickOpen::Internal::FileSystemFilterOptions - Filter configuration - + Konfiguracja filtra - Prefix: - + Przedrostek: - - Limit to prefix - - - - Include hidden files - + Włącz ukryte pliki - Filter: - + Filtr: - Locator::Internal::SettingsWidget + QuickOpen::Internal::SettingsWidget - Configure Filters - + Konfiguruj filtry - Add - + Dodaj - Remove - + Usuń - Edit - - - - - Refresh Interval: - - - - - min - + Edycja - Locator::Internal::SettingsDialog + QuickOpen::Internal::SettingsDialog - Configure Filters - + Konfiguruj filtry - Add - + Dodaj - Remove - + Usuń - Edit... - + Edycja... - - Refresh Interval: - - - - - min - - - - Refresh now! - + Odśwież teraz! @@ -2926,7 +2929,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Prompt to submit - Przypominaj o wysyłaniu zmian do serwera + Pytaj przed wysłaniem zmian do serwera @@ -2959,97 +2962,97 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Tabs and Indentation - + Tabulatory i wcięcia Insert &spaces instead of tabs - + Wstawiaj &spacje zamiast tabulatorów Enable automatic &indentation - + Włącz automatyczne wc&ięcia Backspace will go back one indentation level instead of one space. - + Klawisz "Backspace" skasuje spacje aż do poprzedniego wcięcia zamiast jednej spacji. &Backspace follows indentation - + Klawisz "&Backspace" podąża za wcięciami Ta&b size: - + Rozmiar ta&bulatorów: &Indent size: - + Rozmiar wc&ięć: Tab key performs auto-indent: - + Klawisz "Tab" wykonuje automatyczne wcięcia: Never - + Nigdy Always - + Zawsze In leading white space - + Jeśli poprzedzony jest spacją Storage - + Przechowywanie Removes trailing whitespace on saving. - + Usuwa białe znaki na końcu linii podczas zachowywania. &Clean whitespace - + Wy&czyść białe znaki Clean whitespace in entire document instead of only for changed parts. - + Wyczyść białe znaki w całym dokumencie zamiast tylko w zmienionych częściach. In entire &document - + W całym &dokumencie Correct leading whitespace according to tab settings. - + Popraw białe znaki stosownie do ustawień tabulatorów. Clean indentation - + Wyczyść wcięcia &Ensure newline at end of file - + Wstawiaj znak now&ej linii na końcu pliku @@ -3057,32 +3060,32 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Bold - + Pogrubiony Italic - + Kursywa Background: - + Kolor tła: Foreground: - + Kolor pierwszoplanowy: Erase background - + Wyczyść tło x - + x @@ -3095,12 +3098,12 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Display line &numbers - + Wyświetlaj &numery linii Highlight current &line - + Podświetlaj bieżącą &linię @@ -3110,52 +3113,52 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Highlight &blocks - + Podświetlaj &bloki Mark text changes - + Zaznaczaj zmiany w tekście Show tabs and spaces. - + Pokazuj tabulatory i spacje. &Visualize whitespace - + &Wizualizuj białe znaki Animate matching parentheses - + Pokazuj animację pasujących nawiasów Text Wrapping - + Zawijanie tekstu Enable text &wrapping - + Włącz za&wijanie tekstu Display right &margin at column: - + Wyświetl prawy &margines w kolumnie: Navigation - + Nawigacja Enable &mouse navigation - + Włącz nawigację &myszy @@ -3163,37 +3166,37 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Font - + Czcionka Family: - + Rodzina: Size: - + Rozmiar: Antialias - + Antyaliasing Color Scheme - + Schemat kolorów Copy... - + Skopiuj... Delete - + Usuń @@ -3201,7 +3204,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t WizardPage - + StronaKreatora @@ -3211,7 +3214,7 @@ To do this, you type this shortcut and a space in the Locator entry field, and t Path: - + Ścieżka: @@ -3281,26 +3284,26 @@ name <email> alias <email> Form - + Formularz - + News From the Qt Labs - + Nowiny z Qt Labs Qt Websites - + Strony o Qt http://labs.trolltech.com/blogs/feed Add localized feed here only if one exists - + http://labs.trolltech.com/blogs/feed - + Qt Home @@ -3319,6 +3322,11 @@ name <email> alias <email> Qt Centre + + + Qt Apps + + Qt for Symbian at Forum Nokia @@ -3332,7 +3340,9 @@ name <email> alias <email> #gradientWidget { background-color: qlineargradient(spread:pad, x1:0.5, y1:0, x2:0.5, y2:1, stop:0 rgba(247, 247, 247, 255), stop:1 rgba(215, 215, 215, 255)); } - + #gradientWidget { + background-color: qlineargradient(spread:pad, x1:0.5, y1:0, x2:0.5, y2:1, stop:0 rgba(247, 247, 247, 255), stop:1 rgba(215, 215, 215, 255)); +} @@ -3341,22 +3351,26 @@ name <email> alias <email> border-width: 0; } - + #headerFrame { + border-image: url(:/welcome/images/center_frame_header.png) 0; + border-width: 0; +} + Help us make Qt Creator even better - + Pomóż nam ulepszyć Qt Creatora Feedback - + Wyraź opinię - + Welcome - + Powitanie @@ -3411,12 +3425,12 @@ name <email> alias <email> Add Filter Name - + Dodaj nazwę filtra Filter Name: - + Nazwa filtra: @@ -3452,37 +3466,37 @@ name <email> alias <email> New - + Nowy Remove - + Usuń Up - + W górę Down - + W dół Cut - + Wytnij Copy - + Skopiuj Paste - + Wklej @@ -3492,7 +3506,7 @@ name <email> alias <email> Ctrl+C - + Ctrl+C @@ -3502,17 +3516,17 @@ name <email> alias <email> Add Variable - + Dodaj zmienną Add Scope - + Dodaj zakres Add Block - + Dodaj blok @@ -3520,42 +3534,42 @@ name <email> alias <email> Edit Variable - + Zmodyfikuj zmienną Variable Name: - + Nazwa zmiennej: Assignment Operator: - + Operator podstawienia: Variable: - + Zmienna: Append (+=) - + Dodaj (+=) Remove (-=) - + Usuń (-=) Replace (~=) - + Zastąp (~=) Set (=) - + Ustaw (=) @@ -3565,52 +3579,52 @@ name <email> alias <email> Select Item - + Wybierz element Edit Item - + Zmodyfikuj element Select Items - + Wybierz elementy Edit Items - + Zmodyfikuj elementy New - + Nowy Remove - + Usuń Edit Values - + Zmodyfikuj wartości Edit %1 - + Zmodyfikuj %1 Edit Scope - + Zmodyfikuj zakres Edit Advanced Expression - + Zmodyfikuj zaawansowane wyrażenie @@ -3649,7 +3663,7 @@ name <email> alias <email> Application - + Failed to load core: %1 @@ -3684,12 +3698,12 @@ name <email> alias <email> <Select Symbol> - + <Wybierz symbol> <No Symbols> - + <Brak symbolu> @@ -3698,17 +3712,17 @@ name <email> alias <email> The plugin '%1' does not exist. - + Wtyczka "%1" nie istnieje. Unknown option %1 - + Nieznana opcja %1 The option %1 requires an argument. - + Opcja %1 wymaga argumentu. @@ -3741,7 +3755,7 @@ name <email> alias <email> Dependencies are successfully resolved - + Zależności zostały pomyślnie rozwiązane @@ -3761,7 +3775,7 @@ name <email> alias <email> Plugin's initialization method succeeded - + Inicjalizacja wtyczki zakończona pomyślnie @@ -3771,7 +3785,7 @@ name <email> alias <email> Plugin successfully loaded and running - + Wtyczka pomyślnie załadowana i uruchomiona @@ -3825,7 +3839,7 @@ name <email> alias <email> Cannot load plugin because dependency failed to load: %1(%2) Reason: %3 - Nie można załadować wtyczki ponieważ nie powiodło się załadowanie zależności: %1(%2) + Nie można załadować wtyczki ponieważ załadowanie zależności: %1(%2) zakończyło sie niepowodzeniem Przyczyna: %3 @@ -3912,7 +3926,7 @@ Przyczyna: %3 Plugin initialization failed: %1 - Inicjalizacja wtyczki nie powiodła się: %1 + Nie można zainicjalizować wtyczki: %1 @@ -3976,22 +3990,22 @@ Przyczyna: %3 Cannot set up communication channel: %1 - + Nie można ustawić kanału komunikacyjnego: %1 Press <RETURN> to close this window... - + Naciśnij <RETURN> aby zamknąć to okno... Cannot create temporary file: %1 - + Nie można utworzyć tymczasowego pliku: %1 Cannot create temporary directory '%1': %2 - + Nie można utworzyć tymczasowego katalogu "%1": %2 @@ -4006,7 +4020,7 @@ Przyczyna: %3 Cannot execute '%1': %2 - + Nie można uruchomić "%1": %2 @@ -4016,22 +4030,22 @@ Przyczyna: %3 Cannot create socket '%1': %2 - + Nie można utworzyć gniazda "%1": %2 The process '%1' could not be started: %2 - + Proces "%1" nie może zostać rozpoczęty: %2 Cannot obtain a handle to the inferior: %1 - + Nie otrzymano uchwytu do podprocesu: %1 Cannot obtain exit status from inferior: %1 - + Nie otrzymano kodu wyjściowego podprocesu: %1 @@ -4108,7 +4122,7 @@ Przyczyna: %3 Przeglądaj... - + Choose a directory Wybierz katalog @@ -4313,7 +4327,7 @@ Przyczyna: %3 Build Environment - Środowisko budowania + Środowisko procesu budowania @@ -4321,7 +4335,7 @@ Przyczyna: %3 CMake Wizard - + Kreator CMake @@ -4329,7 +4343,7 @@ Przyczyna: %3 Qt Creator has detected an <b>in-source-build in %1</b> which prevents shadow builds. Qt Creator will not allow you to change the build directory. If you want a shadow build, clean your source directory and re-open the project. - + Qt Creator wykrył wersję zbudowaną <b>wewnątrz %1</b> co uniemożliwia zbudowanie wersji na zewnątrz. Qt Creator nie umożliwia zmiany katalogu wersji. Jeśli chcesz zbudować wersję na zewnątrz, wyczyść katalog ze źródłami i otwórz ponownie projekt. @@ -4342,12 +4356,12 @@ Przyczyna: %3 Please enter the directory in which you want to build your project. Qt Creator recommends to not use the source directory for building. This ensures that the source directory remains clean and enables multiple builds with different settings. - Podaj katalog w którym chcesz zbudować swój projekt. Qt Creator poleca aby nie budować projektu w katalogu ze źródłami. Dzięki temu katalog ze źródłami pozostaje czysty i możliwe jest zbudowanie wielu wersji z różnymi ustawieniami na podstawie tych samych źródeł. + Podaj katalog w którym chcesz zbudować swój projekt. Zaleca się aby nie budować projektu w katalogu ze źródłami. Dzięki temu katalog ze źródłami pozostaje czysty i możliwe jest zbudowanie wielu wersji z różnymi ustawieniami na podstawie tych samych źródeł. Build directory: - Katalog budowania: + Katalog wersji: @@ -4355,32 +4369,32 @@ Przyczyna: %3 Please specify the path to the cmake executable. No cmake executable was found in the path. - + Podaj ścieżkę do programu cmake. Programu cmake nie wykryto w ścieżce. The cmake executable (%1) does not exist. - + Program cmake (%1) nie istnieje. The path %1 is not a executable. - + Ścieżka %1 nie wskazuje na program. The path %1 is not a valid cmake. - + Ścieżka %1 nie pokazuje na poprawny program cmake. Run CMake - + Uruchom CMake Arguments - + Argumenty @@ -4410,22 +4424,22 @@ Przyczyna: %3 NMake Generator - + Generator NMake NMake Generator (%1) - + Generator NMake (%1) MinGW Generator - + Generator MinGW - + No valid cmake executable specified. - + Brak poprawnego programu cmake. @@ -4433,23 +4447,23 @@ Przyczyna: %3 Create - + Utwórz New configuration - + Nowa konfiguracja New Configuration Name: - + Nazwa nowej konfiguracji: CMakeProjectManager::Internal::CMakeBuildSettingsWidget - + &Change &Zmień @@ -4457,7 +4471,7 @@ Przyczyna: %3 CMakeProjectManager::Internal::CMakeSettingsPage - + CMake CMake @@ -4493,7 +4507,7 @@ Przyczyna: %3 Run Environment - Środowisko uruchamiania + Środowisko procesu uruchamiania @@ -4513,7 +4527,7 @@ Przyczyna: %3 Build Environment - Środowisko budowania + Środowisko procesu budowania @@ -4524,19 +4538,19 @@ Przyczyna: %3 CMakeProjectManager::Internal::MakeStepConfigWidget - + Additional arguments: Dodatkowe argumenty: Targets: - + Produkty docelowe: <b>Make:</b> %1 %2 - + <b>Make:</b> %1 %2 @@ -4723,12 +4737,12 @@ Czy chcesz je nadpisać? Core::EditorManager - + Revert to Saved Przywróć do zachowanego - + Close Zamknij @@ -4740,12 +4754,12 @@ Czy chcesz je nadpisać? - + Close Others Zamknij inne - + Next Open Document in History Następny otwarty dokument w historii @@ -4857,7 +4871,7 @@ Czy chcesz je nadpisać? Remove Current Split - + Usuń bieżący podział @@ -4867,7 +4881,7 @@ Czy chcesz je nadpisać? Remove All Splits - + Usuń wszystkie podziały @@ -4877,7 +4891,7 @@ Czy chcesz je nadpisać? Goto Other Split - + Przejdź do kolejnego edytora @@ -4932,20 +4946,20 @@ Czy chcesz je nadpisać? - + Make writable - + Save as ... Zachowaj jako ... - + Failed! - + Niepomyślnie zakończone! @@ -4965,7 +4979,7 @@ Czy chcesz je nadpisać? Save %1 As... - Zachowaj %1 jalo... + Zachowaj %1 jako... @@ -5013,37 +5027,37 @@ Czy chcesz je nadpisać? Split Left/Right - + Podziel lewo / prawo Split Top/Bottom - + Podziel góra / dół Unsplit - + Usuń podział Default Splitter Layout - + Domyślne rozmieszczenie podziału Save Current as Default - + Zachowaj bieżący jako domyślny Restore Default Layout - + Przywróć domyślne rozmieszczenie Previous Document - + Poprzedni dokument @@ -5053,7 +5067,7 @@ Czy chcesz je nadpisać? Next Document - + Następny dokument @@ -5063,22 +5077,22 @@ Czy chcesz je nadpisać? Previous Group - + Poprzednia grupa Next Group - + Następna grupa Move Document to Previous Group - + Przenieś dokument do poprzedniej grupy Move Document to Next Group - + Przenieś dokument do następnej grupy @@ -5088,6 +5102,11 @@ Czy chcesz je nadpisać? Go Back + + + Go Back + + Go Forward @@ -5097,12 +5116,12 @@ Czy chcesz je nadpisać? Placeholder - + Pojemnik Close - + Zamknij @@ -5117,7 +5136,7 @@ Czy chcesz je nadpisać? Copy full path to clipboard - + Skopiuj pełną ścieżkę do schowka @@ -5126,32 +5145,32 @@ Czy chcesz je nadpisać? Open Documents - + Otwarte dokumenty Close %1 - + Zamknij %1 Close Editor - + Zamknij edytor Close All Except %1 - + Zamknij wszystko oprócz %1 Close Other Editors - + Zamknij pozostałe edytory Close All Editors - + Zamknij wszystkie edytory @@ -5183,7 +5202,7 @@ Czy chcesz je nadpisać? An item named '%1' already exists at this location. Do you want to overwrite it? - + Element o nazwie "%1" istnieje już w tym miejscu. Czy chcesz go nadpisać? @@ -5196,69 +5215,69 @@ Czy chcesz je nadpisać? Qt Creator - + Qt Creator Output - + Wyjścia &File - + &Plik &Edit - + &Edycja &Tools - + &Narzędzia &Window - + &Okno &Help - + P&omoc &New File or Project... - + &Nowy plik lub projekt... &Open File or Project... - + &Otwórz plik lub projekt... &Open File With... - + &Otwórz plik przy pomocy... Recent Files - + Ostatnie pliki &Save - + &Zachowaj Save &As... - + Zachowaj j&ako... @@ -5269,17 +5288,17 @@ Czy chcesz je nadpisać? Save A&ll - + Zachowaj &wszystko &Print... - + Wy&drukuj... E&xit - + Za&kończ @@ -5290,38 +5309,38 @@ Czy chcesz je nadpisać? &Undo - + &Cofnij &Redo - + &Przywróć Cu&t - + Wy&tnij &Copy - + S&kopiuj &Paste - + Wk&lej &Select All - + Zaznacz &wszystko &Go To Line... - + Przej&dź do linii... @@ -5331,53 +5350,53 @@ Czy chcesz je nadpisać? &Options... - + &Opcje... Minimize - + Zminimalizuj Zoom - + Powiększ Show Sidebar - + Pokaż boczny pasek Full Screen - + Pełny ekran About &Qt Creator - + Informacje o &Qt Creator About &Qt Creator... - + Informacje o &Qt Creator... About &Plugins... - + Informacje o wtyczkach... New... Title of dialog - + Nowy... Settings... - + Ustawienia... @@ -5385,7 +5404,7 @@ Czy chcesz je nadpisać? General - + Ogólne @@ -5393,7 +5412,7 @@ Czy chcesz je nadpisać? Switch to %1 mode - + Przejdź do trybu %1 @@ -5401,7 +5420,7 @@ Czy chcesz je nadpisać? Activate %1 Pane - + Uaktywnij panel %1 @@ -5409,12 +5428,12 @@ Czy chcesz je nadpisać? Split - + Podziel Close - + Zamknij @@ -5422,7 +5441,7 @@ Czy chcesz je nadpisać? Activate %1 - + Uaktywnij %1 @@ -5430,27 +5449,27 @@ Czy chcesz je nadpisać? Output - + Wyjścia Clear - + Wyczyść Next Item - + Następny element Previous Item - + Poprzedni element Output &Panes - + &Panele wyjściowe @@ -5458,32 +5477,32 @@ Czy chcesz je nadpisać? Details - + Szczegóły Error Details - + Szczegóły błędów Close - + Zamknij Installed Plugins - + Zainstalowane wtyczki Plugin Details of %1 - + Szczegóły wtyczki %1 Plugin Errors of %1 - + Błędy wtyczki %1 @@ -5491,7 +5510,7 @@ Czy chcesz je nadpisać? Processes - + Procesy @@ -5500,12 +5519,13 @@ Czy chcesz je nadpisać? Exception at line %1: %2 %3 - + Wyjątek w linii %1: %2 +%3 Unknown error - + Nieznany błąd @@ -5513,12 +5533,12 @@ Czy chcesz je nadpisać? Split - + Podziel Close - + Zamknij @@ -5526,7 +5546,7 @@ Czy chcesz je nadpisać? Activate %1 - + Uaktywnij %1 @@ -5534,13 +5554,14 @@ Czy chcesz je nadpisać? Version Control - + System kontroli wersji Would you like to remove this file from the version control system (%1)? Note: This might remove the local file. - + Czy chcesz usunąć ten plik z systemu kontroli wersji (%1)? +Zwróć uwagę że spowoduje to usunięcie lokalnego pliku. @@ -5548,13 +5569,13 @@ Note: This might remove the local file. About Qt Creator - + Informacje o Qt Creator From revision %1<br/> This gets conditionally inserted as argument %8 into the description string. - + Z rewizji %1<br/> @@ -5565,7 +5586,17 @@ Note: This might remove the local file. CodePaster::CodePasterProtocol - + + No Server defined in the CodePaster preferences. + + + + + No Server defined in the CodePaster options. + + + + No such paste @@ -5574,13 +5605,22 @@ Note: This might remove the local file. CodePaster::CodePasterSettingsPage - CodePaster + + + Code Pasting + + Server: + Serwer: + + + + Note: Specify the host name for the CodePaster service without any protocol prepended (e.g. codepaster.mycompany.com). @@ -5588,13 +5628,13 @@ Note: This might remove the local file. CodePaster::CodepasterPlugin - &CodePaster + &Code Pasting Paste Snippet... - + Wklej urywek... @@ -5604,7 +5644,7 @@ Note: This might remove the local file. Fetch Snippet... - + Sprowadź urywek... @@ -5614,12 +5654,12 @@ Note: This might remove the local file. This protocol supports no listing - + Ten protokół nie obsługuje listingów Waiting for items - + Oczekiwanie na elementy @@ -5627,7 +5667,7 @@ Note: This might remove the local file. Error during paste - + Błąd podczas wklejania @@ -5635,11 +5675,11 @@ Note: This might remove the local file. Pastebin.com - + Pastebin.com - CodePaster + Code Pasting @@ -5648,25 +5688,25 @@ Note: This might remove the local file. Paste - + Wklej <Username> - + <Nazwa użytkownika> <Description> - + <Opis> <Comment> - + <Komentarz> @@ -5674,17 +5714,17 @@ Note: This might remove the local file. Enter class name - + Wprowadź nazwę klasy The header and source file names will be derived from the class name - + Nazwy pliku nagłówkowego i źródłowego będą zaproponowane na podstawie nazwy klasy - + Configure... - + Skonfiguruj... @@ -5692,33 +5732,33 @@ Note: This might remove the local file. C++ Class Wizard - + Kreator klasy C++ CppEditor::Internal::CppClassWizard - + Error while generating file contents. - + Błąd podczas generowania zawartości. CppEditor::Internal::CPPEditor - + Sort alphabetically - + Posortuj alfabetycznie - + This change cannot be undone. - + Ta zmiana nie może być cofnięta. Yes, I know what I am doing. - + Tak, wiem co robię. @@ -5726,7 +5766,7 @@ Note: This might remove the local file. Unfiltered - + Nieprzefiltrowane @@ -5734,52 +5774,52 @@ Note: This might remove the local file. C++ - + C++ Creates a C++ header file. - + Tworzy plik nagłówkowy C++. C++ Header File - + Plik nagłówkowy C++ Creates a C++ source file. - + Tworzy plik źródłowy C++. C++ Source File - + Plik źródłowy C++ C++ Class - + Klasa C++ Creates a header and a source file for a new class. - + Tworzy plik nagłówkowy i źródłowy dla nowej klasy. Follow Symbol under Cursor - + Podążaj za symbolem pod kursorem Switch between Method Declaration/Definition - + Przełącz między deklaracją a definicją metody Find Usages - + Znajdź użycia @@ -5789,7 +5829,7 @@ Note: This might remove the local file. Rename Symbol under Cursor - + Zmień nazwę symbolu pod kursorem @@ -5797,12 +5837,12 @@ Note: This might remove the local file. Completion - + Uzupełnianie Text Editor - + Edytor tekstu @@ -5810,15 +5850,15 @@ Note: This might remove the local file. Classes - + Klasy CppTools::Internal::FunctionArgumentWidget - + %1 of %2 - + %1 z %2 @@ -5826,7 +5866,7 @@ Note: This might remove the local file. Methods in current Document - + Metody w bieżącym dokumencie @@ -5845,30 +5885,30 @@ Note: This might remove the local file. Edit... - + Zmodyfikuj... Choose a location for the new license template file - + Wybierz położenie nowego pliku z szablonem licencji Template write error - + Błąd zapisywania szablonu Cannot write to %1: %2 - + Nie można zapisać do %1: %2 CppTools::Internal::CppFindReferences - + Searching... - + Przeszukiwanie... @@ -5876,15 +5916,15 @@ Note: This might remove the local file. Methods - + Metody CppPreprocessor - + %1: No such file or directory - + %1: Brak pliku lub katalogu @@ -5892,20 +5932,19 @@ Note: This might remove the local file. Scanning - + Skanowanie Indexing - + Indeksowanie - CppTools::Internal::CppLocatorFilter + CppTools::Internal::CppQuickOpenFilter - Classes and Methods - + Klasy i metody @@ -5913,12 +5952,12 @@ Note: This might remove the local file. File Naming Conventions - + Konwencje nazewnictwa plików C++ - + C++ @@ -5926,12 +5965,12 @@ Note: This might remove the local file. &C++ - + &C++ Switch Header/Source - + Przełącz między nagłówkiem a źródłem @@ -5939,7 +5978,7 @@ Note: This might remove the local file. Checks out a project from a CVS repository. - + Wyciąga projekt ze składnicy CVS. @@ -5952,12 +5991,12 @@ Note: This might remove the local file. Specify repository and path. - + Podaj składnicę i ścieżkę. Repository: - + Składnica: @@ -5965,7 +6004,7 @@ Note: This might remove the local file. Cannot find repository for '%1' - + Nie można odnaleźć składnicy dla "%1" @@ -5983,12 +6022,12 @@ Note: This might remove the local file. Add - + Dodaj Add "%1" - + Dodaj "%1" @@ -5998,37 +6037,37 @@ Note: This might remove the local file. Delete - + Usuń Delete "%1" - + Usuń "%1" Revert - + Odwróć zmiany Revert "%1" - + Odwróć zmiany w "%1" Diff Project - + Pokaż różnice w projekcie Diff Current File - + Pokaż różnice w bieżącym pliku Diff "%1" - + Pokaż różnice w "%1" @@ -6038,17 +6077,17 @@ Note: This might remove the local file. Commit All Files - + Wyślij wszystkie pliki Commit Current File - + Wyślij bieżący plik Commit "%1" - + Wyślij "%1" @@ -6068,52 +6107,52 @@ Note: This might remove the local file. Annotate Current File - + Dołącz adnotację do bieżącego pliku Annotate "%1" - + Dołącz adnotację do "%1" Project Status - + Stan projektu Update Project - + Odśwież projekt Commit - + Wyślij Diff Selected Files - + Pokaż różnice w zaznaczonych plikach &Undo - + &Cofnij &Redo - + &Przywróć Closing CVS Editor - + Zamykanie edytora CVS Do you want to commit the change? - + Czy chcesz wysłać zmianę? @@ -6123,17 +6162,17 @@ Note: This might remove the local file. The files do not differ. - + Pliki się nie różnią. The file '%1' could not be deleted. - + Nie można skasować pliku "%1". The file has been changed. Do you want to revert it? - + Plik został zmieniony. Czy chcesz odwrócić w nim zmiany? @@ -6148,22 +6187,22 @@ Note: This might remove the local file. There are no modified files. - + Brak zmodyfikowanych plików. Cannot create temporary file: %1 - + Nie można utworzyć tymczasowego pliku: %1 Project status - + Stan projektu The initial revision %1 cannot be described. - + Początkowa rewizja %1 nie może być opisana. @@ -6174,33 +6213,35 @@ Note: This might remove the local file. Executing: %1 %2 - + Wykonywanie: %1 %2 + Executing in %1: %2 %3 - + Wykonywanie w %1: %2 %3 + No cvs executable specified! - + Nie podano ścieżki do programu cvs! The process terminated with exit code %1. - + Proces zakończył się kodem wyjściowym %1. The process terminated abnormally. - + Proces niepoprawnie zakończony. Could not start cvs '%1'. Please check your settings in the preferences. - + Nie można uruchomić cvs "%1". Sprawdź stosowne ustawienia. @@ -6213,17 +6254,17 @@ Note: This might remove the local file. Added - + Dodano Removed - + Usunięto Modified - + Zmodyfikowano @@ -6236,7 +6277,7 @@ Note: This might remove the local file. CVS Command - + Komenda CVS @@ -6254,52 +6295,52 @@ Note: This might remove the local file. Breakpoint Number: - + Numer pułapki: Breakpoint Address: - + Adres pułapki: Property - + Właściwość Requested - + Zażądano Obtained - + Otrzymano Internal Number: - + Numer wewnętrzny: File Name: - + Nazwa pliku: Function Name: - + Nazwa funkcji: Line Number: - + Numer linii: Condition: - + Warunek: @@ -6309,47 +6350,47 @@ Note: This might remove the local file. Number - + Numer Function - + Funkcja File - + Plik Line - + Linia Condition - + Warunek Ignore - + Zignoruj Address - + Adres Breakpoint will only be hit if this condition is met. - + Program zatrzyma się na pułapce tylko gdy ten warunek będzie spełniony. Breakpoint will only be hit after being ignored so many times. - + Program zatrzyma się na pułapce po tym jak zostanie ona zignorowana podaną ilość razy. @@ -6357,82 +6398,82 @@ Note: This might remove the local file. Breakpoints - + Pułapki Delete breakpoint - + Usuń pułapkę Delete all breakpoints - + Usuń wszystkie pułapki Delete breakpoints of "%1" - + Usuń pułapki w "%1" Delete breakpoints of file - + Usuń pułapki w pliku Adjust column widths to contents - + Wyrównaj szerokości kolumn do ich zawartości Always adjust column widths to contents - + Zawsze wyrównuj szerokości kolumn do ich zawartości Edit condition... - + Zodyfikuj warunek... Synchronize breakpoints - + Zsynchronizuj pułapki Disable breakpoint - + Wyłącz pułapkę Enable breakpoint - + Włącz pułapkę Use short path - + Użyj skróconej ścieżki Use full path - + Użyj pełnej ścieżki Set Breakpoint at Function... - + Ustaw pułapkę w funkcji... Set Breakpoint at Function "main" - + Ustaw pułapkę w funkcji "main" Conditions on Breakpoint %1 - + Warunki dla pułapki %1 @@ -6446,7 +6487,7 @@ Note: This might remove the local file. The function "%1()" failed: %2 Function call failed - + Funkcja "%1()" zakończona niepowodzeniem: %2 @@ -6454,7 +6495,7 @@ Note: This might remove the local file. - + Version: %1 @@ -6466,7 +6507,7 @@ Note: This might remove the local file. Debugger - + Debugger @@ -6474,7 +6515,7 @@ Note: This might remove the local file. - + The console stub process was unable to start '%1'. @@ -6489,7 +6530,7 @@ Note: This might remove the local file. - + Attaching to a process failed for process id %1: %2 @@ -6541,7 +6582,7 @@ Note: This might remove the local file. Running requested... - + Zarządano uruchomienia... @@ -6577,7 +6618,7 @@ Note: This might remove the local file. Debugger Error - + Błąd debuggera @@ -6592,12 +6633,12 @@ Note: This might remove the local file. Stopped, current thread: %1 - + Zatrzymano, bieżący wątek: %1 Changing threads: %1 -> %2 - + Zmiana wątków: %1 -> %2 @@ -6658,12 +6699,12 @@ Note: This might remove the local file. - + Disabling dumpers due to debuggee crash... - + Querying dumpers for '%1'/'%2' (%3) @@ -6673,7 +6714,7 @@ Note: This might remove the local file. Cdb - + Cdb @@ -6712,15 +6753,15 @@ Note: This might remove the local file. <Unknown> - + <Nieznany> SymbolGroup - + Out of scope - + Poza zakresem @@ -6751,12 +6792,12 @@ Note: This might remove the local file. Adjust column widths to contents - + Wyrównaj szerokości kolumn do ich zawartości Always adjust column widths to contents - + Zawsze wyrównuj szerokości kolumn do ich zawartości @@ -6766,7 +6807,7 @@ Note: This might remove the local file. Show a message box when receiving a signal - + Pokaż komunikat po otrzymaniu sygnału @@ -6820,13 +6861,18 @@ Note: This might remove the local file. + Use code model + Używaj modelu kodu + + + Recheck debugging helper availability Synchronize breakpoints - + Zsynchronizuj pułapki @@ -6927,10 +6973,10 @@ Note: This might remove the local file. Debugger - + Debugger - + <Encoding error> @@ -6940,22 +6986,22 @@ Note: This might remove the local file. Process ID - + Identyfikator procesu Name - + Nazwa State - + Stan Refresh - + Odśwież @@ -6963,7 +7009,7 @@ Note: This might remove the local file. Select Executable - + Wybierz program @@ -6976,17 +7022,17 @@ Note: This might remove the local file. Select Executable - + Wybierz program Executable: - + Program: Arguments: - + Argumenty: @@ -6994,7 +7040,7 @@ Note: This might remove the local file. Select Executable - + Wybierz program @@ -7002,66 +7048,66 @@ Note: This might remove the local file. Select start address - + Wybierz adres startowy Enter an address: - + Podaj adres: Debugger::DebuggerManager - + Continue - + Kontynuuj - + Interrupt - + Przerwij - + Reset Debugger Step Over - + Przeskocz Step Into - + Wskocz do wnętrza Step Out - + Wyskocz na zewnątrz Run to Line - + Uruchom do linii Run to Outermost Function - + Uruchom do skrajnej funkcji Jump to Line - + Skocz do linii Toggle Breakpoint - + Przełącz ustawienie pułapki @@ -7074,25 +7120,25 @@ Note: This might remove the local file. - + Stopped. - + Zatrzymano. Running... - + Uruchamianie... Exited. - + Zakończono. Changing breakpoint state requires either a fully running or fully stopped application. - + Zmienianie stanu pułapki wymaga albo w pełni uruchomionej albo w pełni zatrzymanej aplikacji. @@ -7112,10 +7158,10 @@ Note: This might remove the local file. Warning - + Ostrzeżenie - + Save Debugger Log @@ -7127,15 +7173,25 @@ Note: This might remove the local file. Open Qt preferences - + Otwórz ustawienia Qt - Turn helper usage off + Turn off helper usage - + + The debugger could not load the debugging helper library. + + + + + The debugging helper is used to nicely format the values of some Qt and Standard Library data types. It must be compiled for each used Qt version separately. This can be done in the Qt preferences page by selecting a Qt installation and clicking on 'Rebuild' in the 'Debugging Helper' row. + + + + Continue anyway @@ -7145,19 +7201,9 @@ Note: This might remove the local file. - - The debugger did not find the debugging helper library. - - - - - The debugging helper is used to nicely format the values of some Qt and Standard Library data types. It must be compiled for each Qt version which you can do in the Qt preferences page by selecting a Qt installation and clicking on 'Rebuild' for the debugging helper. - - - - + Stop Debugger - + Zatrzymaj debugger @@ -7165,12 +7211,12 @@ Note: This might remove the local file. Clear contents - + Wyczyść zawartość Save contents - + Zachowaj zawartość @@ -7178,7 +7224,7 @@ Note: This might remove the local file. Type Ctrl-<Return> to execute a line. - + Naciśnij Ctrl-<Return> aby wykonać linię. @@ -7186,21 +7232,39 @@ Note: This might remove the local file. Debugger - + Debugger Debugger::Internal::DebugMode - + Debug + Debug + + + + Debugger::Internal::DebuggerListener + + + Close Debugging Session + + + + + A debugging session is still in progress. Would you like to terminate it? + + + + + A debugging session is still in progress. Terminating the session in the current state (%1) can leave the target in an inconsistent state. Would you still like to terminate it? Debugger::Internal::DebuggingHelperOptionPage - + Debugging Helper @@ -7210,7 +7274,7 @@ Note: This might remove the local file. - + Ctrl+Shift+F11 Ctrl+Shift+F11 @@ -7220,17 +7284,17 @@ Note: This might remove the local file. Option '%1' is missing the parameter. - + Brak parametru w opcji "%1". The parameter '%1' of option '%2' is not a number. - + Parametr "%1" w opcji "%2" nie jest liczbą. Invalid debugger option: %1 - + Niepoprawna opcja debuggera: %1 @@ -7245,7 +7309,7 @@ Note: This might remove the local file. Attach to Running External Application... - + Dołącz do uruchomionej zewnętrznej aplikacji... @@ -7260,12 +7324,12 @@ Note: This might remove the local file. Detach Debugger - + Odłącz debugger Stop Debugger/Interrupt Debugger - + Zatrzymaj debugger / przerwij debugger @@ -7275,7 +7339,7 @@ Note: This might remove the local file. &Views - + &Widoki @@ -7285,47 +7349,47 @@ Note: This might remove the local file. Reset to default layout - + Przywróć domyślne rozmieszczenie Threads: - + Wątki: Attaching to PID %1. - + Dołączanie do PID %1. Remove Breakpoint - + Usuń pułapkę Disable Breakpoint - + Wyłącz pułapkę Enable Breakpoint - + Włącz pułapkę Set Breakpoint - + Ustaw pułapkę Warning - + Ostrzeżenie Cannot attach to PID 0 - + Nie można dołączyć się do PID 0 @@ -7338,7 +7402,7 @@ Note: This might remove the local file. Debug - + Debug @@ -7346,84 +7410,99 @@ Note: This might remove the local file. Debugger - + Debugger::Internal::AbstractGdbAdapter - + The Gdb process could not be stopped: %1 - + Nie można zatrzymać procesu gdb: +%1 Inferior process could not be stopped: %1 - + Nie można zatrzymać podprocesu: +%1 Inferior started. - + Podproces uruchomiony. Inferior running. - + Uruchamianie podprocesu. Attached to stopped inferior. - + Dołączono do zatrzymanego podprocesu. Connecting to remote server failed: %1 - + Nie można połączyć się ze zdalnym serwerem: +%1 Debugger::Internal::CoreGdbAdapter - + + + + Error Loading Symbols + Błąd w trakcie ładowania symboli + + + + No executable to load symbols from specified. + + + + + Loading symbols from "%1" failed: + + + + + Attached to core temporarily. - - No binary found. + + Unable to determine executable from core file. - + + Attach to core "%1" failed: + + + + + Symbols found. - - Symbols not found in "%1" failed: -%2 - - - - + Attached to core. - - - Attach to core "%1" failed: -%2 - - Debugger::Internal::GdbEngine - + The Gdb process failed to start. Either the invoked program '%1' is missing, or you may have insufficient permissions to invoke the program. @@ -7455,22 +7534,22 @@ Note: This might remove the local file. Library %1 loaded. - + Załadowano bibliotekę %1. - + Library %1 unloaded. - + Wyładowano bibliotekę %1. - + Thread group %1 created. - + Utworzono grupę wątków %1. Thread %1 created. - + Utworzono wątek %1. @@ -7485,58 +7564,58 @@ Note: This might remove the local file. Thread %1 selected. - + Wybrano wątek %1. - + Reading %1... - + Wczytywanie %1... - + Running... - + Uruchamianie... - + Stop requested... - + Zarządano zatrzymania... - + Stopping temporarily. - + Executable failed - + Uruchomienie programu zakończone niepowodzeniem Process failed to start. - + Nie można uruchomić procesu. Executable failed: %1 - + Uruchomienie programu zakończone niepowodzeniem: %1 - + Jumped. Stopped. - + Program exited with exit code %1. - + Program zakończył się kodem wyjściowym %1. Program exited after receiving signal %1. - + Program zakończył się po otrzymaniu sygnału %1. @@ -7546,25 +7625,20 @@ Note: This might remove the local file. Processing queued commands. - + Przetwarzanie skolejkowanych komend. - + Loading %1... - + Ładowanie %1... - - Run to Function finished. Stopped. - - - - + Stopped at breakpoint. - + Zatrzymano w pułapce. - + <p>The inferior stopped because it received a signal from the Operating System.<p><table><tr><td>Signal name : </td><td>%1</td></tr><tr><td>Signal meaning : </td><td>%2</td></tr></table> @@ -7581,47 +7655,38 @@ Note: This might remove the local file. - + Stopped. - + Zatrzymano. - + Stopped: "%1" - + Zatrzymano: "%1" - + The debugger you are using identifies itself as: - + Debugger którego używasz identyfikuje się jako: This version is not officially supported by Qt Creator. Debugging will most likely not work well. Using gdb 6.7 or later is strongly recommended. - + Qt Creator oficjalnie nie obsługuje tej wersji. +Debugowanie najprawdopodobniej nie będzie działało poprawnie. +Zaleca się użycie gdb wersji 6.7 lub późniejszej. - - Error - - - - - Starting executable failed: - - - - - + Continuing after temporary stop... - + Kontynuowanie po tymczasowym zatrzymaniu... - + Running requested... - + Zarządano uruchomienia... @@ -7644,7 +7709,7 @@ Using gdb 6.7 or later is strongly recommended. - + Step next instruction requested... @@ -7654,42 +7719,36 @@ Using gdb 6.7 or later is strongly recommended. - + Run to function %1 requested... - + Unable to run '%1': %2 - + Nie można uruchomić "%1": %2 - + <unknown> End address of loaded module - + Retrieving data for stack view... - - - <not in scope> - Variable - - - + Retrieving data for watch view (%n requests pending)... - + Finished retrieving data. @@ -7711,7 +7770,7 @@ Using gdb 6.7 or later is strongly recommended. - + <0 items> @@ -7724,19 +7783,12 @@ Using gdb 6.7 or later is strongly recommended. - - %1 <shadowed %2> - Variable %1 is the variable name, %2 is a simple count - - - - + <shadowed> - Type of local variable or parameter shadowed by another - + <n/a> @@ -7752,119 +7804,146 @@ Using gdb 6.7 or later is strongly recommended. - - The dumper library was not found at %1. - - - - - Dumper injection loading triggered (%1)... - - - - - Dumper loading (%1) failed: %2 - - - - - Loading dumpers via debugger call (%1)... - - - - + Disassembler failed: %1 - - Adapter start failed + + Unable to start gdb '%1': %2 - - Cannot find debugger initialization script + + Gdb I/O Error + + + + + Unexpected Gdb Exit + The gdb process exited unexpectedly (%1). + + + + + crashed + + + + + code %1 + + + + + Adapter start failed + + + + + Cannot find debugger initialization script + + + + + Execution Error + + + + + Cannot continue debugged process: + + + + + + Jumping out of bogus frame... + + + + + The debugging helper library was not found at %1. + + + + The debugger settings point to a script file at '%1' which is not accessible. If a script file is not needed, consider clearing that entry to avoid this warning. - + Setting breakpoints... - + Starting inferior... - + Inferior start failed - + Inferior shutdown failed - + Adapter crashed - - - Adapter shutdown failed - - Debugger::Internal::GdbOptionsPage Gdb - + Gdb Choose Gdb Location - + Wybierz położenie gdb Choose Location of Startup Script File - + Wybierz położenie pliku ze startowym skryptem Debugger::Internal::PlainGdbAdapter - + Cannot set up communication with child process: %1 - + Nie można ustanowić komunikacji z podprocesem: %1 - + Starting executable failed: - + Nie można uruchomić programu: + Debugger::Internal::RemoteGdbAdapter - - The upload process failed to start. Either the invoked script '%1' is missing, or you may have insufficient permissions to invoke the program. + + The upload process failed to start. Shell missing? - + The upload process crashed some time after starting successfully. @@ -7891,12 +7970,12 @@ Using gdb 6.7 or later is strongly recommended. Error - + Błąd Adapter too old: does not support asynchronous mode. - + Zbyt stary adapter: nie obsługuje on trybu asynchronicznego. @@ -7908,10 +7987,16 @@ Using gdb 6.7 or later is strongly recommended. Debugger::Internal::TrkGdbAdapter - + + Process started, PID: 0x%1, thread id: 0x%2, code segment: 0x%3, data segment: 0x%4. + + + + Connecting to trk server adapter failed: - + Nie można połączyć się z adapterem serwera trk: + @@ -7932,7 +8017,7 @@ Using gdb 6.7 or later is strongly recommended. Symbian Trk - + Symbian Trk @@ -7940,22 +8025,22 @@ Using gdb 6.7 or later is strongly recommended. Module name - + Nazwa modułu Symbols read - + Przeczytane symbole Start address - + Adres początkowy End address - + Adres końcowy @@ -7963,12 +8048,12 @@ Using gdb 6.7 or later is strongly recommended. Modules - + Moduły Update module list - + Odśwież listę modułów @@ -7978,67 +8063,67 @@ Using gdb 6.7 or later is strongly recommended. Load symbols for all modules - + Załaduj symbole ze wszystkich modułów Load symbols for module - + Załaduj symbole z modułu Edit file - + Zmodyfikuj plik Show symbols - + Pokaż symbole Load symbols for module "%1" - + Pokaż symbole modułu "%1" Edit file "%1" - + Zmodyfikuj plik "%1" Show symbols in file "%1" - + Pokaż symbole w pliku "%1" Adjust column widths to contents - + Wyrównaj szerokości kolumn do ich zawartości Always adjust column widths to contents - + Zawsze wyrównuj szerokości kolumn do ich zawartości Address - + Adres Code - + Kod Symbol - + Symbol Symbols in "%1" - + Symbole w "%1" @@ -8051,30 +8136,30 @@ Using gdb 6.7 or later is strongly recommended. Invalid encoding - + Niepoprawne kodowanie Invalid name - + Niepoprawna nazwa Invalid nested-name - + Niepoprawna zagnieżdżona nazwa Invalid template args - + Niepoprawne argumenty szablonu Invalid template-param - + Niepoprawny parametr szablonu @@ -8103,7 +8188,7 @@ Using gdb 6.7 or later is strongly recommended. Invalid expression - + Niepoprawnie wyrażenie @@ -8122,23 +8207,23 @@ Using gdb 6.7 or later is strongly recommended. Invalid type - + Niepoprawny typ Invalid built-in type - + Niepoprawny typ wbudowany Invalid builtin-type - + Niepoprawny typ wbudowany Invalid function type - + Niepoprawny typ funkcji @@ -8189,7 +8274,7 @@ Using gdb 6.7 or later is strongly recommended. Invalid local-name - + Niepoprawna nazwa lokalna @@ -8217,7 +8302,7 @@ Using gdb 6.7 or later is strongly recommended. Invalid digit - + Niepoprawna cyfra @@ -8230,17 +8315,17 @@ Using gdb 6.7 or later is strongly recommended. Cannot create temporary file: %1 - + Nie można utworzyć tymczasowego pliku: %1 Cannot create FiFo %1: %2 - + Nie można utworzyć FiFo %1: %2 Cannot open FiFo %1: %2 - + Nie można otworzyć FiFo %1: %2 @@ -8248,12 +8333,12 @@ Using gdb 6.7 or later is strongly recommended. Name - + Nazwa Value (base %1) - + Wartość (baza %1) @@ -8261,52 +8346,52 @@ Using gdb 6.7 or later is strongly recommended. Registers - + Rejestry Reload register listing - + Przeładuj listę rejestrów Open memory editor - + Otwórz edytor pamięci Open memory editor at %1 - + Otwórz edytor pamięci z adresem %1 Hexadecimal - + Szesnastkowy Decimal - + Dziesiętny Octal - + Ósemkowy Binary - + Binarny Adjust column widths to contents - + Wyrównaj szerokości kolumn do ich zawartości Always adjust column widths to contents - + Zawsze wyrównuj szerokości kolumn do ich zawartości @@ -8314,12 +8399,12 @@ Using gdb 6.7 or later is strongly recommended. Running requested... - + Zarządano uruchomienia... '%1' contains no identifier - + "%1" nie zawiera identyfikatora @@ -8335,7 +8420,7 @@ Using gdb 6.7 or later is strongly recommended. Stopped. - + Zatrzymano. @@ -8343,12 +8428,12 @@ Using gdb 6.7 or later is strongly recommended. Internal name - + Nazwa wewnętrzna Full name - + Pełna nazwa @@ -8356,96 +8441,96 @@ Using gdb 6.7 or later is strongly recommended. Source Files - + Pliki źródłowe Reload data - + Przeładuj dane Open file - + Otwórz plik Open file "%1"' - + Otwórz plik "%1" Debugger::Internal::StackHandler - + Address: - + Adres: Function: - + Funkcja: File: - + Plik: Line: - + Linia: From: - + Od: To: - + Do: - + ... - + ... <More> - + <Więcej> Level - + Poziom Function - + Funkcja File - + Plik Line - + Linia Address - + Adres @@ -8453,42 +8538,42 @@ Using gdb 6.7 or later is strongly recommended. Thread: %1 - + Wątek: %1 Thread: %1 at %2 (0x%3) - + Wątek: %1 w %2 (0x%3) Thread: %1 at %2, %3:%4 (0x%5) - + Wątek: %1 w %2, %3:%4 (0x%5) Thread ID - + Identyfikator wątku Function - + Funkcja File - + Plik Line - + Linia Address - + Adres @@ -8496,22 +8581,22 @@ Using gdb 6.7 or later is strongly recommended. Stack - + Stos Copy contents to clipboard - + Skopiuj zawartość do schowka Open memory editor - + Otwórz edytor pamięci Open memory editor at %1 - + Otwórz edytor pamięci z adresem %1 @@ -8526,51 +8611,57 @@ Using gdb 6.7 or later is strongly recommended. Adjust column widths to contents - + Wyrównaj szerokości kolumn do ich zawartości Always adjust column widths to contents - + Zawsze wyrównuj szerokości kolumn do ich zawartości Debugger::Internal::ThreadsWindow - + Thread - + Wątek - + Adjust column widths to contents - + Wyrównaj szerokości kolumn do ich zawartości Always adjust column widths to contents - + Zawsze wyrównuj szerokości kolumn do ich zawartości Debugger::Internal::WatchData - + + <not in scope> + <poza zakresem> + + + + %1 <shadowed %2> Debugger::Internal::WatchHandler - + Expression - + Wyrażenie Type - + Typ @@ -8580,12 +8671,12 @@ Using gdb 6.7 or later is strongly recommended. Value - + Wartość Object Address - + Adres obiektu @@ -8595,7 +8686,7 @@ Using gdb 6.7 or later is strongly recommended. Internal ID - + Wewnętrzny identyfikator @@ -8603,9 +8694,9 @@ Using gdb 6.7 or later is strongly recommended. - + Root - + Korzeń @@ -8620,63 +8711,63 @@ Using gdb 6.7 or later is strongly recommended. Tooltip - + Podpowiedź - + <Edit> - + <Zmodyfikuj> Debugger::Internal::WatchModel - + decimal - + dziesiętny hexadecimal - + szesnastkowy binary - + binarny octal - + ósemkowy - + Name - + Nazwa Value - + Wartość Type - + Typ QtDumperHelper - Found a too-old version of the debugging helper library (%1); version %2 is required. + Found an outdated version of the debugging helper library (%1); version %2 is required. <none> - + <brak> @@ -8696,22 +8787,22 @@ Using gdb 6.7 or later is strongly recommended. Change format for type '%1' - + Zmień format typu "%1" Change format for expression '%1' - + Zmień format wyrażenia "%1" Change format for type - + Zmień format typu Change format for expression - + Zmień format wyrażenia @@ -8724,24 +8815,29 @@ Using gdb 6.7 or later is strongly recommended. - + Open memory editor... - + Otwórz edytor pamięci... Open memory editor at %1 + Otwórz edytor pamięci z adresem %1 + + + + Refresh code model snapshot - + Adjust column widths to contents - + Wyrównaj szerokości kolumn do ich zawartości Always adjust column widths to contents - + Zawsze wyrównuj szerokości kolumn do ich zawartości @@ -8749,7 +8845,7 @@ Using gdb 6.7 or later is strongly recommended. Qt Designer Form Class - + Klasa formularza Qt Designer @@ -8757,27 +8853,27 @@ Using gdb 6.7 or later is strongly recommended. Designer - + Designer Class Generation - + Generowanie klasy The file name is empty. - + Nazwa pliku jest pusta. XML error on line %1, col %2: %3 - + Błąd XML w linii %1, w kolumnie %2: %3 The <RCC> root element is missing. - + Brak głównego elementu <RCC>. @@ -8785,22 +8881,22 @@ Using gdb 6.7 or later is strongly recommended. Qt - + Qt Qt Designer Form - + Formularz Qt Designer Creates a Qt Designer form file (.ui). - + Tworzy plik z formularzem Qt Designer (.ui). Qt Designer Form Class - + Klasa formularza Qt Designer @@ -8814,70 +8910,70 @@ Using gdb 6.7 or later is strongly recommended. Widget Box - + Panel widżetów Object Inspector - + Hierarchia obiektów Property Editor - + Edytor właściwości Signals & Slots Editor - + Edytor sygnałów / slotów Action Editor - + Edytor akcji For&m editor - + Edytor for&mularzy Edit widgets - + Zmodyfikuj widżety F3 - + F3 Edit signals/slots - + Zmodyfikuj sygnały / sloty F4 - + F4 Edit buddies - + Zmodyfikuj skojarzone etykiety Edit tab order - + Zmodyfikuj kolejność tabulacji Meta+H - + Meta+H @@ -8917,12 +9013,12 @@ Using gdb 6.7 or later is strongly recommended. Views - + Widoki Signals && Slots Editor - + Edytor sygnałów / slotów @@ -8932,7 +9028,7 @@ Using gdb 6.7 or later is strongly recommended. Reset to Default Layout - + Przywróć domyślne rozmieszczenie @@ -8942,17 +9038,17 @@ Using gdb 6.7 or later is strongly recommended. About Qt Designer plugins.... - + Informacje o wtyczkach Qt Designer... Preview in - + Podgląd w stylu Designer - + Designer @@ -8965,12 +9061,12 @@ Using gdb 6.7 or later is strongly recommended. Choose a form template - + Wybierz szablon formularza %1 - Error - + %1 - Błąd @@ -8978,7 +9074,7 @@ Using gdb 6.7 or later is strongly recommended. untitled - + nienazwany @@ -8986,17 +9082,17 @@ Using gdb 6.7 or later is strongly recommended. Error saving %1 - + Błąd podczas zachowywania %1 Unable to open %1: %2 - + Nie można otworzyć %1: %2 Unable to write to %1: %2 - + Nie można zapisać do %1: %2 @@ -9004,7 +9100,7 @@ Using gdb 6.7 or later is strongly recommended. Qt Designer Form - + Formularz Qt Designer @@ -9028,7 +9124,7 @@ Rebuilding the project might help. Unable to add the method definition. - + Nie można dodać definicji metody. @@ -9036,18 +9132,18 @@ Rebuilding the project might help. Toggle vim-style editing - + Przełącz ustawienie edycji w stylu vim FakeVim properties... - + Właściwości FakeVim... FakeVim::Internal::FakeVimHandler - + E20: Mark '%1' not set @@ -9067,7 +9163,7 @@ Rebuilding the project might help. - + File '%1' exists (add ! to override) @@ -9131,7 +9227,7 @@ Rebuilding the project might help. - + Already at newest change @@ -9141,7 +9237,7 @@ Rebuilding the project might help. General - + Ogólne @@ -9160,7 +9256,7 @@ Rebuilding the project might help. Saving succeeded - + Zachowywanie pomyślnie zakończone @@ -9172,7 +9268,7 @@ Rebuilding the project might help. Not an editor command: %1 - + %1 nie jest komendą edytora @@ -9185,12 +9281,12 @@ Rebuilding the project might help. &Find/Replace - + Z&najdź / zastąp Find... - + Znajdź... @@ -9203,12 +9299,12 @@ Rebuilding the project might help. Current Document - + Bieżący dokument Enter Find String - + Podaj ciąg do znalezienia @@ -9218,17 +9314,17 @@ Rebuilding the project might help. Find Next - + Znajdź następne Find Previous - + Znajdź poprzednie Replace && Find Next - + Zastąp i znajdź następne @@ -9238,27 +9334,27 @@ Rebuilding the project might help. Replace && Find Previous - + Zastąp i znajdź poprzednie Replace All - + Zastąp wszystkie Case Sensitive - + Uwzględniaj wielkość liter Whole Words Only - + Tylko całe słowa Use Regular Expressions - + Używaj wyrażeń regularnych @@ -9271,40 +9367,40 @@ Rebuilding the project might help. Expand All - + Rozwiń wszystko Replace with: - + Zastąp: Replace all occurrences - + Zastąp wszystkie wystąpienia Replace - + Zastąp Search Results - + Wyniki poszukiwania GenericProjectManager::Internal::GenericMakeStepConfigWidget - + Override %1: - + Nadpisanie %1: <b>Make:</b> %1 %2 - + <b>Make:</b> %1 %2 @@ -9312,7 +9408,7 @@ Rebuilding the project might help. <new> - + <nowy> @@ -9320,17 +9416,17 @@ Rebuilding the project might help. Create - + Utwórz New configuration - + Nowa konfiguracja New Configuration Name: - + Nazwa nowej konfiguracji: @@ -9338,12 +9434,12 @@ Rebuilding the project might help. Build directory: - + Katalog budowania wersji: Tool Chain: - + Łańcuch narzędzi: @@ -9356,27 +9452,27 @@ Rebuilding the project might help. Import of Makefile-based Project - + Zaimportuj projekt bazujący na pliku Makefile Generic Project - + Ogólny projekt Project name: - + Nazwa projektu: Location: - + Położenie: Second Page Title - + Tytuł drugiej strony @@ -9384,22 +9480,22 @@ Rebuilding the project might help. Import of Makefile-based Project - + Zaimportuj projekt bazujący na pliku Makefile Creates a generic project, supporting any build system. - + Tworzy ogólny projekt obsługujący dowolny system budowania. Projects - + Projekty The project %1 could not be opened. - + Nie można otworzyć projektu %1. @@ -9407,12 +9503,12 @@ Rebuilding the project might help. <New branch> - + <Nowa gałąź> Type to create a new branch - + Wpisz w celu utworzenia nowej gałęzi @@ -9425,17 +9521,17 @@ Rebuilding the project might help. Select Git repository - + Wybierz składnicę Git Error - + Błąd Selected directory is not a Git repository - + Wybrany katalog nie jest składnicą Git @@ -9443,12 +9539,12 @@ Rebuilding the project might help. Clones a project from a git repository. - + Klonuje projekt ze składnicy git. Git Repository Clone - + Klon składnicy Git @@ -9474,24 +9570,25 @@ Rebuilding the project might help. Unable to determine the repository for %1. - + Nie można określić składnicy dla %1. Unable to parse the file output. - + Nie można przetworzyć wyjścia pliku. Executing: %1 %2 Executing: <executable> <arguments> - + Uruchamianie: %1 %2 + Waiting for data... - + Oczekiwanie na dane... @@ -9521,8 +9618,10 @@ Rebuilding the project might help. Unable to add %n file(s) to %1: %2 - - + + Nie można dodać %n pliku do %1: %2 + Nie można dodać %n plików do %1: %2 + Nie można dodać %n plików do %1: %2 @@ -9547,32 +9646,32 @@ Rebuilding the project might help. Unable to run branch command: %1: %2 - + Nie można uruchomić komendy "branch": %1: %2 Unable to run show: %1: %2 - + Nie można uruchomić komendy "show": %1: %2 Changes - + Zmiany You have modified files. Would you like to stash your changes? - + Zmodyfikowałeś pliki. Czy chcesz odłożyć swoje zmiany na później? Unable to obtain the status: %1 - + Nie można otrzymać stanu: %1 The repository %1 is not initialized yet. - + Składnica %1 nie jest jeszcze zainicjalizowana. @@ -9593,22 +9692,22 @@ Rebuilding the project might help. Revert - + Odwróć zmiany The file has been changed. Do you want to revert it? - + Plik został zmieniony. Czy chcesz odwrócić w nim zmiany? The file is not modified. - + Plik nie jest zmodyfikowany. There are no modified files. - + Brak zmodyfikowanych plików. @@ -9618,14 +9717,18 @@ Rebuilding the project might help. '%1' failed (exit code %2). - + +'%1' zakończone niepowodzeniem (kod wyjściowy %2). + '%1' completed (exit code %2). - + +'%1' zakończyło się (kod wyjściowy %2). + @@ -9633,17 +9736,17 @@ Rebuilding the project might help. Error parsing reply from '%1': %2 - + Błąd przetwarzania odpowiedzi z "%1": %2 Request failed for '%1': %2 - + Żądanie zostało niepomyślnie zakończone dla "%1": %2 Open source projects that use Git. - + Projekty otwartego oprogramowania używające Git. @@ -9651,12 +9754,12 @@ Rebuilding the project might help. Clones a project from a Gitorious repository. - + Klonuje projekt ze składnicy Gitorious. Gitorious Repository Clone - + Klon składnicy Gitorious @@ -9664,7 +9767,7 @@ Rebuilding the project might help. Select a host. - + Wybierz host. @@ -9672,7 +9775,7 @@ Rebuilding the project might help. Choose a project from '%1' - + Wybierz projekt z "%1" @@ -9680,17 +9783,17 @@ Rebuilding the project might help. &Git - + &Git Diff Current File - + Pokaż różnice w bieżącym pliku Diff "%1" - + Pokaż różnice w "%1" @@ -9700,12 +9803,12 @@ Rebuilding the project might help. File Status - + Stan pliku Status Related to "%1" - + Stan związany z "%1" @@ -9745,12 +9848,12 @@ Rebuilding the project might help. Undo Changes - + Cofnij zmiany Undo Changes for "%1" - + Cofnij zmiany w "%1" @@ -9785,22 +9888,22 @@ Rebuilding the project might help. Diff Current Project - + Pokaż różnice w bieżącym projekcie Diff Project "%1" - + Pokaż różnice w projekcie "%1" Project Status - + Stan projektu Status Project "%1" - + Stan projektu "%1" @@ -9865,7 +9968,7 @@ Rebuilding the project might help. Branches... - + Gałęzie... @@ -9880,32 +9983,32 @@ Rebuilding the project might help. Commit - + Wyślij Diff Selected Files - + Pokaż różnice w zaznaczonych plikach &Undo - + &Cofnij &Redo - + &Przywróć Could not find working directory - + Nie można odnaleźć katalogu roboczego Revert - + Odwróć zmiany @@ -9920,17 +10023,17 @@ Rebuilding the project might help. Cannot create temporary file: %1 - + Nie można utworzyć tymczasowego pliku: %1 Closing git editor - + Zamykanie edytora git Do you want to commit the change? - + Czy chcesz wysłać zmianę? @@ -9943,7 +10046,7 @@ Rebuilding the project might help. The binary '%1' could not be located in the path '%2' - + Nie można odnaleźć pliku binarnego "%1" w ścieżce "%2" @@ -10005,38 +10108,38 @@ Rebuilding the project might help. Add new page - + Dodaj nową stronę Print Document - + Wydrukuj dokument unknown - + nieznany Add New Page - + Dodaj nową stronę Close This Page - + Zamknij tą stronę Close Other Pages - + Zamknij pozostałe strony Add Bookmark for this Page... - + Dodaj zakładkę do tej strony... @@ -10045,33 +10148,33 @@ Rebuilding the project might help. Documentation - + Dokumentacja Help - + Pomoc Add Documentation - + Dodaj dokumentację Qt Help Files (*.qch) - + Pliki pomocy Qt (*.qch) The file %1 is not a valid Qt Help file! - + Plik %1 nie jest poprawnym plikiem pomocy Qt! Cannot unregister documentation file %1! - + Nie można wyrejestrować pliku dokumentacji %1! @@ -10079,12 +10182,12 @@ Rebuilding the project might help. Filters - + Filtry Help - + Pomoc @@ -10092,12 +10195,12 @@ Rebuilding the project might help. General settings - + Ustawienia ogólne Help - + Pomoc @@ -10108,17 +10211,17 @@ Rebuilding the project might help. Files (*.xbel) - + Pliki (*.xbel) There was an error while importing bookmarks! - + Wystąpił błąd podczas importowania zakładek! Save File - + Zachowaj plik @@ -10126,7 +10229,7 @@ Rebuilding the project might help. Help index - + Indeks pomocy @@ -10134,7 +10237,7 @@ Rebuilding the project might help. Help - + Pomoc @@ -10143,24 +10246,24 @@ Rebuilding the project might help. Contents - + Zawartość Index - + Indeks Search - + Wyszukaj Bookmarks - + Zakładki @@ -10170,42 +10273,42 @@ Rebuilding the project might help. Previous Page - + Poprzednia strona Next Page - + Następna strona Add Bookmark - + Dodaj zakładkę Context Help - + Pomoc podręczna Activate Index in Help mode - + Uaktywnij indeks w trybie pomocy Activate Contents in Help mode - + Uaktywnij zawartość w trybie pomocy Activate Search in Help mode - + Uaktywnij wyszukiwanie w trybie pomocy Increase Font Size - + Zwiększ rozmiar czcionki @@ -10215,7 +10318,7 @@ Rebuilding the project might help. Decrease Font Size - + Zmniejsz rozmiar czcionki @@ -10225,7 +10328,7 @@ Rebuilding the project might help. Reset Font Size - + Przywróć domyślny rozmiar czcionki @@ -10233,31 +10336,36 @@ Rebuilding the project might help. Ctrl+0 - - Previous + + Go to Help Mode + + + Previous + Poprzedni + Next - + Następny Unfiltered - + Nieprzefiltrowane <html><head><title>No Documentation</title></head><body><br/><center><b>%1</b><br/>No documentation available.</center></body></html> - + <html><head><title>Brak dokumentacji</title></head><body><br/><center><b>%1</b><br/>Brak dostępnej dokumentacji.</center></body></html> Filtered by: - + Przefiltrowane przez: @@ -10265,22 +10373,22 @@ Rebuilding the project might help. &Copy - + S&kopiuj Copy &Link Location - + Skopiuj &adres odsyłacza Open Link in New Tab - + Otwórz odsyłacz w nowej karcie Select All - + Zaznacz wszystko @@ -10288,12 +10396,12 @@ Rebuilding the project might help. The file is not an XBEL version 1.0 file. - + Ten plik nie jest plikiem XBEL wersji 1.0. Unknown title - + Nieznany plik @@ -10301,17 +10409,17 @@ Rebuilding the project might help. &Perforce - + &Perforce Edit - + Edycja Edit "%1" - + Zmodyfikuj "%1" @@ -10321,17 +10429,17 @@ Rebuilding the project might help. Edit File - + Zmodyfikuj plik Add - + Dodaj Add "%1" - + Dodaj "%1" @@ -10341,32 +10449,32 @@ Rebuilding the project might help. Add File - + Dodaj plik Delete - + Usuń Delete "%1" - + Usuń "%1" Delete File - + Usuń plik Revert - + Odwróć zmiany Revert "%1" - + Odwróć zmiany w "%1" @@ -10376,28 +10484,28 @@ Rebuilding the project might help. Revert File - + Odwróć zmiany w pliku Diff Current File - + Pokaż różnice w bieżącym pliku Diff "%1" - + Pokaż różnice w "%1" Diff Current Project/Session - + Pokaż różnice w bieżącym projekcie / sesji Diff Project "%1" - + Pokaż różnice w projekcie "%1" @@ -10407,12 +10515,12 @@ Rebuilding the project might help. Diff Opened Files - + Pokaż różnice w otwartych plikach Opened - + Otwarto @@ -10432,38 +10540,38 @@ Rebuilding the project might help. Pending Changes... - + Oczekujące zmiany... Update Current Project/Session - + Odśwież bieżący projekt / sesję Update Project "%1" - + Odśwież projekt "%1" Describe... - + Opisz... Annotate Current File - + Dołącz adnotację do bieżącego pliku Annotate "%1" - + Dołącz adnotację do "%1" Annotate... - + Dołącz adnotację... @@ -10489,93 +10597,94 @@ Rebuilding the project might help. Update All - + Odśwież wszystko Submit - + Wyślij Diff Selected Files - + Pokaż różnice w zaznaczonych plikach &Undo - + &Cofnij &Redo - + &Przywróć p4 revert - + p4 revert The file has been changed. Do you want to revert it? - + Plik został zmieniony. Czy chcesz odwrócić w nim zmiany? Another submit is currently executed. - + Trwa inna wysyłka. Cannot create temporary file. - + Nie można utworzyć tymczasowego pliku. Project has no files - + Brak plików w projekcie p4 annotate - + p4 annotate p4 annotate %1 - + p4 annotate %1 p4 filelog - + p4 filelog p4 filelog %1 - + p4 filelog %1 Executing: %1 - + Wykonywanie: %1 + The process terminated with exit code %1. - + Proces zakończył się kodem wyjściowym %1. The process terminated abnormally. - + Proces niepoprawnie zakończony. Could not start perforce '%1'. Please check your settings in the preferences. - + Nie można uruchomić perforce "%1". Sprawdź stosowne ustawienia. @@ -10585,22 +10694,22 @@ Rebuilding the project might help. p4 diff %1 - + p4 diff %1 p4 describe %1 - + p4 describe %1 Closing p4 Editor - + Zamykanie edytora p4 Do you want to submit this change list? - + Czy chcesz wysłać tą listę zmian? @@ -10610,23 +10719,23 @@ Rebuilding the project might help. Cannot open temporary file. - + Nie można otworzyć tymczasowego pliku. Cannot execute p4 submit. - + Nie można uruchomić "p4 submit". p4 submit failed (exit code %1). - + "p4 submit" zakończone niepowodzeniem (kod wyjściowy %1). Pending change - + Oczekująca zmiana @@ -10636,7 +10745,7 @@ Rebuilding the project might help. Invalid configuration: %1 - + Niepoprawna konfiguracja: %1 @@ -10654,12 +10763,12 @@ Rebuilding the project might help. No executable specified - + Nie podano programu do uruchomienia Unable to launch "%1": %2 - + Nie można uruchomić "%1": %2 @@ -10669,12 +10778,12 @@ Rebuilding the project might help. "%1" crashed. - + Wystąpił błąd w "%1" - proces zakończony. "%1" terminated with exit code %2: %3 - + "%1" zakończone kodem wyjściowym %2: %3 @@ -10695,17 +10804,17 @@ Rebuilding the project might help. Perforce Command - + Komenda Perforce Testing... - + Testowanie... Test succeeded. - + Test pomyślnie zakończony. @@ -10737,7 +10846,7 @@ Rebuilding the project might help. Files in any project - + Pliki we wszystkich projektach @@ -10745,30 +10854,30 @@ Rebuilding the project might help. All Projects - + Wszystkie projekty File &pattern: - + &Wzorzec: ProjectExplorer::ApplicationLauncher - + Failed to start program. Path or permissions wrong? - + Nie można uruchomić programu. Sprawdź ścieżkę i prawa dostępu do programu. The program has unexpectedly finished. - + Program niespodziewanie przerwał pracę. Some error has occurred while running the program. - + Pojawiły się błędy podczas działania programu. @@ -10776,7 +10885,7 @@ Rebuilding the project might help. Run - + Uruchom @@ -10784,12 +10893,12 @@ Rebuilding the project might help. Starting %1... - + Uruchamianie %1... %1 exited with code %2 - + %1 zakończone kodem %2 @@ -10797,14 +10906,16 @@ Rebuilding the project might help. Finished %n of %1 build steps - - + + Zakończono %n krok budowania (wszystkich kroków: %1) + Zakończono %n kroki budowania (wszystkich kroków: %1) + Zakończono %n kroków budowania (wszystkich kroków: %1) <font color="#ff0000">Canceled build.</font> - + <font color="#ff0000">Anulowano budowanie.</font> @@ -10815,18 +10926,18 @@ Rebuilding the project might help. <font color="#ff0000">Error while building project %1</font> - + <font color="#ff0000">Błąd podczas budowania projektu %1</font> <font color="#ff0000">When executing build step '%1'</font> - + <font color="#ff0000">Podczas wykonywania kroku budowania "%1"</font> Error while building project %1 - + Błąd podczas budowania projektu %1 @@ -10847,42 +10958,42 @@ Rebuilding the project might help. Edit Build Configuration: - + Zmodyfikuj konfigurację budowania: Add - + Dodaj Remove - + Usuń &Clone Selected - + S&klonuj wybraną Build Steps - + Kroki procesu budowania Clean Steps - + Kroki procesu czyszczenia Clone configuration - + Sklonuj konfigurację New Configuration Name: - + Nazwa nowej konfiguracji: @@ -10890,37 +11001,37 @@ Rebuilding the project might help. No Build Steps - + Brak kroków procesu budowania Add clean step - + Dodaj krok do procesu czyszczenia Add build step - + Dodaj krok do procesu budowania Remove clean step - + Usuń krok z procesu czyszczenia Remove build step - + Usuń krok z procesu budowania Clean Steps - + Kroki procesu czyszczenia Build Steps - + Kroki procesu budowania @@ -10937,27 +11048,27 @@ Rebuilding the project might help. Cancel Build && Close - + Anuluj budowanie i zamknij Do not Close - + Nie zamykaj Close Qt Creator? - + Czy zamknąć Qt Creator? A project is currently being built. - + Trwa budowanie projektu. Do you want to cancel the build process and close Qt Creator anyway? - + Czy chcesz anulować proces budowania i zamknąć Qt Creator? @@ -10978,7 +11089,7 @@ Rebuilding the project might help. File &pattern: - + &Wzorzec pliku: @@ -10986,62 +11097,62 @@ Rebuilding the project might help. Name: - + Nazwa: Executable: - + Program: Arguments: - + Argumenty: Working Directory: - + Katalog roboczy: Run in &Terminal - + Uruchom w &terminalu Run Environment - + Środowisko procesu uruchamiania Base environment for this runconfiguration: - + Podstawowe środowisko dla tej konfiguracji uruchamiania: Clean Environment - + Czyste środowisko System Environment - + Środowisko systemowe Build Environment - + Środowisko procesu budowania No Executable specified. - + Nie podano programu. Running executable: <b>%1</b> %2 - + Uruchomiony program: <b>%1</b> %2 @@ -11049,18 +11160,18 @@ Rebuilding the project might help. Custom Executable - + Własny program Could not find the executable, please specify one. - + Nie można znaleźć programu. Podaj go. Run %1 - + Uruchom %1 @@ -11069,7 +11180,7 @@ Rebuilding the project might help. Custom Executable - + Własny program @@ -11077,17 +11188,17 @@ Rebuilding the project might help. The target directory %1 could not be created. - + Nie można utworzyć docelowego katalogu %1. The existing file %1 could not be removed. - + Nie można usunąć pliku %1. The file %1 could not be copied to %2. - + Nie można skopiować pliku %1 do %2. @@ -11107,21 +11218,24 @@ Reason: %2 Running %1 %2... - + Uruchamianie %1 %2... + %1 not found in PATH - + Nie znaleziono %1 w zmiennej PATH + Running %1 ... - + Uruchamianie %1... + @@ -11129,12 +11243,12 @@ Reason: %2 Unable to add dependency - + Nie można dodać zależności This would create a circular dependency. - + Utworzyłoby to cykliczną zależność. @@ -11142,17 +11256,17 @@ Reason: %2 %1 has no dependencies. - + %1 nie ma zależności. %1 depends on %2. - + %1 zależy od %2. %1 depends on: %2. - + %1 zależy od: %2. @@ -11160,7 +11274,7 @@ Reason: %2 Dependencies - + Zależności @@ -11168,7 +11282,7 @@ Reason: %2 Editor Settings - + Ustawienia edytora @@ -11177,28 +11291,28 @@ Reason: %2 <UNSET> - + <SKASUJ> Variable - + Zmienna Value - + Wartość <VARIABLE> - + <ZMIENNA> <VALUE> - + <WARTOŚĆ> @@ -11206,37 +11320,37 @@ Reason: %2 &Edit - + Z&modyfikuj &Add - + &Dodaj &Reset - + &Wyczyść &Unset - + &Usuń Unset <b>%1</b> - + Skasuj <b>%1</b> Set <b>%1</b> to <b>%2</b> - + Ustaw <b>%1</b> na <b>%2</b> Summary: No changes to Environment - + Podsumowanie: brak zmian w środowisku @@ -11283,7 +11397,7 @@ Reason: %2 Unable to close - + Nie można zamknąć @@ -11291,7 +11405,7 @@ Reason: %2 Application Output Window - Okno wyjściowe aplikacji + Okno z wyjściem aplikacji @@ -11307,13 +11421,13 @@ Reason: %2 Custom Process Step - + Własny krok procesu Custom Process Step item in combobox - + Własny krok procesu @@ -11321,12 +11435,12 @@ Reason: %2 <b>%1</b> %2 %3 %4 - + <b>%1</b> %2 %3 %4 (disabled) - + (nieaktywny) @@ -11334,37 +11448,37 @@ Reason: %2 Projects - + Projekty &Build - + &Budowanie &Debug - + &Debugowanie &Start Debugging - + &Rozpocznij debugowanie Open With - + Otwórz przy pomocy Session Manager... - + Zarządzanie sesjami... New Project... - + Nowy projekt... @@ -11374,7 +11488,7 @@ Reason: %2 Load Project... - + Załaduj projekt... @@ -11384,57 +11498,57 @@ Reason: %2 Open File - + Otwórz plik Show in Explorer... - + Pokaż w "Explorer"... Show in Finder... - + Pokaż w "Finder"... Show containing folder... - + Pokaż zawierający katalog... Recent Projects - + Ostatnie projekty Close Project - + Zamknij projekt Close Project "%1" - + Zamknij projekt "%1" Close All Projects - + Zamknij wszystkie projekty Session - + Sesja Set Build Configuration - + Ustaw konfigurację budowania Build All - + Zbuduj wszystko @@ -11444,22 +11558,22 @@ Reason: %2 Rebuild All - + Przebuduj wszystko Clean All - + Wyczyść wszystko Build Project - + Zbuduj projekt Build Project "%1" - + Zbuduj projekt "%1" @@ -11469,43 +11583,43 @@ Reason: %2 Rebuild Project - + Przebuduj projekt Rebuild Project "%1" - + Przebuduj projekt "%1" Clean Project - + Wyczyść projekt Clean Project "%1" - + Wyczyść projekt "%1" Build Without Dependencies - + Zbuduj bez zależności Rebuild Without Dependencies - + Przebuduj bez zależności Clean Without Dependencies - + Wyczyść bez zależności Run - + Uruchom @@ -11515,109 +11629,113 @@ Reason: %2 Set Run Configuration - + Ustaw konfigurację uruchamiania Cancel Build - + Anuluj budowanie Start Debugging - + Rozpocznij debugowanie F5 - + F5 Add New... - + Dodaj nowy... Add Existing Files... - + Dodaj istniejące pliki... Remove File... - + Usuń plik... Rename - + Zmień nazwę Load Project - + Załaduj projekt New Project Title of dialog - + Nowy projekt New File Title of dialog - + Nowy plik Add Existing Files - + Dodaj istniejące pliki Could not add following files to project %1: - + Nie można dodać następujących plików do projektu %1: + Add files to project failed - + Nie można dodać plików do projektu Add to Version Control - + Dodaj do systemu kontroli wersji Add files %1 to version control (%2)? - + Czy dodać pliki +%1 +do systemu kontroli wersji (%2)? Could not add following files to version control (%1) - + Nie można dodać następujących plików do systemu kontroli wersji (%1) + Add files to version control failed - + Nie można dodać plików do systemu kontroli wersji Launching Windows Explorer failed - + Nie można uruchomić "Windows Explorer" Could not find explorer.exe in path to launch Windows Explorer. - + Nie można odnaleźć explorer.exe w ścieżce w celu uruchomienia "Windows Explorer". @@ -11632,22 +11750,22 @@ to version control (%2)? Remove file failed - + Nie można usunąć pliku Could not remove file %1 from project %2. - + Nie można usunąć pliku %1 z projektu %2. Delete file failed - + Nie można usunąć pliku Could not delete file %1. - + Nie można usunąć pliku %1. @@ -11655,12 +11773,12 @@ to version control (%2)? Build and Run - + Zbuduj i uruchom Projects - + Projekty @@ -11669,12 +11787,13 @@ to version control (%2)? Failed to add one or more files to project '%1' (%2). - + Nie można dodać jednego lub więcej plików do projektu +"%1" (%2). Failed to add '%1' to the version control system. - + Dodanie "%1" do systemu kontroli wersji zakończone niepowodzeniem. @@ -11682,17 +11801,17 @@ to version control (%2)? %1 of project %2 - + Katalog %1 projektu %2 Could not rename file - + Nie można zmienić nazwy pliku Renaming file %1 to %2 failed. - + Zmiana nazwy pliku z %1 na %2 zakończona błędem. @@ -11700,17 +11819,17 @@ to version control (%2)? Simplify tree - + Uprość drzewo Hide generated files - + Ukryj wygenerowane pliki Synchronize with Editor - + Synchronizuj z edytorem @@ -11718,12 +11837,12 @@ to version control (%2)? Projects - + Projekty Filter tree - + Przefiltruj drzewo @@ -11747,12 +11866,12 @@ to version control (%2)? Edit Project Settings for Project <b>%1</b> - + Zmodyfikuj ustawienia projektu <b>%1</b> No Project loaded - + Brak załadowanego projektu @@ -11769,12 +11888,12 @@ to version control (%2)? Active Build and Run Configurations - + Aktywne konfiguracje procesu budowania i uruchamiania No project loaded. - + Brak załadowanego projektu. @@ -11816,13 +11935,13 @@ to version control (%2)? Session - + Sesja Untitled default file name to display - + Nienazwany @@ -11830,38 +11949,38 @@ to version control (%2)? Error while restoring session - + Błąd podczas przywracania sesji Could not restore session %1 - + Nie można przywrócić sesji %1 Error while saving session - + Błąd podczas zachowywania sesji Could not save session to file %1 - + Nie można zachować sesji w pliku %1 Qt Creator - + Qt Creator Untitled - + Nienazwany Session ('%1') - + Sesja ("%1") @@ -11883,17 +12002,17 @@ to version control (%2)? Build Issues - + Problemy podczas budowania &Copy - + S&kopiuj Show Warnings - + Pokaż ostrzeżenia @@ -11909,62 +12028,62 @@ to version control (%2)? GCC - + GCC Intel C++ Compiler (Linux) - + Kompilator Intel C++ (Linux) MinGW - + MinGW Microsoft Visual C++ - + Microsoft Visual C++ Windows CE - + Windows CE WINSCW - + WINSCW GCCE - + GCCE RVCT (ARMV5) - + RVCT (ARMV5) RVCT (ARMV6) - + RVCT (ARMV6) Other - + Inne <Invalid> - + <Niepoprawny> <Unknown> - + <Nieznany> @@ -11972,7 +12091,7 @@ to version control (%2)? The process could not be started! - + Proces nie może zostać rozpoczęty! @@ -11985,40 +12104,40 @@ to version control (%2)? <Select Symbol> - + <Wybierz symbol> Rename... - + Zmień nazwę... New id: - + Nowy identyfikator: Rename id '%1'... - + Zmień nazwę identyfikatora "%1"... QmlEditor::Internal::QmlEditorPlugin - + Qt - + Qt Creates a Qt QML file. - + Tworzy plik QML Qt. Qt QML File - + Plik QML Qt @@ -12034,7 +12153,7 @@ to version control (%2)? <b>QML Make</b> - + <b>QML Make</b> @@ -12042,12 +12161,12 @@ to version control (%2)? New QML Project - + Nowy QML projekt This wizard generates a QML application project. - + Ten kreator generuje projekt aplikacji QML. @@ -12055,29 +12174,29 @@ to version control (%2)? QML Application - + Aplikacja QML Creates a QML application. - + Tworzy aplikację QML. Projects - + Projekty The project %1 could not be opened. - + Nie można otworzyć projektu %1. QmlProjectManager::Internal::QmlRunConfiguration - + QML Viewer @@ -12109,17 +12228,17 @@ to version control (%2)? QML Project - + Projekt QML Project name: - + Nazwa projektu: Location: - + Położenie: @@ -12127,22 +12246,22 @@ to version control (%2)? Import of existing QML directory - + Import istniejącego katalogu QML Creates a QML project from an existing directory of QML files. - + Tworzy projekt QML na podstawie istniejącego katalogu z plikami QML. Projects - + Projekty The project %1 could not be opened. - + Nie można otworzyć projektu %1. @@ -12151,17 +12270,17 @@ to version control (%2)? <New class> - + <Nowa klasa> Confirm Delete - + Potwierdź usunięcie Delete class %1 from list? - + Czy usunąć klasę %1 z listy? @@ -12169,12 +12288,12 @@ to version control (%2)? Qt4 Designer Custom Widget - + Własny widżet Qt4 Designer Creates a Qt4 Designer Custom Widget or a Custom Widget Collection. - + Tworzy własny widżet Qt4 Designer lub kolekcję własnych widżetów. @@ -12182,7 +12301,7 @@ to version control (%2)? This wizard generates a Qt4 Designer Custom Widget or a Qt4 Designer Custom Widget Collection project. - + Ten kreator generuje projekt własnego widżetu Qt4 Designer lub projekt kolekcji własnych widżetów Qt4 Designer. @@ -12190,17 +12309,17 @@ to version control (%2)? Cannot open icon file %1. - + Nie można otworzyć pliku z ikoną %1. Creating multiple widget libraries (%1, %2) in one project (%3) is not supported. - + Tworzenie wielu bibliotek z widżetami (%1, %2) w jednym projekcie (%3) nie jest obsługiwane. Cannot open %1: %2 - + Nie można otworzyć %1: %2 @@ -12216,12 +12335,12 @@ to version control (%2)? Unable to start "%1" - + Nie można uruchomić "%1" The application "%1" could not be found. - + Nie można odnaleźć aplikacji "%1". @@ -12229,12 +12348,12 @@ to version control (%2)? Qt Designer is not responding (%1). - + Qt Designer nie odpowiada (%1). Unable to create server socket: %1 - + Nie można utworzyć gniazda serwera: %1 @@ -12248,14 +12367,14 @@ to version control (%2)? Qt4ProjectManager::MakeStep - + <font color="#ff0000">Could not find make command: %1 in the build environment</font> - + <font color="#ff0000">Nie można odnaleźć komendy make: %1 w środowisku procesu budowania</font> - + <font color="#0000ff"><b>No Makefile found, assuming project is clean.</b></font> - + <font color="#0000ff"><b>Nie odnaleziono pliku Makefile. Przyjęto, że projekt jest czysty.</b></font> @@ -12263,17 +12382,17 @@ to version control (%2)? Override %1: - + Nadpisanie %1: - + <b>Make Step:</b> %1 not found in the environment. - + <b>Krok Make:</b> Nie odnaleziono %1 w środowisku. <b>Make:</b> %1 %2 in %3 - + <b>Make:</b> %1 %2 in %3 @@ -12281,30 +12400,35 @@ to version control (%2)? Make - + Make Qt4ProjectManager::Internal::ProjectLoadWizard - Import existing settings + Zaimportuj istniejące ustawienia + + + + + Import existing build settings Qt Creator has found an already existing build in the source directory.<br><br><b>Qt Version:</b> %1<br><b>Build configuration:</b> %2<br><b>Additional QMake Arguments:</b>%3 - + Qt Creator odnalazł istniejącą wersję zbudowaną w katalogu ze źródłami.<br><br><b>Wersja Qt:</b> %1<br><b>Konfiguracja wersji:</b> %2<br><b>Dodatkowe argumenty QMake:</b>%3 Import existing build settings. - + Zaimportuj istniejące ustawienia procesu budowania. <b>Note:</b> Importing the settings will automatically add the Qt Version identified by <br><b>%1</b> to the list of Qt versions. - + <b>Uwaga:</b> Zaimportowanie ustawień doda automatycznie wersję Qt identyfikowaną przez <br><b>%1</b> do listy wersji Qt. @@ -12314,19 +12438,23 @@ to version control (%2)? <font color="#ff0000"><b>No valid Qt version set. Set one in Preferences </b></font> - + +<font color="#ff0000"><b>Nie ustawiono poprawnej wersji Qt. Popraw to w "Ustawieniach" </b></font> + <font color="#ff0000"><b>No valid Qt version set. Set one in Tools/Options </b></font> - + +<font color="#ff0000"><b>Nie ustawiono poprawnej wersji Qt. Popraw to w "Narzędziach | Opcje" </b></font> + <font color="#0000ff">Configuration unchanged, skipping QMake step.</font> - + <font color="#0000ff">Konfiguracja nie została zmieniona, opuszczono krok QMake.</font> @@ -12334,17 +12462,17 @@ to version control (%2)? <b>QMake:</b> No Qt version set. QMake can not be run. - + <b>QMake:</b> Brak ustawionej wersji Qt. Nie można uruchomić QMake. <b>QMake:</b> %1 %2 - + <b>QMake:</b> %1 %2 No valid Qt version set. - + Nie ustawiono poprawnej wersji Qt. @@ -12352,58 +12480,68 @@ to version control (%2)? QMake - + QMake Qt4ProjectManager::Internal::S60DeviceRunConfiguration - + %1 on Symbian Device - + %1 na urządzeniu Symbian QtS60DeviceRunConfiguration - + Konfiguracja procesu uruchamiania urządzenia QtS60 - + Could not parse %1. The QtS60 Device run configuration %2 can not be started. - + Nie można przetworzyć %1. Nie można rozpocząć konfiguracji procesu uruchamiania %2 dla urządzenia QtS60. Qt4ProjectManager::Internal::S60DeviceRunConfigurationWidget - + + Device: + Urządzenie: + + + Name: - + Nazwa: - + Install File: - + Zainstaluj plik: - + Device on Serial Port: - + Urządzenie na porcie szeregowym: - + + Queries the device for information + Zapytaj urządzenie o informacje + + + Self-signed certificate Choose certificate file (.cer) - + Wybierz certyfikat (.cer) Custom certificate: - + Własny certyfikat: @@ -12415,75 +12553,108 @@ to version control (%2)? Key file: + + + <No Device> + Summary text of S60 device run configuration + <Brak urządzenia> + + + + (custom certificate) + (własny certyfikat) + + + + (self-signed certificate) + + + + + Summary: Run on '%1' %2 + Podsumowanie: Uruchomiono na "%1" %2 + + + + Connecting... + Łączenie... + + + + A timeout occurred while querying the device. Check whether Trk is running + + Qt4ProjectManager::Internal::S60DeviceRunConfigurationFactory - + %1 on Symbian Device - + %1 na urządzeniu Symbian Qt4ProjectManager::Internal::S60DeviceRunControlBase - + Creating %1.sisx ... - + Tworzenie %1.sisx ... Executable file: %1 - + Plik z programem: %1 Debugger for Symbian Platform - + Debugger dla platformy Symbian %1 %2 - + %1 %2 Could not read template package file '%1' - + Nie można odczytać pliku z pakietem szablonów "%1" Could not write package file '%1' - + Nie można zapisać pliku z pakietem "%1" An error occurred while creating the package. - + Wystąpił błąd podczas tworzenia pakietu. - + Package: %1 Deploying application to '%2'... - + Pakiet: %1 +Umieszczanie aplikacji w "%2"... - + Could not connect to phone on port '%1': %2 Check if the phone is connected and the TRK application is running. - + Nie można nawiązać połączenia z telefonem na porcie "%1": %2 +Sprawdź czy telefon jest podłączony i czy aplikacja TRK jest uruchomiona. Could not create file %1 on device: %2 - + Nie można utworzyć pliku %1 na urządzeniu: %2 Could not write to file %1 on device: %2 - + Nie można zapisać do pliku %1 na urządzeniu: %2 @@ -12492,38 +12663,43 @@ Check if the phone is connected and the TRK application is running. - Copying install file... + Could not connect to App TRK on device: %1. Restarting App TRK might help. + + + Copying install file... + Kopiowanie pliku instalacyjnego... + %1% copied. - + Skopiowano %1%. Installing application... - + Instalowanie aplikacji... Could not install from package %1 on device: %2 - + Nie można zainstalować z pakietu %1 na urządzeniu: %2 Failed to start %1. - + Nie można uruchomić %1. %1 has unexpectedly finished. - + %1 niespodziewanie zakończył się. An error has occurred while running %1. - + Błąd podczas wykonywania %1. @@ -12531,61 +12707,61 @@ Check if the phone is connected and the TRK application is running. Finished. - + Zakończono. Starting application... - + Uruchamianie aplikacji... Application running with pid %1. - + Aplikacja wykonuje się z pid %1. Could not start application: %1 - + Nie można uruchomić aplikacji: %1 Qt4ProjectManager::Internal::S60DeviceDebugRunControl - + Warning: Cannot locate the symbol file belonging to %1. Launching debugger... - + Uruchamianie debuggera... Debugging finished. - + Zakończono debugowanie. Qt4ProjectManager::Internal::S60DevicesWidget - + No Qt installed - + Brak zainstalowanego Qt Qt4ProjectManager::Internal::S60EmulatorRunConfiguration - + %1 in Symbian Emulator - + %1 w emulatorze Symbian QtSymbianEmulatorRunConfiguration - + Konfiguracja procesu uruchamiania emulatora Qt Symbian @@ -12596,22 +12772,27 @@ Check if the phone is connected and the TRK application is running. Qt4ProjectManager::Internal::S60EmulatorRunConfigurationWidget - + Name: - + Nazwa: - + Executable: - + Program: + + + + Summary: Run %1 in emulator + Podsumowanie: Uruchomiono %1 w emulatorze Qt4ProjectManager::Internal::S60EmulatorRunConfigurationFactory - + %1 in Symbian Emulator - + %1 w emulatorze Symbian @@ -12619,17 +12800,17 @@ Check if the phone is connected and the TRK application is running. Starting %1... - + Uruchamianie %1... [Qt Message] - + [Komunikat Qt] %1 exited with code %2 - + %1 zakończone kodem %2 @@ -12637,17 +12818,17 @@ Check if the phone is connected and the TRK application is running. Run in Emulator - + Uruchom w emulatorze Run on Device - + Uruchom na urządzeniu Debug on Device - + Zdebuguj na urządzeniu @@ -12655,12 +12836,12 @@ Check if the phone is connected and the TRK application is running. Clear system environment - + Wyczyść środowisko systemowe Build Environment - + Środowisko procesu budowania @@ -12668,33 +12849,33 @@ Check if the phone is connected and the TRK application is running. Headers - + Nagłówki Sources - + Źródła Forms - + Formularze Resources - + Zasoby Other files - + Inne pliki Failed! - + Niepomyślnie zakończone! @@ -12714,12 +12895,12 @@ Check if the phone is connected and the TRK application is running. Error while parsing file %1. Giving up. - + Błąd podczas przetwarzania pliku %1. Przetwarzanie przerwane. Error while changing pro file %1. - + Błąd podczas modyfikowania pliku pro %1. @@ -12727,12 +12908,12 @@ Check if the phone is connected and the TRK application is running. Error while parsing file %1. Giving up. - + Błąd podczas przetwarzania pliku %1. Przetwarzanie przerwane. Could not find .pro file for sub dir '%1' in '%2' - + Nie można odnaleźć pliku .pro w podkatalogu "%1" w "%2" @@ -12740,32 +12921,32 @@ Check if the phone is connected and the TRK application is running. Using Default Qt Version - + Używając domyślnej wersji Qt Using Qt Version "%1" - + Używając wersji "%1" New configuration - + Nowa konfiguracja New Configuration Name: - + Nazwa nowej konfiguracji: %1 Debug - + %1 Debug %1 Release - + %1 Release @@ -12773,33 +12954,33 @@ Check if the phone is connected and the TRK application is running. Loading project %1 ... - + Ładowanie projektu %1... Failed opening project '%1': Project file does not exist - + Nie można otworzyć projektu "%1": projekt nie istnieje Failed opening project - + Nie można otworzyć projektu Failed opening project '%1': Project already open - + Nie można otworzyć projektu "%1": projekt jest już otwarty Opening %1 ... - + Otwieranie %1... Done opening project - + Zakończono otwieranie projektu @@ -12808,7 +12989,7 @@ Check if the phone is connected and the TRK application is running. Run qmake - + Uruchom qmake @@ -12817,12 +12998,12 @@ Check if the phone is connected and the TRK application is running. Qt4RunConfiguration - + Konfiguracja procesu uruchamiania Qt4 Could not parse %1. The Qt4 run configuration %2 can not be started. - + Nie można przetworzyć %1. Konfiguracja Qt4 %2 nie może zostać uruchomiona. @@ -12830,37 +13011,37 @@ Check if the phone is connected and the TRK application is running. Name: - + Nazwa: Executable: - + Program: Select the working directory - + Wybierz katalog roboczy Reset to default - + Przywróć domyślne Working Directory: - + Katalog roboczy: Arguments: - + Argumenty: Run in Terminal - + Uruchom w terminalu @@ -12870,37 +13051,37 @@ Check if the phone is connected and the TRK application is running. Run Environment - + Środowisko procesu uruchamiania Base environment for this runconfiguration: - + Podstawowe środowisko dla tej konfiguracji uruchamiania: Clean Environment - + Czyste środowisko System Environment - + Środowisko systemowe Build Environment - + Środowisko procesu budowania Running executable: <b>%1</b> %2 (in terminal) - + Uruchamianie programu: <b>%1</b> %2 (w terminalu) Running executable: <b>%1</b> %2 - + Uruchamianie programu: <b>%1</b> %2 @@ -12908,203 +13089,208 @@ Check if the phone is connected and the TRK application is running. QtCore Module - + Moduł QtCore Core non-GUI classes used by other modules - + Podstawowe klasy używane przez inne moduły QtGui Module - + Moduł QtGui Graphical user interface components - + Komponenty graficznego interfejsu użytkownika QtNetwork Module - + Moduł QtNetwork Classes for network programming - + Klasy służące do programowania sieciowego QtOpenGL Module - + Moduł QtOpenGL OpenGL support classes - + Klasy obsługujące OpenGL QtSql Module - + Moduł QtSql Classes for database integration using SQL - + Klasy służące do integracji z bazami danych SQL QtScript Module - + Moduł QtScript Classes for evaluating Qt Scripts - + Klasy wykonujące skrypty Qt QtScriptTools Module - + Moduł QtScriptTools Additional Qt Script components - + Dodatkowe komponenty skryptów Qt QtSvg Module - + Moduł QtSvg Classes for displaying the contents of SVG files - + Klasy służące do wyświetlania zawartości plików SVG QtWebKit Module - + Moduł QtWebKit Classes for displaying and editing Web content - + Klasy służące do wyświetlania i modyfikacji zawartości stron internetowych QtXml Module - + Moduł QtXml Classes for handling XML - + Klasy do obsługi XML QtXmlPatterns Module - + Moduł QtXmlPatterns An XQuery/XPath engine for XML and custom data models - + Silnik XQuery / XPath dla XML i własnych modeli danych Phonon Module - + Moduł Phonon Multimedia framework classes - + Klasy do obsługi multimediów QtMultimedia Module - + Moduł QtMultimedia Classes for low-level multimedia functionality - + Klasy do niskopoziomowej obsługi multimediów Qt3Support Module - + Moduł Qt3Support Classes that ease porting from Qt 3 to Qt 4 - + Klasy pomocne w przenoszeniu kodu z Qt 3 do Qt 4 QtTest Module - + Moduł QtTest Tool classes for unit testing - + Klasy służące do testowania kodu, wykrywania regresji QtDBus Module - + Moduł QtDBus Classes for Inter-Process Communication using the D-Bus - + Klasy do międzyprocesowej komunikacji z użyciem D-Bus Qt4ProjectManager::Internal::QtOptionsPageWidget - + <specify a name> - + <Podaj nazwę> <specify a qmake location> - + <Podaj ścieżkę do qmake> Select QMake Executable - + Wskaż program QMake Select the MinGW Directory + Wskaż katalog MinGW + + + + Select Carbide Install Directory - Select "x86build" Directory from Carbide Install + Select S60 SDK Root - + Auto-detected - + Automatycznie wykryte Manual - + Ustawione ręcznie - + Building helpers @@ -13115,9 +13301,9 @@ Check if the phone is connected and the TRK application is running. - + The Qt Version identified by %1 is not installed. Run make install - + Wersja Qt identyfikowana przez %1 nie jest zainstalowana. Uruchom "make install" @@ -13133,14 +13319,62 @@ Check if the phone is connected and the TRK application is running. Qt4ProjectManager::QtVersionManager - + <not found> - + <nie znaleziony> Qt in PATH + Qt w PATH + + + + Name: + Nazwa: + + + + Source: + + + + + mkspec: + + + + + qmake: + + + + + Default: + Domyślna: + + + + Compiler: + + + + + Version: + Wersja: + + + + Debugging helper: + + + + + QApplication + + + The Qt Version has no toolchain. @@ -13170,12 +13404,12 @@ Check if the phone is connected and the TRK application is running. Empty Qt4 Project - + Pusty projekt Qt4 Creates an empty Qt project. - + Tworzy pusty projekt Qt. @@ -13183,7 +13417,7 @@ Check if the phone is connected and the TRK application is running. This wizard generates an empty Qt4 project. Add files to it later on by using the other wizards. - + Ten kreator generuje pusty projekt Qt4. Możesz później dodawać pliki do niego używając innych kreatorów. @@ -13191,12 +13425,12 @@ Check if the phone is connected and the TRK application is running. Class Information - + Informacja o klasie Specify basic information about the classes for which you want to generate skeleton source code files. - + Podaj podstawowe informacje o klasach dla których chcesz wygenerować szkielet @@ -13204,17 +13438,17 @@ Check if the phone is connected and the TRK application is running. Qt4 Gui Application - + Aplikacja Gui Qt4 Creates a Qt4 Gui Application with one form. - + Tworzy aplikację Gui Qt4 z jednym formularzem. The template file '%1' could not be opened for reading: %2 - + Nie można odczytać pliku z szablonem "%1": %2 @@ -13222,7 +13456,7 @@ Check if the phone is connected and the TRK application is running. This wizard generates a Qt4 GUI application project. The application derives by default from QApplication and includes an empty widget. - + Ten kreator generuje projekt aplikacji GUI Qt4. Aplikacja wywodzi się domyślnie z QApplication i zawiera pusty widżet. @@ -13230,12 +13464,12 @@ Check if the phone is connected and the TRK application is running. C++ Library - + Biblioteka C++ Creates a C++ Library. - + Tworzy bibliotekę C++. @@ -13243,27 +13477,27 @@ Check if the phone is connected and the TRK application is running. Shared library - + Biblioteka współdzielona Statically linked library - + Biblioteka statycznie dowiązana Qt 4 plugin - + Wtyczka Qt 4 Type - + Typ This wizard generates a C++ library project. - + Ten kreator generuje projekt biblioteki C++. @@ -13297,12 +13531,12 @@ Check if the phone is connected and the TRK application is running. Expected Failure - + Spodziewany błąd Failure - + Błąd @@ -13312,17 +13546,17 @@ Check if the phone is connected and the TRK application is running. Warning - + Ostrzeżenie Qt Warning - + Ostrzeżenie Qt Qt Debug - + Komunikat debugowy Qt @@ -13342,7 +13576,7 @@ Check if the phone is connected and the TRK application is running. Info - + Informacja @@ -13350,17 +13584,17 @@ Check if the phone is connected and the TRK application is running. Test Results - + Rezultaty testu Result - + Rezultat Message - + Komunikat @@ -13368,12 +13602,12 @@ Check if the phone is connected and the TRK application is running. All Incidents - + Wszystkie zajścia Show Only: - + Pokaż tylko: @@ -13421,73 +13655,32 @@ Check if the phone is connected and the TRK application is running. - Locator::Internal::DirectoryFilter + QuickOpen::Internal::FileSystemFilter - - Generic Directory Filter - - - - - Filter Configuration - - - - - - Choose a directory to add - - - - - %1 filter update: 0 files - - - - - %1 filter update: %n files - - - - - - - %1 filter update: canceled - - - - - Locator::Internal::FileSystemFilter - - Files in file system - Pliki w systemie plików + Pliki w systemie plików - Locator::ILocatorFilter + QuickOpen::IQuickOpenFilter - Filter Configuration - Konfiguracja filtra + Konfiguracja filtra - Limit to prefix - Ogranicz do przedrostka + Ogranicz do przedrostka - Prefix: - Przedrostek: + Przedrostek: - Locator::Internal::OpenDocumentsFilter + QuickOpen::Internal::OpenDocumentsFilter - Open documents - Otwarte dokumenty + Otwarte dokumenty @@ -13504,55 +13697,39 @@ Check if the phone is connected and the TRK application is running. - Locator::Internal::LocatorFiltersFilter + QuickOpen::Internal::QuickOpenFiltersFilter - Available filters - + Dostępne filtry - Locator::Internal::LocatorPlugin + QuickOpen::Internal::QuickOpenPlugin - Indexing - + Indeksowanie - Locator::Internal::LocatorWidget + QuickOpen::Internal::QuickOpenToolWindow - Refresh - + Odśwież - Configure... - + Skonfiguruj... - - Locate... - - - - - Type to locate - - - - <type here> - + <wpisz tutaj> - Locator::Internal::SettingsPage + QuickOpen::Internal::SettingsPage - %1 (Prefix: %2) - %1 (Przedrostek: %2) + %1 (Przedrostek: %2) @@ -13560,7 +13737,7 @@ Check if the phone is connected and the TRK application is running. &Pattern: - + &Wzorzec: @@ -13570,17 +13747,17 @@ Check if the phone is connected and the TRK application is running. &Pattern Syntax: - + Składnia &wzorca: &Text: - + &Tekst: Case &Sensitive - + Uwzględniaj &wielkość liter @@ -13590,32 +13767,32 @@ Check if the phone is connected and the TRK application is running. Index of Match: - + Indeks dopasowania: Matched Length: - + Dopasowana długość: Regular expression v1 - + Wyrażenie regularne v1 Regular expression v2 - + Wyrażenie regularne v2 Wildcard - + Dżoker Fixed string - + Stały ciąg @@ -13630,32 +13807,32 @@ Check if the phone is connected and the TRK application is running. Regular Expression - + Wyrażenie regularne Enter pattern from code... - + Wprowadź wzorzec z kodu... Clear patterns - + Wyczyść wzorce Clear texts - + Wyczyść teksty Enter pattern from code - + Wprowadź wzorzec z kodu Pattern - + Wzorzec @@ -13663,27 +13840,27 @@ Check if the phone is connected and the TRK application is running. Creates a Qt Resource file (.qrc). - + Tworzy plik z zasobami Qt (.qrc). Qt Resource file - + Plik z zasobami Qt Qt - + Qt &Undo - + &Cofnij &Redo - + &Przywróć @@ -13699,7 +13876,7 @@ Check if the phone is connected and the TRK application is running. Snippets - + Urywki @@ -13707,7 +13884,7 @@ Check if the phone is connected and the TRK application is running. Snippets - + Urywki @@ -13715,7 +13892,7 @@ Check if the phone is connected and the TRK application is running. Checks out a project from a Subversion repository. - + Wyciąga projekt ze składnicy Subversion. @@ -13733,7 +13910,7 @@ Check if the phone is connected and the TRK application is running. Repository: - + Składnica: @@ -13749,17 +13926,17 @@ Check if the phone is connected and the TRK application is running. &Subversion - + &Subversion Add - + Dodaj Add "%1" - + Dodaj "%1" @@ -13769,37 +13946,37 @@ Check if the phone is connected and the TRK application is running. Delete - + Usuń Delete "%1" - + Usuń "%1" Revert - + Odwróć zmiany Revert "%1" - + Odwróć zmiany w "%1" Diff Project - + Pokaż różnice w projekcie Diff Current File - + Pokaż różnice w bieżącym pliku Diff "%1" - + Pokaż różnice w "%1" @@ -13809,17 +13986,17 @@ Check if the phone is connected and the TRK application is running. Commit All Files - + Wyślij wszystkie pliki Commit Current File - + Wyślij bieżący plik Commit "%1" - + Wyślij "%1" @@ -13839,57 +14016,57 @@ Check if the phone is connected and the TRK application is running. Annotate Current File - + Dołącz adnotację do bieżącego pliku Annotate "%1" - + Dołącz adnotację do "%1" Describe... - + Opisz... Project Status - + Stan projektu Update Project - + Odśwież projekt Commit - + Wyślij Diff Selected Files - + Pokaż różnice w zaznaczonych plikach &Undo - + &Cofnij &Redo - + &Przywróć Closing Subversion Editor - + Zamykanie edytora Subversion Do you want to commit the change? - + Czy chcesz wysłać zmianę? @@ -13899,7 +14076,7 @@ Check if the phone is connected and the TRK application is running. The file has been changed. Do you want to revert it? - + Plik został zmieniony. Czy chcesz odwrócić w nim zmiany? @@ -13914,17 +14091,17 @@ Check if the phone is connected and the TRK application is running. There are no modified files. - + Brak zmodyfikowanych plików. Cannot create temporary file: %1 - + Nie można utworzyć tymczasowego pliku: %1 Describe - + Opisz @@ -13941,22 +14118,23 @@ Check if the phone is connected and the TRK application is running. Executing: %1 %2 Executing: <executable> <arguments> - + Wykonywanie: %1 %2 + The process terminated with exit code %1. - + Proces zakończył się kodem wyjściowym %1. The process terminated abnormally. - + Proces niepoprawnie zakończony. Could not start subversion '%1'. Please check your settings in the preferences. - + Nie można uruchomić subversion "%1". Sprawdź stosowne ustawienia. @@ -13969,7 +14147,7 @@ Check if the phone is connected and the TRK application is running. Subversion Submit - + Wyślij do Subversion @@ -13978,7 +14156,7 @@ Check if the phone is connected and the TRK application is running. %1 found - + Ilość znalezionych: %1 @@ -13988,7 +14166,7 @@ Check if the phone is connected and the TRK application is running. Use Regular E&xpressions - + Używaj wyrażeń &regularnych @@ -13996,12 +14174,12 @@ Check if the phone is connected and the TRK application is running. untitled - + nienazwany <em>Binary data</em> - + <em>Dane binarne</em> @@ -14009,30 +14187,30 @@ Check if the phone is connected and the TRK application is running. Print Document - + Wydrukuj dokument <b>Error:</b> Could not decode "%1" with "%2"-encoding. Editing not possible. - + <b>Błąd:</b> Nie można odkodować "%1" używając kodowania "%2". Edycja nie jest możliwa. Select Encoding - + Wybierz kodowanie TextEditor::BaseTextEditorEditable - + Line: %1, Col: %2 - + Linia: %1, kolumna: %2 Line: %1, Col: 999 - + Linia: %1, kolumna: 999 @@ -14040,7 +14218,7 @@ Check if the phone is connected and the TRK application is running. Text Encoding - + Kodowanie tekstu @@ -14051,17 +14229,17 @@ The following encodings are likely to fit: Select encoding for "%1".%2 - + Wybierz kodowanie dla "%1".%2 Reload with Encoding - + Przeładuj z kodowaniem Save with Encoding - + Zachowaj z kodowaniem @@ -14069,7 +14247,7 @@ The following encodings are likely to fit: Not a color scheme file. - + Nie jest to plik ze schematem kolorów. @@ -14077,7 +14255,7 @@ The following encodings are likely to fit: Current File - + Bieżący plik @@ -14085,27 +14263,27 @@ The following encodings are likely to fit: Files on Disk - + Pliki na dysku &Directory: - + &Katalog: &Browse - + &Przeglądaj File &pattern: - + &Wzorzec pliku: Directory to search - + Katalog w którym przeszukiwać @@ -14113,7 +14291,7 @@ The following encodings are likely to fit: Customized - + Własny @@ -14121,52 +14299,52 @@ The following encodings are likely to fit: Font & Colors - + Czcionki i kolory Copy Color Scheme - + Skopiuj schemat kolorów Color Scheme name: - + Nazwa schematu kolorów: %1 (copy) - + %1 (kopia) Delete Color Scheme - + Usuń schemat kolorów Are you sure you want to delete this color scheme permanently? - + Czy jesteś pewien że chcesz usunąć ten schemat kolorów bezpowrotnie? Delete - + Usuń Color Scheme Changed - + Schemat kolorów został zmieniony The color scheme "%1" was modified, do you want to save the changes? - + Schemat kolorów "%1" został zmodyfikowany, czy chcesz zachować zmiany? Discard - + Odrzuć @@ -14174,12 +14352,12 @@ The following encodings are likely to fit: Line %1 - + Linia %1 Line in current document - + Linia w bieżącym dokumencie @@ -14187,22 +14365,22 @@ The following encodings are likely to fit: &Undo - + &Cofnij &Redo - + &Przywróć Select Encoding... - + Wybierz kodowanie... Auto-&indent Selection - + Automatyczne wc&ięcia dla selekcji @@ -14227,17 +14405,17 @@ The following encodings are likely to fit: %1+E, R - + %1+E, R &Visualize Whitespace - + &Wizualizuj białe znaki %1+E, %2+V - + %1+E, %2+V @@ -14247,17 +14425,17 @@ The following encodings are likely to fit: Enable Text &Wrapping - + Włącz za&wijanie tekstu %1+E, %2+W - + %1+E, %2+W (Un)Comment &Selection - + Wykomentuj / odkomentuj &selekcję @@ -14267,7 +14445,7 @@ The following encodings are likely to fit: Cut &Line - + Wytnij &linię @@ -14277,12 +14455,12 @@ The following encodings are likely to fit: Delete &Line - + Usuń &linię Collapse - + Zwiń @@ -14292,7 +14470,7 @@ The following encodings are likely to fit: Expand - + Rozwiń @@ -14302,12 +14480,12 @@ The following encodings are likely to fit: (Un)&Collapse All - + &Zwiń / rozwiń wszystko Increase Font Size - + Zwiększ rozmiar czcionki @@ -14317,7 +14495,7 @@ The following encodings are likely to fit: Decrease Font Size - + Zmniejsz rozmiar czcionki @@ -14327,7 +14505,7 @@ The following encodings are likely to fit: Goto Block Start - + Przejdź do początku bloku @@ -14337,7 +14515,7 @@ The following encodings are likely to fit: Goto Block End - + Przejdź do końca bloku @@ -14367,7 +14545,7 @@ The following encodings are likely to fit: Select Block Up - + Zaznacz zewnętrzny blok @@ -14377,12 +14555,12 @@ The following encodings are likely to fit: Select Block Down - + Zaznacz wewnętrzny blok Move Line Up - + Przenieś linię w górę @@ -14392,7 +14570,7 @@ The following encodings are likely to fit: Move Line Down - + Przenieś linię w dół @@ -14422,7 +14600,7 @@ The following encodings are likely to fit: <line number> - + <numer linii> @@ -14430,22 +14608,22 @@ The following encodings are likely to fit: Creates a text file (.txt). - + Tworzy plik tekstowy (.txt). Text File - + Plik tekstowy General - + Ogólne Triggers a completion in this scope - + Przełącza uzupełnianie kody w tym zakresie @@ -14455,7 +14633,7 @@ The following encodings are likely to fit: Meta+Space - + Meta+Space @@ -14473,57 +14651,57 @@ The following encodings are likely to fit: Text - + Tekst Link - + Odsyłacz Selection - + Zaznaczone Line Number - + Numer linii Search Result - + Wyniki wyszukiwania Search Scope - + Zakres wyszukiwania Parentheses - + Nawiasy Current Line - + Bieżąca linia Current Line Number - + Numer bieżącej linii Occurrences - + Wystąpienia Unused Occurrence - + Nieużywane wystąpienie @@ -14533,72 +14711,72 @@ The following encodings are likely to fit: Number - + Numer String - + Ciąg Type - + Typ Keyword - + Słowo kluczowe Operator - + Operator Preprocessor - + Preprocesor Label - + Etykieta Comment - + Komentarz Doxygen Comment - + Komentarz Doxygen'a Doxygen Tag - + Tag Doxygen'a Visual Whitespace - + Widoczny biały znak Disabled Code - + Nieaktywny kod Added Line - + Dodana linia Removed Line - + Usunięta linia @@ -14615,12 +14793,12 @@ The following encodings are likely to fit: Text Editor - + Edytor tekstu Behavior - + Zachowanie @@ -14633,17 +14811,17 @@ The following encodings are likely to fit: Cannot Open Project - + Nie można otworzyć projektu Failed to open project in '%1'. - + Nie można otworzyć projektu w "%1". Could not find any project files matching (%1) in the directory '%2'. - + Nie można odnaleźć żadnych plików z projekami pasujących do (%1) w katalogu "%2". @@ -14653,12 +14831,12 @@ The following encodings are likely to fit: '%1' does not exist. - + "%1" nie istnieje. Unable to open the project '%1'. - + Nie można otworzyć projektu "%1". @@ -14666,22 +14844,22 @@ The following encodings are likely to fit: The process terminated with exit code %1. - + Proces zakończył się kodem wyjściowym %1. The process returned exit code %1. - + Proces zwrócił kod wyjściowy %1. The process terminated in an abnormal way. - + Proces niepoprawnie zakończony. Stopping... - + Zatrzymywanie... @@ -14694,12 +14872,12 @@ The following encodings are likely to fit: Failed. - + Niepomyślnie zakończone. Succeeded. - + Pomyślnie zakończone. @@ -14707,27 +14885,27 @@ The following encodings are likely to fit: Name - + Imię E-mail - + Email Alias - + Alias Alias e-mail - + Alias email Cannot open '%1': %2 - + Nie można otworzyć "%1": %2 @@ -14735,12 +14913,12 @@ The following encodings are likely to fit: State - + Stan File - + Plik @@ -14749,7 +14927,7 @@ The following encodings are likely to fit: Version Control - Kontrola Wersji + System kontroli wersji @@ -14762,7 +14940,7 @@ The following encodings are likely to fit: Describe change %1 - + Opisz zmianę %1 @@ -14770,12 +14948,12 @@ The following encodings are likely to fit: Clear - + Wyczyść Version Control - + System kontroli wersji @@ -14788,12 +14966,12 @@ The following encodings are likely to fit: Insert name... - + Wstaw nazwę... Prompt to submit - Przypominaj o wysyłaniu zmian do serwera + Pytaj przed wysłaniem zmian do serwera @@ -14803,7 +14981,7 @@ The following encodings are likely to fit: Unable to open '%1': %2 - + Nie można otworzyć "%1": %2 @@ -14906,12 +15084,12 @@ The following encodings are likely to fit: Open Link - + Otwórz odsyłacz Open Link in New Tab - + Otwórz odsyłacz w nowej karcie @@ -14919,38 +15097,39 @@ The following encodings are likely to fit: Open Link in New Tab - + Otwórz odsyłacz w nowej karcie <title>Error 404...</title><div align="center"><br><br><h1>The page could not be found</h1><br><h3>'%1'</h3></div> - + <title>Błąd 404...</title><div align="center"><br><br><h1>Strona nie została znaleziona</h1><br><h3>'%1'</h3></div> Help - + Pomoc Unable to launch external application. - + Nie można uruchomić zewnętrznej aplikacji. + OK - + OK Copy &Link Location - + Skopiuj &adres odsyłacza Open Link in New Tab Ctrl+LMB - + Skopiuj adres odsyłacza Ctrl+LMB @@ -14958,17 +15137,17 @@ The following encodings are likely to fit: &Look for: - + Po&szukuj: Open Link - + Otwórz odsyłacz Open Link in New Tab - + Otwórz odsyłacz w nowej karcie @@ -14976,47 +15155,47 @@ The following encodings are likely to fit: <Global Scope> - + <Zakres globalny> Change Item - + Zmień element Change Variable Assignment - + Zmień podstawienie zmiennej Change Variable Type - + Zmień typ zmiennej Change Scope Condition - + Zmień warunek zakresu Change Expression - + Zmień wyrażenie Move Item - + Przenieś element Remove Item - + Usuń element Insert Item - + Wstaw element @@ -15024,62 +15203,62 @@ The following encodings are likely to fit: Add Files - + Dodaj pliki Add Prefix - + Dodaj przedrostek Invalid file - + Niepoprawny plik Copy - + Skopiuj Skip - + Pomiń Abort - + Przerwij The file %1 is not in a subdirectory of the resource file. Continuing will result in an invalid resource file. - + Plik %1 nie leży w podkatalogu w którym znajduje się plik z zasobami. Kontynuacja spowoduje utworzenie niepoprawnego pliku z zasobami. Choose copy location - + Wybierz docelowe położenie kopii Overwrite failed - + Nie można nadpisać Could not overwrite file %1. - + Nie można nadpisać pliku %1. Copying failed - + Kopiowanie zakończone niepowodzeniem Could not copy the file to %1. - + Nie można skopiować pliku do %1. @@ -15087,72 +15266,72 @@ The following encodings are likely to fit: Add Files... - + Dodaj pliki... Change Alias... - + Zmień alias... Add Prefix... - + Dodaj przedrostek... Change Prefix... - + Zmień przedrostek... Change Language... - + Zmień język... Remove Item - + Usuń element Open file - + Otwórz plik All files (*) - + Wszystkie pliki (*) Change Prefix - + Zmień przedrostek Input Prefix: - + Wprowadź przedrostek: Change Language - + Zmień język Language: - + Język: Change File Alias - + Zmień alias pliku Alias: - + Alias: @@ -15160,7 +15339,7 @@ The following encodings are likely to fit: Open file - + Otwórz plik @@ -15170,7 +15349,7 @@ The following encodings are likely to fit: Quit - + Zakończ @@ -15251,12 +15430,12 @@ The following encodings are likely to fit: Debug - + Debugowanie Not a runnable project - + Projekt nie jest uruchamialny @@ -15295,47 +15474,47 @@ in your .pro file. unknown - + nieznany CMake Project file - + Plik projektu CMake C Source file - + Plik źródłowy C C Header file - + Plik nagłówkowy C C++ Header file - + Plik nagłówkowy C++ C++ header - + Plik nagłówkowy C++ C++ Source file - + Plik źródłowy C++ C++ source code - + Kod źródłowy C++ Objective-C source code - + Kod źródłowy Objective-C @@ -15345,17 +15524,17 @@ in your .pro file. Qt Designer file - + Plik Qt Designer Generic Qt Creator Project file - + Ogólny plik projektu Qt Creator Generic Project Files - + Ogólne pliki projektów @@ -15375,17 +15554,17 @@ in your .pro file. QML file - + Plik QML Qml Project file - + Plik projektu Qml Qt Project file - + Plik projektu Qt @@ -15400,12 +15579,12 @@ in your .pro file. Qt Script file - + Plik ze skryptem Qt Qt Resource file - + Plik z zasobami Qt @@ -15420,12 +15599,475 @@ in your .pro file. XML document - + Dokument XML Differences between files + Różnice pomiędzy plikami + + + + Locator::Internal::DirectoryFilterOptions + + + Name: + Nazwa: + + + + File Types: + Typy plików: + + + + Specify file name filters, separated by comma. Filters may contain wildcards. + Podaj filtry nazw plików. oddzielone przecinkiem. Filtry mogą zawierać dżokery. + + + + Prefix: + Przedrostek: + + + + Specify a short word/abbreviation that can be used to restrict completions to files from this directory tree. +To do this, you type this shortcut and a space in the Locator entry field, and then the word to search for. + Podaj krótkie słowo lub skrót który będzie użyty do odfiltrowania plików w podanych katalogach. +Aby uaktywnić ten filtr wpisz w lokalizatorze powyższy skrót i po spacji podaj szukane słowo. + + + + Limit to prefix + Ogranicz aktywność filtru: +aktywny tylko po wpisaniu przedrostka + + + + Add... + Dodaj... + + + + Edit... + Zmodyfikuj... + + + + Remove + Usuń + + + + Directories: + Katalogi: + + + + Locator::Internal::FileSystemFilterOptions + + + Filter configuration + Konfiguracja filtra + + + + Prefix: + Przedrostek: + + + + Limit to prefix + Ogranicz aktywność filtru: +aktywny tylko po wpisaniu przedrostka + + + + Include hidden files + Włącz ukryte pliki + + + + Filter: + Filtr: + + + + Locator::Internal::SettingsWidget + + + Configure Filters + Skonfiguruj filtry + + + + Add + Dodaj + + + + Remove + Usuń + + + + Edit + Zmodyfikuj + + + + Refresh Interval: + Odświeżanie co: + + + + min + min + + + + CppTools::Internal::CppLocatorFilter + + + Classes and Methods + Klasy i metody + + + + Debugger::Internal::TermGdbAdapter + + + Debugger Error + Błąd debuggera + + + + Locator::Internal::DirectoryFilter + + + Generic Directory Filter + + + + + Filter Configuration + Konfiguracja filtra + + + + + Choose a directory to add + Wybierz katalog do dodania + + + + %1 filter update: 0 files + Odświeżenie filtra %1: 0 plików + + + + %1 filter update: %n files + + Odświeżenie filtra %1: %n plik + Odświeżenie filtra %1: %n pliki + Odświeżenie filtra %1: %n plików + + + + + %1 filter update: canceled + Odświeżenie filtra %1: anulowano + + + + Locator::Internal::FileSystemFilter + + + Files in file system + Pliki w systemie plików + + + + Locator::ILocatorFilter + + + Filter Configuration + Konfiguracja filtra + + + + Limit to prefix + Ogranicz aktywność filtru: +aktywny tylko po wpisaniu przedrostka + + + + Prefix: + Przedrostek: + + + + Locator::Internal::LocatorFiltersFilter + + + Available filters + Dostępne filtry + + + + Locator::Internal::LocatorPlugin + + + Indexing + Indeksowanie + + + + Locator::Internal::LocatorWidget + + + Refresh + Odśwież + + + + Configure... + Skonfiguruj... + + + + Locate... + Znajdź... + + + + Type to locate + Wpisz aby znaleźć + + + + <type here> + <wpisz tutaj> + + + + Locator::Internal::OpenDocumentsFilter + + + Open documents + Otwarte dokumenty + + + + Locator::Internal::SettingsPage + + + %1 (Prefix: %2) + %1 (Przedrostek: %2) + + + + Qt4ProjectManager::Internal::S60Devices::Device + + + Id: + Identyfikator: + + + + Name: + Nazwa: + + + + EPOC: + EPOC: + + + + Tools: + Narzędzia: + + + + Qt: + Qt: + + + + trk::BluetoothListener + + + %1: Stopping listener %2... + + + + + %1: Starting Bluetooth listener %2... + + + + + Unable to run '%1': %2 + Nie można uruchomić "%1": %2 + + + + %1: Bluetooth listener running (%2). + + + + + %1: Process %2 terminated with exit code %3. + %1: Proces %2 zakończył się kodem wyjściowym %3. + + + + %1: Process %2 crashed. + + + + + %1: Process error %2: %3 + %1: Błąd procesu %2: %3 + + + + trk::AbstractBluetoothStarter + + %1: Connection attempt %2 succeeded. + %1: %2 próba połączenia powiodła się. + + + %1: Connection attempt %2 failed: %3 (retrying)... + %1: %2 próba połączenia nie powiodła się; %3 (ponowna próba)... + + + + trk::startBluetoothGui + + Waiting for Bluetooth Connection + Oczekiwanie na połączenie Bluetooth + + + Connecting to %1... + Łączenie z %1... + + + Connection on %1 canceled. + Anulowano połączenie z %1. + + + + QmlParser + + + Illegal character + + + + + Unclosed string at end of line + + + + + Illegal escape squence + + + + + Illegal unicode escape sequence + + + + + Unclosed comment at end of file + + + + + Illegal syntax for exponential number + + + + + Identifier cannot start with numeric literal + + + + + Unterminated regular expression literal + + + + + Invalid regular expression flag '%0' + + + + + Unexpected token `%1' + + + + + + Expected token `%1' + + + + + Syntax error + + trk::promptStartCommunication + + + Connection on %1 canceled. + Anulowano połączenie z %1. + + + + Waiting for TRK + + + + + Waiting for TRK to start on %1... + + + + + Waiting for Bluetooth Connection + Oczekiwanie na połączenie Bluetooth + + + + Connecting to %1... + Łączenie z %1... + + + + trk::BaseCommunicationStarter + + + %1: timed out after %n attempts using an interval of %2ms. + + + + + + + %1: Connection attempt %2 succeeded. + %1: %2 próba połączenia zakończona pomyślnie. + + + + %1: Connection attempt %2 failed: %3 (retrying)... + %1: %2 próba połączenia zakończona niepomyślnie: %3 (ponowna próba)... + + diff --git a/src/libs/cplusplus/CppBindings.cpp b/src/libs/cplusplus/CppBindings.cpp index 1eb11b31273..acbeb6f6fd1 100644 --- a/src/libs/cplusplus/CppBindings.cpp +++ b/src/libs/cplusplus/CppBindings.cpp @@ -404,6 +404,11 @@ Binding *ClassBinding::findClassOrNamespaceBinding(Identifier *id, QSetisEqualTo(identifier())) return this; + if (processed->contains(this)) + return 0; + + processed->insert(this); + foreach (ClassBinding *nestedClassBinding, children) { if (id->isEqualTo(nestedClassBinding->identifier())) return nestedClassBinding; @@ -412,6 +417,7 @@ Binding *ClassBinding::findClassOrNamespaceBinding(Identifier *id, QSetfindClassOrNamespaceBinding(id, processed)) return b; } diff --git a/src/libs/cplusplus/FindUsages.cpp b/src/libs/cplusplus/FindUsages.cpp index 46f98920f73..5b3e77ee8d1 100644 --- a/src/libs/cplusplus/FindUsages.cpp +++ b/src/libs/cplusplus/FindUsages.cpp @@ -62,8 +62,10 @@ QList FindUsages::operator()(Symbol *symbol, Identifier *id, AST *ast) _references.clear(); _declSymbol = symbol; _id = id; - _exprDoc = Document::create(""); - accept(ast); + if (_declSymbol && _id) { + _exprDoc = Document::create(""); + accept(ast); + } return _references; } diff --git a/src/libs/cplusplus/ResolveExpression.cpp b/src/libs/cplusplus/ResolveExpression.cpp index 2ae4f84da1c..9333d064e91 100644 --- a/src/libs/cplusplus/ResolveExpression.cpp +++ b/src/libs/cplusplus/ResolveExpression.cpp @@ -447,13 +447,13 @@ bool ResolveExpression::visit(CallAST *ast) _results.clear(); // Compute the types of the actual arguments. - QList< QList > arguments; - for (ExpressionListAST *exprIt = ast->expression_list; exprIt; - exprIt = exprIt->next) { - arguments.append(operator()(exprIt->expression)); - } + int actualArgumentCount = 0; - const unsigned actualArgumentCount = arguments.count(); + //QList< QList > arguments; + for (ExpressionListAST *exprIt = ast->expression_list; exprIt; exprIt = exprIt->next) { + //arguments.append(operator()(exprIt->expression)); + ++actualArgumentCount; + } Name *functionCallOp = control()->operatorNameId(OperatorNameId::FunctionCallOp); @@ -639,10 +639,19 @@ ResolveExpression::resolveBaseExpression(const QList &baseResults, int a } } - if (ty->isNamedType()) + if (NamedType *namedTy = ty->asNamedType()) { + const QList visibleScopes = _context.visibleScopes(result); + const QList typedefCandidates = _context.resolve(namedTy->name(), visibleScopes); + foreach (Symbol *typedefCandidate, typedefCandidates) { + if (typedefCandidate->isTypedef() && typedefCandidate->type()->isNamedType()) { + ty = typedefCandidate->type(); + break; + } + } + results.append(Result(ty, lastVisibleSymbol)); - else if (Function *fun = ty->asFunctionType()) { + } else if (Function *fun = ty->asFunctionType()) { Scope *funScope = fun->scope(); if (funScope && (funScope->isBlockScope() || funScope->isNamespaceScope())) { diff --git a/src/libs/extensionsystem/extensionsystem.pro b/src/libs/extensionsystem/extensionsystem.pro index b5fed62800b..9cacadb3306 100644 --- a/src/libs/extensionsystem/extensionsystem.pro +++ b/src/libs/extensionsystem/extensionsystem.pro @@ -19,16 +19,14 @@ HEADERS += pluginerrorview.h \ pluginspec_p.h \ pluginview.h \ pluginview_p.h \ - optionsparser.h \ - iwelcomepage.h + optionsparser.h SOURCES += pluginerrorview.cpp \ plugindetailsview.cpp \ iplugin.cpp \ pluginmanager.cpp \ pluginspec.cpp \ pluginview.cpp \ - optionsparser.cpp \ - iwelcomepage.cpp + optionsparser.cpp FORMS += pluginview.ui \ pluginerrorview.ui \ plugindetailsview.ui diff --git a/src/libs/extensionsystem/iwelcomepage.cpp b/src/libs/utils/iwelcomepage.cpp similarity index 51% rename from src/libs/extensionsystem/iwelcomepage.cpp rename to src/libs/utils/iwelcomepage.cpp index 12970379889..6dbf4452372 100644 --- a/src/libs/extensionsystem/iwelcomepage.cpp +++ b/src/libs/utils/iwelcomepage.cpp @@ -1,8 +1,13 @@ #include "iwelcomepage.h" -using namespace ExtensionSystem; +using namespace Utils; IWelcomePage::IWelcomePage() { } + +IWelcomePage::~IWelcomePage() +{ + +} diff --git a/src/libs/extensionsystem/iwelcomepage.h b/src/libs/utils/iwelcomepage.h similarity index 72% rename from src/libs/extensionsystem/iwelcomepage.h rename to src/libs/utils/iwelcomepage.h index e4e5e6f1d65..fbadf5ff440 100644 --- a/src/libs/extensionsystem/iwelcomepage.h +++ b/src/libs/utils/iwelcomepage.h @@ -2,20 +2,21 @@ #define IWELCOMEPAGE_H -#include "extensionsystem_global.h" +#include "utils_global.h" #include -namespace ExtensionSystem { +namespace Utils { class IWelcomePagePrivate; -class EXTENSIONSYSTEM_EXPORT IWelcomePage : public QObject +class QTCREATOR_UTILS_EXPORT IWelcomePage : public QObject { Q_OBJECT public: IWelcomePage(); + virtual ~IWelcomePage(); virtual QWidget *page() = 0; virtual QString title() const = 0; diff --git a/src/libs/utils/projectintropage.ui b/src/libs/utils/projectintropage.ui index b527a25420e..a37da218c3e 100644 --- a/src/libs/utils/projectintropage.ui +++ b/src/libs/utils/projectintropage.ui @@ -91,6 +91,9 @@ + + true + diff --git a/src/libs/utils/utils.pro b/src/libs/utils/utils.pro index 88687c63b43..14a984654d5 100644 --- a/src/libs/utils/utils.pro +++ b/src/libs/utils/utils.pro @@ -33,6 +33,7 @@ SOURCES += reloadpromptutils.cpp \ styledbar.cpp \ stylehelper.cpp \ welcomemodetreewidget.cpp \ + iwelcomepage.cpp \ fancymainwindow.cpp \ detailsbutton.cpp \ detailswidget.cpp @@ -76,6 +77,7 @@ HEADERS += utils_global.h \ styledbar.h \ stylehelper.h \ welcomemodetreewidget.h \ + iwelcomepage.h \ fancymainwindow.h \ detailsbutton.h \ detailswidget.h diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp index df7b8ee56bb..39271a21675 100644 --- a/src/plugins/coreplugin/editormanager/editormanager.cpp +++ b/src/plugins/coreplugin/editormanager/editormanager.cpp @@ -1347,6 +1347,8 @@ EditorManager::ReadOnlyAction MakeWritableResult EditorManager::makeEditorWritable(IEditor *editor) { + if (!editor || !editor->file()) + return Failed; QString directory = QFileInfo(editor->file()->fileName()).absolutePath(); IVersionControl *versionControl = m_d->m_core->vcsManager()->findVersionControlForDirectory(directory); IFile *file = editor->file(); diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp index 5cb4e43ff1b..743d2f728e6 100644 --- a/src/plugins/coreplugin/editormanager/editorview.cpp +++ b/src/plugins/coreplugin/editormanager/editorview.cpp @@ -68,7 +68,7 @@ using namespace Core; using namespace Core::Internal; -//================EditorView==================== +// ================EditorView==================== EditorView::EditorView(OpenEditorsModel *model, QWidget *parent) : QWidget(parent), diff --git a/src/plugins/cpaster/codepasterprotocol.cpp b/src/plugins/cpaster/codepasterprotocol.cpp index 7661498717d..00eb1f7c11c 100644 --- a/src/plugins/cpaster/codepasterprotocol.cpp +++ b/src/plugins/cpaster/codepasterprotocol.cpp @@ -67,9 +67,9 @@ bool CodePasterProtocol::isValidHostName(const QString& hostName) if (hostName.isEmpty()) { ICore::instance()->messageManager()->printToOutputPane( #ifdef Q_OS_MAC - tr("No Server defined in the CodePaster preferences!"), + tr("No Server defined in the CodePaster preferences."), #else - tr("No Server defined in the CodePaster options!"), + tr("No Server defined in the CodePaster options."), #endif true /*error*/); ICore::instance()->messageManager()->showOutputPane(); diff --git a/src/plugins/cppeditor/cppfilewizard.cpp b/src/plugins/cppeditor/cppfilewizard.cpp index 3f86ea88a56..63140ef32ba 100644 --- a/src/plugins/cppeditor/cppfilewizard.cpp +++ b/src/plugins/cppeditor/cppfilewizard.cpp @@ -81,9 +81,7 @@ QString CppFileWizard::fileContents(FileType type, const QString &fileName) cons } break; case Source: - str << QLatin1String("#include \"") << baseName - << '.' << preferredSuffix(QLatin1String(Constants::CPP_HEADER_MIMETYPE)) - << QLatin1String("\"\n\n"); + str << '\n'; break; } return contents; diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 6fc2b41e0e8..9243f88ce6b 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -249,11 +249,11 @@ bool DebuggerListener::coreAboutToClose() tr("A debugging session is still in progress. Would you like to terminate it?") : tr("A debugging session is still in progress. Terminating the session in the current" " state (%1) can leave the target in an inconsistent state." - " Would you like to terminate it?") + " Would you still like to terminate it?") .arg(QLatin1String(DebuggerManager::stateName(mgr->state()))); - QMessageBox::StandardButton answer = QMessageBox::question(0, title, question, - QMessageBox::Yes|QMessageBox::No, QMessageBox::No); - if (answer == QMessageBox::No) + QMessageBox::StandardButton answer = QMessageBox::question(mgr->mainWindow(), title, question, + QMessageBox::Yes|QMessageBox::No, QMessageBox::Yes); + if (answer != QMessageBox::Yes) return false; mgr->exitDebugger(); QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents); diff --git a/src/plugins/debugger/gdb/attachgdbadapter.cpp b/src/plugins/debugger/gdb/attachgdbadapter.cpp index 440c29bbd8e..4c0968233f2 100644 --- a/src/plugins/debugger/gdb/attachgdbadapter.cpp +++ b/src/plugins/debugger/gdb/attachgdbadapter.cpp @@ -78,7 +78,16 @@ void AttachGdbAdapter::startInferior() void AttachGdbAdapter::handleAttach(const GdbResponse &response) { if (response.resultClass == GdbResultDone) { - QTC_ASSERT(state() == InferiorStopped, qDebug() << state()); + // We don't know the exact 6.8.50 build where gdb started emitting + // *stopped here, so allow for some slack. + if (m_engine->m_gdbVersion < 60850) { + QTC_ASSERT(state() == InferiorStarting, qDebug() << state()); + setState(InferiorStopped); + } else if (m_engine->m_gdbVersion < 70000 && state() == InferiorStarting) { + setState(InferiorStopped); + } else { + QTC_ASSERT(state() == InferiorStopped, qDebug() << state()); + } debugMessage(_("INFERIOR ATTACHED")); showStatusMessage(msgAttachedToStoppedInferior()); emit inferiorPrepared(); @@ -91,8 +100,8 @@ void AttachGdbAdapter::handleAttach(const GdbResponse &response) void AttachGdbAdapter::interruptInferior() { - debugMessage(_("TRYING TO INTERUPT INFERIOR")); const qint64 pid = startParameters().attachPID; + QTC_ASSERT(pid > 0, return); if (!interruptProcess(pid)) debugMessage(_("CANNOT INTERRUPT %1").arg(pid)); } diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 9df41bc6277..04230db5bb8 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -191,6 +191,9 @@ GdbEngine::GdbEngine(DebuggerManager *manager) : m_trkOptions->fromSettings(Core::ICore::instance()->settings()); m_gdbAdapter = 0; + // Needs no resetting in initializeVariables() + m_busy = false; + connect(theDebuggerAction(AutoDerefPointers), SIGNAL(valueChanged(QVariant)), this, SLOT(setAutoDerefPointers(QVariant))); } @@ -536,6 +539,11 @@ void GdbEngine::handleResponse(const QByteArray &buff) if (resultClass == "done") { response.resultClass = GdbResultDone; } else if (resultClass == "running") { + if (state() == InferiorStopped) { // Result of manual command. + m_manager->resetLocation(); + setTokenBarrier(); + setState(InferiorRunningRequested); + } setState(InferiorRunning); showStatusMessage(tr("Running...")); response.resultClass = GdbResultRunning; @@ -594,6 +602,10 @@ void GdbEngine::readGdbStandardOutput() m_inbuffer.append(m_gdbProc.readAllStandardOutput()); + // This can trigger when a dialog starts a nested event loop + if (m_busy) + return; + while (newstart < m_inbuffer.size()) { int start = newstart; int end = m_inbuffer.indexOf('\n', scan); @@ -612,7 +624,9 @@ void GdbEngine::readGdbStandardOutput() continue; } #endif + m_busy = true; handleResponse(QByteArray::fromRawData(m_inbuffer.constData() + start, end - start)); + m_busy = false; } m_inbuffer.clear(); } @@ -693,11 +707,11 @@ void GdbEngine::postCommandHelper(const GdbCommand &cmd) if (cmd.flags & RebuildModel) { ++m_pendingRequests; - PENDING_DEBUG(" COMMAND" << cmd.callbackName - << "INCREMENTS PENDING TO:" << m_pendingRequests << cmd.command); + PENDING_DEBUG(" MODEL:" << cmd.command << "=>" << cmd.callbackName + << "INCREMENTS PENDING TO" << m_pendingRequests); } else { - PENDING_DEBUG(" UNKNOWN COMMAND" << cmd.callbackName - << "LEAVES PENDING AT:" << m_pendingRequests << cmd.command); + PENDING_DEBUG(" OTHER (IN):" << cmd.command << "=>" << cmd.callbackName + << "LEAVES PENDING AT" << m_pendingRequests); } if ((cmd.flags & NeedsStop) || !m_commandsToRunOnTemporaryBreak.isEmpty()) { @@ -817,15 +831,15 @@ void GdbEngine::handleResultRecord(GdbResponse *response) if (cmd.flags & RebuildModel) { --m_pendingRequests; - PENDING_DEBUG(" RESULT " << cmd.callbackName << " DECREMENTS PENDING TO: " - << m_pendingRequests << cmd.command); + PENDING_DEBUG(" WATCH" << cmd.command << "=>" << cmd.callbackName + << "DECREMENTS PENDING TO" << m_pendingRequests); if (m_pendingRequests <= 0) { - PENDING_DEBUG("\n\n .... AND TRIGGERS MODEL UPDATE\n"); + PENDING_DEBUG("\n\n ... AND TRIGGERS MODEL UPDATE\n"); rebuildModel(); } } else { - PENDING_DEBUG(" UNKNOWN RESULT " << cmd.callbackName << " LEAVES PENDING AT: " - << m_pendingRequests << cmd.command); + PENDING_DEBUG(" OTHER (OUT):" << cmd.command << "=>" << cmd.callbackName + << "LEAVES PENDING AT" << m_pendingRequests); } // Continue only if there are no commands wire anymore, so this will @@ -870,7 +884,6 @@ void GdbEngine::updateAll() void GdbEngine::handleQuerySources(const GdbResponse &response) { - m_sourcesListUpdating = false; if (response.resultClass == GdbResultDone) { QMap oldShortToFull = m_shortToFullName; m_shortToFullName.clear(); @@ -879,17 +892,12 @@ void GdbEngine::handleQuerySources(const GdbResponse &response) // fullname="/data5/dev/ide/main/bin/gdbmacros/gdbmacros.cpp"}, GdbMi files = response.data.findChild("files"); foreach (const GdbMi &item, files.children()) { - QString fileName = QString::fromLocal8Bit(item.findChild("file").data()); GdbMi fullName = item.findChild("fullname"); if (fullName.isValid()) { - QString full = QString::fromLocal8Bit(fullName.data()); - if (QFileInfo(full).isReadable()) { - #ifdef Q_OS_WIN - full = QDir::cleanPath(full); - #endif - m_shortToFullName[fileName] = full; - m_fullToShortName[full] = fileName; - } + QString full = cleanupFullName(QString::fromLocal8Bit(fullName.data())); + QString fileName = QString::fromLocal8Bit(item.findChild("file").data()); + m_shortToFullName[fileName] = full; + m_fullToShortName[full] = fileName; } } if (m_shortToFullName != oldShortToFull) @@ -978,7 +986,7 @@ void GdbEngine::handleAqcuiredInferior() #endif // It's nicer to see a bit of the world we live in. - reloadModules(); + reloadModulesInternal(); attemptBreakpointSynchronization(); } #endif @@ -1142,6 +1150,8 @@ void GdbEngine::handleStopResponse(const GdbMi &data) } else { handleStop1(data); } + // Dumper loading is sequenced, as otherwise the display functions + // will start requesting data without knowing that dumpers are available. } void GdbEngine::handleStop1(const GdbResponse &response) @@ -1152,16 +1162,13 @@ void GdbEngine::handleStop1(const GdbResponse &response) void GdbEngine::handleStop1(const GdbMi &data) { if (m_modulesListOutdated) - reloadModules(); // This is for display only + reloadModulesInternal(); // This is for display only if (m_sourcesListOutdated) - reloadSourceFiles(); // This needs to be done before fullName() may need it + reloadSourceFilesInternal(); // This needs to be done before fullName() may need it + QByteArray reason = data.findChild("reason").data(); if (reason == "breakpoint-hit") { showStatusMessage(tr("Stopped at breakpoint.")); - //debugMessage(_("HIT BREAKPOINT: " + frame.toString())); - postCommand(_("-break-list"), CB(handleBreakList)); - QVariant var = QVariant::fromValue(data); - postCommand(_("p 2"), CB(handleStop2), var); // dummy } else { if (reason == "signal-received" && theDebuggerBoolSetting(UseMessageBoxForSignals)) { @@ -1187,17 +1194,8 @@ void GdbEngine::handleStop1(const GdbMi &data) showStatusMessage(tr("Stopped.")); else showStatusMessage(tr("Stopped: \"%1\"").arg(_(reason))); - handleStop2(data); } -} -void GdbEngine::handleStop2(const GdbResponse &response) -{ - handleStop2(response.cookie.value()); -} - -void GdbEngine::handleStop2(const GdbMi &data) -{ const GdbMi gdbmiFrame = data.findChild("frame"); m_currentFrame = _(gdbmiFrame.findChild("addr").data() + '%' + @@ -1312,23 +1310,26 @@ QString GdbEngine::fullName(const QString &fileName) return QString(); QTC_ASSERT(!m_sourcesListOutdated, /* */) QTC_ASSERT(!m_sourcesListUpdating, /* */) - QString full = m_shortToFullName.value(fileName, QString()); - //debugMessage(_("RESOLVING: ") + fileName + " " + full); - if (!full.isEmpty()) - return full; - QFileInfo fi(fileName); - if (!fi.isReadable()) - return QString(); - full = fi.absoluteFilePath(); - #ifdef Q_OS_WIN - full = QDir::cleanPath(full); - #endif - //debugMessage(_("STORING: ") + fileName + " " + full); - m_shortToFullName[fileName] = full; - m_fullToShortName[full] = fileName; - return full; + return m_shortToFullName.value(fileName, QString()); } +#ifdef Q_OS_WIN +QString GdbEngine::cleanupFullName(const QString &fileName) +{ + QTC_ASSERT(!fileName.isEmpty(), return QString()) + if (m_gdbVersion < 60800) { + // The symbian gdb 6.4 seems to deliver "fullnames" which + // a) have no drive letter and b) are not normalized. + QFileInfo fi(fileName); + if (!fi.isReadable()) + return QString(); + return QDir::cleanPath(fi.absoluteFilePath()); + } else { + return fileName; + } +} +#endif + void GdbEngine::shutdown() { debugMessage(_("INITIATE GDBENGINE SHUTDOWN")); @@ -1373,7 +1374,7 @@ void GdbEngine::shutdown() // fall-through case InferiorStopFailed: // Tough luck, I guess. But unreachable as of now anyway. setState(EngineShuttingDown); - m_gdbProc.terminate(); + m_gdbProc.kill(); break; } } @@ -1401,7 +1402,7 @@ void GdbEngine::handleGdbExit(const GdbResponse &response) } else { QString msg = m_gdbAdapter->msgGdbStopFailed(_(response.data.findChild("msg").data())); debugMessage(_("GDB WON'T EXIT (%1); KILLING IT").arg(msg)); - m_gdbProc.terminate(); + m_gdbProc.kill(); } } @@ -1729,10 +1730,7 @@ void GdbEngine::breakpointDataFromOutput(BreakpointData *data, const GdbMi &bkpt QString name; if (!fullName.isEmpty()) { - name = QFile::decodeName(fullName); - #ifdef Q_OS_WIN - name = QDir::cleanPath(name); - #endif + name = cleanupFullName(QFile::decodeName(fullName)); if (data->markerFileName.isEmpty()) data->markerFileName = name; } else { @@ -1778,12 +1776,13 @@ void GdbEngine::sendInsertBreakpoint(int index) //if (!data->condition.isEmpty()) // cmd += _("-c ") + data->condition + _c(' '); cmd += where; - gdbOutputAvailable(LogStatus, _("Current state: %1").arg(state())); postCommand(cmd, NeedsStop, CB(handleBreakInsert), index); } void GdbEngine::handleBreakList(const GdbResponse &response) { + m_sourcesListUpdating = false; + // 45^done,BreakpointTable={nr_rows="2",nr_cols="6",hdr=[ // {width="3",alignment="-1",col_name="number",colhdr="Num"}, ... // body=[bkpt={number="1",type="breakpoint",disp="keep",enabled="y", @@ -1831,7 +1830,6 @@ void GdbEngine::handleBreakList(const GdbMi &table) } attemptBreakpointSynchronization(); - handler->updateMarkers(); } void GdbEngine::handleBreakIgnore(const GdbResponse &response) @@ -1897,7 +1895,6 @@ void GdbEngine::handleBreakInsert(const GdbResponse &response) breakpointDataFromOutput(data, bkpt); //#endif attemptBreakpointSynchronization(); - handler->updateMarkers(); } else { if (m_gdbVersion < 60800 && !m_isMacGdb) { // This gdb version doesn't "do" pending breakpoints. @@ -1938,7 +1935,11 @@ void GdbEngine::extractDataFromInfoBreak(const QString &output, BreakpointData * QString full = fullName(re.cap(3)); if (full.isEmpty()) { qDebug() << "NO FULL NAME KNOWN FOR" << re.cap(3); - full = re.cap(3); // FIXME: wrong, but prevents recursion + full = cleanupFullName(re.cap(3)); + if (full.isEmpty()) { + qDebug() << "FILE IS NOT RESOLVABLE" << re.cap(3); + full = re.cap(3); // FIXME: wrong, but prevents recursion + } } data->markerLineNumber = data->bpLineNumber.toInt(); data->markerFileName = full; @@ -1960,7 +1961,6 @@ void GdbEngine::handleBreakInfo(const GdbResponse &response) if (found != -1) { QString str = QString::fromLocal8Bit(response.data.findChild("consolestreamoutput").data()); extractDataFromInfoBreak(str, handler->at(found)); - handler->updateMarkers(); attemptBreakpointSynchronization(); // trigger "ready" } } @@ -1981,12 +1981,6 @@ void GdbEngine::handleBreakInsert1(const GdbResponse &response) data->bpNumber = _(""); } attemptBreakpointSynchronization(); // trigger "ready" - handler->updateMarkers(); -} - -void GdbEngine::attemptBreakpointSynchronization2(const GdbResponse &) -{ - attemptBreakpointSynchronization(); } void GdbEngine::attemptBreakpointSynchronization() @@ -2004,9 +1998,11 @@ void GdbEngine::attemptBreakpointSynchronization() } // For best results, we rely on an up-to-date fullname mapping. + // The listing completion will retrigger us, so no futher action is needed. if (m_sourcesListOutdated) { - reloadSourceFiles(); - postCommand(_("p 5"), CB(attemptBreakpointSynchronization2)); + reloadSourceFilesInternal(); + return; + } else if (m_sourcesListUpdating) { return; } @@ -2062,6 +2058,8 @@ void GdbEngine::attemptBreakpointSynchronization() } } } + + handler->updateMarkers(); } @@ -2075,13 +2073,13 @@ void GdbEngine::loadSymbols(const QString &moduleName) { // FIXME: gdb does not understand quoted names here (tested with 6.8) postCommand(_("sharedlibrary ") + dotEscape(moduleName)); - reloadModules(); + reloadModulesInternal(); } void GdbEngine::loadAllSymbols() { postCommand(_("sharedlibrary .*")); - reloadModules(); + reloadModulesInternal(); } QList GdbEngine::moduleSymbols(const QString &moduleName) @@ -2119,9 +2117,15 @@ QList GdbEngine::moduleSymbols(const QString &moduleName) } void GdbEngine::reloadModules() +{ + if (state() == InferiorRunning || state() == InferiorStopped) + reloadModulesInternal(); +} + +void GdbEngine::reloadModulesInternal() { m_modulesListOutdated = false; - postCommand(_("info shared"), CB(handleModulesList)); + postCommand(_("info shared"), NeedsStop, CB(handleModulesList)); } void GdbEngine::handleModulesList(const GdbResponse &response) @@ -2178,10 +2182,18 @@ void GdbEngine::handleModulesList(const GdbResponse &response) ////////////////////////////////////////////////////////////////////// void GdbEngine::reloadSourceFiles() +{ + if ((state() == InferiorRunning || state() == InferiorStopped) + && !m_sourcesListUpdating) + reloadSourceFilesInternal(); +} + +void GdbEngine::reloadSourceFilesInternal() { m_sourcesListUpdating = true; m_sourcesListOutdated = false; postCommand(_("-file-list-exec-source-files"), NeedsStop, CB(handleQuerySources)); + postCommand(_("-break-list"), CB(handleBreakList)); } @@ -2245,7 +2257,7 @@ StackFrame GdbEngine::parseStackFrame(const GdbMi &frameMi, int level) frame.level = level; // We might want to fall back to "file" once we have a mapping which // is more complete than gdb's own ... - frame.file = QFile::decodeName(frameMi.findChild("fullname").data()); + frame.file = cleanupFullName(QFile::decodeName(frameMi.findChild("fullname").data())); frame.function = _(frameMi.findChild("func").data()); frame.from = _(frameMi.findChild("from").data()); frame.line = frameMi.findChild("line").data().toInt(); @@ -2770,15 +2782,13 @@ void GdbEngine::runDebuggingHelper(const WatchData &data0, bool dumpChildren) <<',' << addr << ',' << (dumpChildren ? "1" : "0") << ',' << extraArgs.join(QString(_c(','))) << ')'; - QVariant var; - var.setValue(data); - postCommand(cmd, WatchUpdate | EmbedToken, CB(handleDebuggingHelperValue1), var); + postCommand(cmd, WatchUpdate | EmbedToken); showStatusMessage(msgRetrievingWatchData(m_pendingRequests + 1), 10000); // retrieve response postCommand(_("p (char*)&qDumpOutBuffer"), WatchUpdate, - CB(handleDebuggingHelperValue2), var); + CB(handleDebuggingHelperValue2), qVariantFromValue(data)); } void GdbEngine::createGdbVariable(const WatchData &data) @@ -2854,6 +2864,7 @@ void GdbEngine::updateSubItem(const WatchData &data0) data1.exp = QLatin1String("(*(") + data.exp + QLatin1String("))"); data1.type = stripPointerType(data.type); data1.setValueNeeded(); + data1.setChildrenUnneeded(); insertData(data1); } return; @@ -3205,27 +3216,6 @@ void GdbEngine::handleDebuggingHelperSetup(const GdbResponse &response) } } -void GdbEngine::handleDebuggingHelperValue1(const GdbResponse &response) -{ - WatchData data = response.cookie.value(); - QTC_ASSERT(data.isValid(), return); - if (response.resultClass == GdbResultDone) { - // ignore this case, data will follow - } else { - QString msg = QString::fromLocal8Bit(response.data.findChild("msg").data()); -#ifdef QT_DEBUG - // Make debugging of dumpers easier - if (theDebuggerBoolSetting(DebugDebuggingHelpers) - && msg.startsWith(__("The program being debugged stopped while")) - && msg.contains(__("qDumpObjectData440"))) { - // Fake full stop - postCommand(_("p 3"), CB(handleStop2)); // dummy - return; - } -#endif - } -} - void GdbEngine::handleDebuggingHelperValue2(const GdbResponse &response) { WatchData data = response.cookie.value(); @@ -3394,10 +3384,11 @@ void GdbEngine::updateLocals(const QVariant &cookie) { m_pendingRequests = 0; if (isSynchroneous()) { + m_processedNames.clear(); manager()->watchHandler()->beginCycle(); m_toolTipExpression.clear(); QStringList expanded = m_manager->watchHandler()->expandedINames().toList(); - postCommand(_("bb %1 %2") + postCommand(_("-interpreter-exec console \"bb %1 %2\"") .arg(int(theDebuggerBoolSetting(UseDebuggingHelpers))) .arg(expanded.join(_(","))), CB(handleStackFrame)); @@ -3514,7 +3505,7 @@ void GdbEngine::handleStackListLocals(const GdbResponse &response) QMap seen; // If desired, retrieve list of uninitialized variables looking at // the current frame. This is invoked first time after a stop from - // handleStop2, which passes on the frame as cookie. The whole stack + // handleStop1, which passes on the frame as cookie. The whole stack // is not known at this point. QStringList uninitializedVariables; if (theDebuggerAction(UseCodeModel)->isChecked()) { @@ -4157,7 +4148,7 @@ bool GdbEngine::startGdb(const QStringList &args, const QString &gdb, const QStr m_gdbProc.start(location, gdbArgs); if (!m_gdbProc.waitForStarted()) { - const QString msg = tr("Unable to start gdb '%1': %2").arg(gdb, m_gdbProc.errorString()); + const QString msg = tr("Unable to start gdb '%1': %2").arg(location, m_gdbProc.errorString()); handleAdapterStartFailed(msg, settingsIdHint); return false; } @@ -4175,7 +4166,8 @@ bool GdbEngine::startGdb(const QStringList &args, const QString &gdb, const QStr debugMessage(_("GDB STARTED, INITIALIZING IT")); postCommand(_("show version"), CB(handleShowVersion)); - postCommand(_("help bb"), CB(handleIsSynchroneous)); + postCommand(_("-interpreter-exec console \"help bb\""), + CB(handleIsSynchroneous)); //postCommand(_("-enable-timings"); postCommand(_("set print static-members off")); // Seemingly doesn't work. //postCommand(_("set debug infrun 1")); @@ -4269,7 +4261,7 @@ void GdbEngine::handleGdbError(QProcess::ProcessError error) case QProcess::WriteError: case QProcess::Timedout: default: - m_gdbProc.terminate(); + m_gdbProc.kill(); setState(EngineShuttingDown, true); showMessageBox(QMessageBox::Critical, tr("Gdb I/O Error"), errorMessage(error)); @@ -4342,6 +4334,8 @@ void GdbEngine::startInferiorPhase2() void GdbEngine::handleInferiorStartFailed(const QString &msg) { + if (state() == AdapterStartFailed) + return; // Adapter crashed meanwhile, so this notification is meaningless. debugMessage(_("INFERIOR START FAILED")); showMessageBox(QMessageBox::Critical, tr("Inferior start failed"), msg); setState(InferiorStartFailed); @@ -4360,7 +4354,7 @@ void GdbEngine::handleAdapterCrashed(const QString &msg) setState(AdapterStartFailed, true); // No point in being friendly here ... - m_gdbProc.terminate(); + m_gdbProc.kill(); if (!msg.isEmpty()) showMessageBox(QMessageBox::Critical, tr("Adapter crashed"), msg); diff --git a/src/plugins/debugger/gdb/gdbengine.h b/src/plugins/debugger/gdb/gdbengine.h index 9e23fee2b2e..c9e20eae299 100644 --- a/src/plugins/debugger/gdb/gdbengine.h +++ b/src/plugins/debugger/gdb/gdbengine.h @@ -160,6 +160,7 @@ private: QTextCodec::ConverterState m_outputCodecState; QByteArray m_inbuffer; + bool m_busy; QProcess m_gdbProc; AbstractGdbAdapter *m_gdbAdapter; @@ -251,8 +252,6 @@ private: ////////// Gdb Output, State & Capability Handling ////////// void handleResultRecord(GdbResponse *response); void handleStop1(const GdbResponse &response); void handleStop1(const GdbMi &data); - void handleStop2(const GdbResponse &response); - void handleStop2(const GdbMi &data); StackFrame parseStackFrame(const GdbMi &mi, int level); virtual bool isSynchroneous() const; @@ -271,7 +270,6 @@ private: ////////// Inferior Management ////////// // This should be always the last call in a function. Q_SLOT virtual void attemptBreakpointSynchronization(); - void attemptBreakpointSynchronization2(const GdbResponse &); virtual void stepExec(); virtual void stepOutExec(); @@ -323,7 +321,8 @@ private: ////////// View & Data Stuff ////////// virtual void loadSymbols(const QString &moduleName); virtual void loadAllSymbols(); virtual QList moduleSymbols(const QString &moduleName); - void reloadModules(); + virtual void reloadModules(); + void reloadModulesInternal(); void handleModulesList(const GdbResponse &response); bool m_modulesListOutdated; @@ -331,8 +330,8 @@ private: ////////// View & Data Stuff ////////// // // Register specific stuff // - Q_SLOT void reloadRegisters(); - void setRegisterValue(int nr, const QString &value); + Q_SLOT virtual void reloadRegisters(); + virtual void setRegisterValue(int nr, const QString &value); void handleRegisterListNames(const GdbResponse &response); void handleRegisterListValues(const GdbResponse &response); @@ -351,10 +350,16 @@ private: ////////// View & Data Stuff ////////// // // Source file specific stuff // - void reloadSourceFiles(); + virtual void reloadSourceFiles(); + void reloadSourceFilesInternal(); void handleQuerySources(const GdbResponse &response); QString fullName(const QString &fileName); +#ifdef Q_OS_WIN + QString cleanupFullName(const QString &fileName); +#else + QString cleanupFullName(const QString &fileName) { return fileName; } +#endif // awful hack to keep track of used files QMap m_shortToFullName; @@ -372,7 +377,7 @@ private: ////////// View & Data Stuff ////////// void handleStackListThreads(const GdbResponse &response); void handleStackFrame(const GdbResponse &response); Q_SLOT void reloadStack(bool forceGotoLocation); - Q_SLOT void reloadFullStack(); + Q_SLOT virtual void reloadFullStack(); int currentFrame() const; QList m_currentFunctionArgs; @@ -396,7 +401,7 @@ private: ////////// View & Data Stuff ////////// void handleChildren(const WatchData &parent, const GdbMi &child, QList *insertions); - void updateWatchData(const WatchData &data); + void virtual updateWatchData(const WatchData &data); Q_SLOT void updateWatchDataHelper(const WatchData &data); void rebuildModel(); bool showToolTip(); @@ -417,7 +422,6 @@ private: ////////// View & Data Stuff ////////// void handleEvaluateExpression(const GdbResponse &response); //void handleToolTip(const GdbResponse &response); void handleQueryDebuggingHelper(const GdbResponse &response); - void handleDebuggingHelperValue1(const GdbResponse &response); void handleDebuggingHelperValue2(const GdbResponse &response); void handleDebuggingHelperValue3(const GdbResponse &response); void handleDebuggingHelperEditValue(const GdbResponse &response); diff --git a/src/plugins/debugger/gdb/plaingdbadapter.cpp b/src/plugins/debugger/gdb/plaingdbadapter.cpp index 9eb4da18b77..342b89ce3a5 100644 --- a/src/plugins/debugger/gdb/plaingdbadapter.cpp +++ b/src/plugins/debugger/gdb/plaingdbadapter.cpp @@ -132,7 +132,6 @@ void PlainGdbAdapter::handleExecRun(const GdbResponse &response) void PlainGdbAdapter::interruptInferior() { - debugMessage(_("TRYING TO INTERUPT INFERIOR")); const qint64 attachedPID = m_engine->inferiorPid(); if (attachedPID <= 0) { debugMessage(_("TRYING TO INTERRUPT INFERIOR BEFORE PID WAS OBTAINED")); diff --git a/src/plugins/debugger/gdb/termgdbadapter.cpp b/src/plugins/debugger/gdb/termgdbadapter.cpp index 5c6d070eddc..fbdc6a6dd84 100644 --- a/src/plugins/debugger/gdb/termgdbadapter.cpp +++ b/src/plugins/debugger/gdb/termgdbadapter.cpp @@ -131,8 +131,8 @@ void TermGdbAdapter::startInferiorPhase2() void TermGdbAdapter::interruptInferior() { - debugMessage(_("TRYING TO INTERUPT INFERIOR")); const qint64 attachedPID = m_engine->inferiorPid(); + QTC_ASSERT(attachedPID > 0, return); if (!interruptProcess(attachedPID)) debugMessage(_("CANNOT INTERRUPT %1").arg(attachedPID)); } diff --git a/src/plugins/debugger/gdb/trkgdbadapter.cpp b/src/plugins/debugger/gdb/trkgdbadapter.cpp index bf23a09eab5..82ce54376bd 100644 --- a/src/plugins/debugger/gdb/trkgdbadapter.cpp +++ b/src/plugins/debugger/gdb/trkgdbadapter.cpp @@ -757,17 +757,21 @@ void TrkGdbAdapter::handleGdbServerCommand(const QByteArray &cmd) // http://sourceware.org/ml/gdb/2007-05/msg00038.html // Name=hexname,TextSeg=textaddr[,DataSeg=dataaddr] sendGdbServerAck(); - QByteArray response = "m"; - // FIXME: Limit packet length by using qsDllInfo packages? - for (int i = 0; i != m_session.libraries.size(); ++i) { - if (i) - response += ';'; - const Library &lib = m_session.libraries.at(i); - response += "Name=" + lib.name.toHex() - + ",TextSeg=" + hexNumber(lib.codeseg) - + ",DataSeg=" + hexNumber(lib.dataseg); + if (!m_session.libraries.isEmpty()) { + QByteArray response = "m"; + // FIXME: Limit packet length by using qsDllInfo packages? + for (int i = 0; i != m_session.libraries.size(); ++i) { + if (i) + response += ';'; + const Library &lib = m_session.libraries.at(i); + response += "Name=" + lib.name.toHex() + + ",TextSeg=" + hexNumber(lib.codeseg) + + ",DataSeg=" + hexNumber(lib.dataseg); + } + sendGdbServerMessage(response, "library information transfered"); + } else { + sendGdbServerMessage("l", "library information transfer finished"); } - sendGdbServerMessage(response, "library information transfered"); } else if (cmd == "qsDllInfo") { @@ -1109,7 +1113,7 @@ void TrkGdbAdapter::handleCpuType(const TrkResult &result) void TrkGdbAdapter::handleDeleteProcess(const TrkResult &result) { Q_UNUSED(result); - logMessage("TRK Process killed"); + logMessage("Inferior process killed"); //sendTrkMessage(0x01, TrkCB(handleDeleteProcess2)); // Ping sendTrkMessage(0x02, TrkCB(handleDeleteProcess2)); // Disconnect } @@ -1117,7 +1121,7 @@ void TrkGdbAdapter::handleDeleteProcess(const TrkResult &result) void TrkGdbAdapter::handleDeleteProcess2(const TrkResult &result) { Q_UNUSED(result); - logMessage("process killed"); + logMessage("App TRK disconnected"); sendGdbServerAck(); sendGdbServerMessage("", "process killed"); } @@ -1452,9 +1456,9 @@ void TrkGdbAdapter::handleTrkVersionsStartGdb(const TrkResult &result) QTextStream str(&logMsg); str << "Versions: "; if (result.data.size() >= 5) { - str << "Trk version " << int(result.data.at(1)) << '.' + str << "App TRK version " << int(result.data.at(1)) << '.' << int(result.data.at(2)) - << ", Protocol version " << int(result.data.at(3)) + << ", TRK protocol version " << int(result.data.at(3)) << '.' << int(result.data.at(4)); } logMessage(logMsg); @@ -1469,7 +1473,7 @@ void TrkGdbAdapter::handleTrkVersionsStartGdb(const TrkResult &result) void TrkGdbAdapter::handleDisconnect(const TrkResult & /*result*/) { - logMessage(QLatin1String("Trk disconnected")); + logMessage(QLatin1String("App TRK disconnected")); } void TrkGdbAdapter::readMemory(uint addr, uint len, bool buffered) @@ -1614,7 +1618,7 @@ void TrkGdbAdapter::handleTargetRemote(const GdbResponse &record) if (record.resultClass == GdbResultDone) { emit inferiorPrepared(); } else { - QString msg = tr("Connecting to trk server adapter failed:\n") + QString msg = tr("Connecting to TRK server adapter failed:\n") + _(record.data.findChild("msg").data()); emit inferiorStartFailed(msg); } diff --git a/src/plugins/debugger/gdb/trkoptionspage.cpp b/src/plugins/debugger/gdb/trkoptionspage.cpp index 98b103b8d78..1a7c8a91c96 100644 --- a/src/plugins/debugger/gdb/trkoptionspage.cpp +++ b/src/plugins/debugger/gdb/trkoptionspage.cpp @@ -40,7 +40,7 @@ namespace Debugger { namespace Internal { -const char * const TRK_SETTINGS_ID = QT_TRANSLATE_NOOP("Debugger::Internal::TrkOptionsPage", "Symbian Trk"); +const char * const TRK_SETTINGS_ID = QT_TRANSLATE_NOOP("Debugger::Internal::TrkOptionsPage", "Symbian TRK"); TrkOptionsPage::TrkOptionsPage(const TrkOptionsPtr &options) : m_options(options) diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index ba7c24ff04f..4819753fd37 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -31,6 +31,7 @@ #include "watchutils.h" #include "debuggeractions.h" #include "debuggermanager.h" +#include "idebuggerengine.h" #if USE_MODEL_TEST #include "modeltest.h" @@ -1125,7 +1126,18 @@ void WatchHandler::insertData(const WatchData &data) } if (data.isSomethingNeeded() && data.iname.contains('.')) { MODEL_DEBUG("SOMETHING NEEDED: " << data.toString()); - m_manager->updateWatchData(data); + if (!m_manager->currentEngine()->isSynchroneous()) { + m_manager->updateWatchData(data); + } else { + qDebug() << "ENDLESS LOOP: SOMETHING NEEDED: " << data.toString(); + WatchData data1 = data; + data1.setAllUnneeded(); + data1.setValue(QLatin1String("")); + data1.setHasChildren(false); + WatchModel *model = modelForIName(data.iname); + QTC_ASSERT(model, return); + model->insertData(data1); + } } else { WatchModel *model = modelForIName(data.iname); QTC_ASSERT(model, return); diff --git a/src/plugins/find/findplugin.cpp b/src/plugins/find/findplugin.cpp index 95327a29b24..03a51a94a9d 100644 --- a/src/plugins/find/findplugin.cpp +++ b/src/plugins/find/findplugin.cpp @@ -191,7 +191,7 @@ void FindPlugin::setupFilterMenuItems() haveEnabledFilters = true; action->setEnabled(isEnabled); action->setData(qVariantFromValue(filter)); - cmd = am->registerAction(action, QLatin1String("FindFilter.")+filter->name(), globalcontext); + cmd = am->registerAction(action, QLatin1String("FindFilter.")+filter->id(), globalcontext); cmd->setDefaultKeySequence(filter->defaultShortcut()); mfind->addAction(cmd, Constants::G_FIND_FILTERS); m_filterActions.insert(filter, action); diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp index a5aed6fe1fb..6a57c583e07 100644 --- a/src/plugins/help/helpplugin.cpp +++ b/src/plugins/help/helpplugin.cpp @@ -449,7 +449,7 @@ QHelpEngine* HelpPlugin::helpEngine() const void HelpPlugin::createRightPaneSideBar() { - QAction *switchToHelpMode = new QAction("Go to Help Mode", this); + QAction *switchToHelpMode = new QAction(tr("Go to Help Mode"), this); m_rightPaneBackwardAction = new QAction(QIcon(QLatin1String(":/help/images/previous.png")), tr("Previous"), this); diff --git a/src/plugins/projectexplorer/applicationlauncher_x11.cpp b/src/plugins/projectexplorer/applicationlauncher_x11.cpp index f4a0bb018a4..d5e18092225 100644 --- a/src/plugins/projectexplorer/applicationlauncher_x11.cpp +++ b/src/plugins/projectexplorer/applicationlauncher_x11.cpp @@ -87,7 +87,10 @@ void ApplicationLauncher::stop() { if (m_currentMode == Gui) { m_guiProcess->terminate(); - m_guiProcess->waitForFinished(); + if (!m_guiProcess->waitForFinished(1000)) { // This is blocking, so be fast. + m_guiProcess->kill(); + m_guiProcess->waitForFinished(); + } } else { m_consoleProcess->stop(); } diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp index 3b67ab18856..e319388f8bf 100644 --- a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp @@ -35,6 +35,7 @@ #include #include +#include #include #include @@ -151,23 +152,30 @@ BuildSettingsWidget::BuildSettingsWidget(Project *project) { QVBoxLayout *vbox = new QVBoxLayout(this); vbox->setContentsMargins(0, -1, 0, -1); - QHBoxLayout *hbox = new QHBoxLayout(); - hbox->addWidget(new QLabel(tr("Edit Build Configuration:"), this)); - m_buildConfigurationComboBox = new QComboBox(this); - m_buildConfigurationComboBox->setSizeAdjustPolicy(QComboBox::AdjustToContents); - hbox->addWidget(m_buildConfigurationComboBox); - m_addButton = new QPushButton(this); - m_addButton->setText(tr("Add")); - m_addButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); - hbox->addWidget(m_addButton); + { // Edit Build Configuration row + QHBoxLayout *hbox = new QHBoxLayout(); + hbox->addWidget(new QLabel(tr("Edit Build Configuration:"), this)); + m_buildConfigurationComboBox = new QComboBox(this); + m_buildConfigurationComboBox->setSizeAdjustPolicy(QComboBox::AdjustToContents); + hbox->addWidget(m_buildConfigurationComboBox); - m_removeButton = new QPushButton(this); - m_removeButton->setText(tr("Remove")); - m_removeButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); - hbox->addWidget(m_removeButton); - hbox->addSpacerItem(new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Fixed)); - vbox->addLayout(hbox); + m_addButton = new QPushButton(this); + m_addButton->setText(tr("Add")); + m_addButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); + hbox->addWidget(m_addButton); + + m_removeButton = new QPushButton(this); + m_removeButton->setText(tr("Remove")); + m_removeButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); + hbox->addWidget(m_removeButton); + hbox->addSpacerItem(new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Fixed)); + vbox->addLayout(hbox); + } + + m_makeActiveLabel = new QLabel(this); + m_makeActiveLabel->setVisible(false); + vbox->addWidget(m_makeActiveLabel); m_subWidgets = new BuildSettingsSubWidgets(this); vbox->addWidget(m_subWidgets); @@ -178,6 +186,9 @@ BuildSettingsWidget::BuildSettingsWidget(Project *project) m_buildConfiguration = m_project->activeBuildConfiguration()->name(); + connect(m_makeActiveLabel, SIGNAL(linkActivated(QString)), + this, SLOT(makeActive())); + connect(m_buildConfigurationComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(currentIndexChanged(int))); @@ -186,12 +197,21 @@ BuildSettingsWidget::BuildSettingsWidget(Project *project) connect(m_project, SIGNAL(buildConfigurationDisplayNameChanged(const QString &)), this, SLOT(buildConfigurationDisplayNameChanged(const QString &))); + + connect(m_project, SIGNAL(activeBuildConfigurationChanged()), + this, SLOT(checkMakeActiveLabel())); + if (m_project->buildConfigurationFactory()) connect(m_project->buildConfigurationFactory(), SIGNAL(availableCreationTypesChanged()), SLOT(updateAddButtonMenu())); updateBuildSettings(); } +void BuildSettingsWidget::makeActive() +{ + m_project->setActiveBuildConfiguration(m_project->buildConfiguration(m_buildConfiguration)); +} + void BuildSettingsWidget::updateAddButtonMenu() { m_addButtonMenu->clear(); @@ -273,6 +293,18 @@ void BuildSettingsWidget::activeBuildConfigurationChanged() buildStepWidget->init(m_buildConfiguration); } } + checkMakeActiveLabel(); +} + +void BuildSettingsWidget::checkMakeActiveLabel() +{ + m_makeActiveLabel->setVisible(false); + if (!m_project->activeBuildConfiguration() || m_project->activeBuildConfiguration()->name() != m_buildConfiguration) { + BuildConfiguration *bc = m_project->buildConfiguration(m_buildConfiguration); + QTC_ASSERT(bc, return); + m_makeActiveLabel->setText(tr("Make %1 active.").arg(bc->displayName())); + m_makeActiveLabel->setVisible(true); + } } void BuildSettingsWidget::createConfiguration() diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.h b/src/plugins/projectexplorer/buildsettingspropertiespage.h index f80b6b73265..583835ecfc8 100644 --- a/src/plugins/projectexplorer/buildsettingspropertiespage.h +++ b/src/plugins/projectexplorer/buildsettingspropertiespage.h @@ -101,6 +101,8 @@ private slots: void cloneConfiguration(); void deleteConfiguration(); void updateAddButtonMenu(); + void checkMakeActiveLabel(); + void makeActive(); private: void cloneConfiguration(const QString &toClone); @@ -113,6 +115,7 @@ private: BuildSettingsSubWidgets *m_subWidgets; QString m_buildConfiguration; QMenu *m_addButtonMenu; + QLabel *m_makeActiveLabel; }; } // namespace Internal diff --git a/src/plugins/projectexplorer/project.h b/src/plugins/projectexplorer/project.h index 2740b17e498..cd286ae78c0 100644 --- a/src/plugins/projectexplorer/project.h +++ b/src/plugins/projectexplorer/project.h @@ -144,6 +144,7 @@ public: static QString makeUnique(const QString &preferedName, const QStringList &usedNames); signals: void fileListChanged(); + void buildDirectoryChanged(); // TODO clean up signal names // might be better to also have diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index 887a77e764b..b29a76a7d3e 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -98,6 +98,7 @@ #include #include #include +#include Q_DECLARE_METATYPE(QSharedPointer); Q_DECLARE_METATYPE(Core::IEditorFactory*); @@ -1546,6 +1547,10 @@ void ProjectExplorerPlugin::runProjectImpl(Project *pro) return; if (d->m_projectExplorerSettings.buildBeforeRun && pro->hasBuildSettings()) { + if (!pro->activeRunConfiguration()->isEnabled()) { + if (!showBuildConfigDialog()) + return; + } if (saveModifiedFiles()) { d->m_runMode = ProjectExplorer::Constants::RUNMODE; d->m_delayedRunConfiguration = pro->activeRunConfiguration(); @@ -1565,6 +1570,10 @@ void ProjectExplorerPlugin::debugProject() return; if (d->m_projectExplorerSettings.buildBeforeRun && pro->hasBuildSettings()) { + if (!pro->activeRunConfiguration()->isEnabled()) { + if (!showBuildConfigDialog()) + return; + } if (saveModifiedFiles()) { d->m_runMode = ProjectExplorer::Constants::DEBUGMODE; d->m_delayedRunConfiguration = pro->activeRunConfiguration(); @@ -1579,6 +1588,31 @@ void ProjectExplorerPlugin::debugProject() } } +bool ProjectExplorerPlugin::showBuildConfigDialog() +{ + Project *pro = startupProject(); + BuildConfigDialog *dialog = new BuildConfigDialog(pro, + Core::ICore::instance()->mainWindow()); + dialog->exec(); + BuildConfiguration *otherConfig = dialog->selectedBuildConfiguration(); + int result = dialog->result(); + dialog->deleteLater(); + switch (result) { + case BuildConfigDialog::ChangeBuild: + if (otherConfig) { + pro->setActiveBuildConfiguration(otherConfig); + return true; + } + return false; + case BuildConfigDialog::Cancel: + return false; + case BuildConfigDialog::Continue: + return true; + default: + return false; + } +} + void ProjectExplorerPlugin::addToApplicationOutputWindow(RunControl *rc, const QString &line) { d->m_outputPane->appendOutput(rc, line); @@ -2100,4 +2134,79 @@ Internal::ProjectExplorerSettings ProjectExplorerPlugin::projectExplorerSettings return d->m_projectExplorerSettings; } +// ---------- BuildConfigDialog ----------- +Q_DECLARE_METATYPE(BuildConfiguration*); + +BuildConfigDialog::BuildConfigDialog(Project *project, QWidget *parent) + : QDialog(parent), + m_project(project) +{ + QVBoxLayout *vlayout = new QVBoxLayout; + setLayout(vlayout); + QDialogButtonBox *buttonBox = new QDialogButtonBox; + m_changeBuildConfiguration = buttonBox->addButton(tr("Change build configuration && continue"), + QDialogButtonBox::ActionRole); + m_cancel = buttonBox->addButton(tr("Cancel"), + QDialogButtonBox::RejectRole); + m_justContinue = buttonBox->addButton(tr("Continue anyway"), + QDialogButtonBox::AcceptRole); + connect(m_changeBuildConfiguration, SIGNAL(clicked()), this, SLOT(buttonClicked())); + connect(m_cancel, SIGNAL(clicked()), this, SLOT(buttonClicked())); + connect(m_justContinue, SIGNAL(clicked()), this, SLOT(buttonClicked())); + setWindowTitle(tr("Run configuration doesn't match build configuration")); + QLabel *shortText = new QLabel(tr( + "The active build configuration builds a target " + "that cannot be used by the active run configuration." + )); + vlayout->addWidget(shortText); + QLabel *descriptiveText = new QLabel(tr( + "This can happen if the active build configuration " + "uses the wrong Qt version and/or tool chain for the active run configuration " + "(e.g. running in Symbian emulator requires building with WINSCW tool chain)." + )); + descriptiveText->setWordWrap(true); + vlayout->addWidget(descriptiveText); + QHBoxLayout *hlayout = new QHBoxLayout; + hlayout->addWidget(new QLabel(tr("Choose build configuration:"))); + m_configCombo = new QComboBox; + QSharedPointer activeRun = m_project->activeRunConfiguration(); + foreach (BuildConfiguration *config, m_project->buildConfigurations()) { + if (activeRun->isEnabled(config)) { + m_configCombo->addItem(config->name(), qVariantFromValue(config)); + } + } + if (m_configCombo->count() == 0) { + m_configCombo->addItem(tr("No valid build configuration found.")); + m_configCombo->setEnabled(false); + m_changeBuildConfiguration->setEnabled(false); + } + + + hlayout->addWidget(m_configCombo); + hlayout->addStretch(10); + vlayout->addLayout(hlayout); + vlayout->addWidget(buttonBox); + m_cancel->setDefault(true); +} + +BuildConfiguration *BuildConfigDialog::selectedBuildConfiguration() const +{ + int index = m_configCombo->currentIndex(); + if (index < 0) + return 0; + return m_configCombo->itemData(index, Qt::UserRole).value(); +} + +void BuildConfigDialog::buttonClicked() +{ + QPushButton *button = qobject_cast(sender()); + if (button == m_changeBuildConfiguration) { + done(ChangeBuild); + } else if (button == m_cancel) { + done(Cancel); + } else if (button == m_justContinue) { + done(Continue); + } +} + Q_EXPORT_PLUGIN(ProjectExplorerPlugin) diff --git a/src/plugins/projectexplorer/projectexplorer.h b/src/plugins/projectexplorer/projectexplorer.h index d4fe9dd13e7..1077ad2d36c 100644 --- a/src/plugins/projectexplorer/projectexplorer.h +++ b/src/plugins/projectexplorer/projectexplorer.h @@ -35,10 +35,12 @@ #include #include +#include QT_BEGIN_NAMESPACE class QPoint; class QAction; +class QComboBox; QT_END_NAMESPACE namespace Core { @@ -59,10 +61,36 @@ class RunConfiguration; class IRunControlFactory; class Project; class Node; +class BuildConfiguration; namespace Internal { class ProjectFileFactory; struct ProjectExplorerSettings; + +class BuildConfigDialog : public QDialog +{ + Q_OBJECT +public: + enum DialogResult { + ChangeBuild = 10, + Cancel = 11, + Continue = 12 + }; + BuildConfigDialog(Project *project, QWidget *parent = 0); + + BuildConfiguration *selectedBuildConfiguration() const; + +private slots: + void buttonClicked(); + +private: + Project *m_project; + QPushButton *m_changeBuildConfiguration; + QPushButton *m_cancel; + QPushButton *m_justContinue; + QComboBox *m_configCombo; +}; + } // namespace Internal struct ProjectExplorerPluginPrivate; @@ -189,7 +217,7 @@ private slots: private: void runProjectImpl(Project *pro); void executeRunConfiguration(const QSharedPointer &, const QString &mode); - + bool showBuildConfigDialog(); void setCurrent(Project *project, QString filePath, Node *node); QStringList allFilesWithDependencies(Project *pro); diff --git a/src/plugins/projectexplorer/projectwelcomepage.h b/src/plugins/projectexplorer/projectwelcomepage.h index f769c87c8b3..a3dc97942b3 100644 --- a/src/plugins/projectexplorer/projectwelcomepage.h +++ b/src/plugins/projectexplorer/projectwelcomepage.h @@ -30,14 +30,14 @@ #ifndef PROJECTWELCOMEPAGE_H #define PROJECTWELCOMEPAGE_H -#include +#include namespace ProjectExplorer { namespace Internal { class ProjectWelcomePageWidget; -class ProjectWelcomePage : public ExtensionSystem::IWelcomePage +class ProjectWelcomePage : public Utils::IWelcomePage { Q_OBJECT public: diff --git a/src/plugins/projectexplorer/projectwelcomepagewidget.cpp b/src/plugins/projectexplorer/projectwelcomepagewidget.cpp index 4df5f9c9a57..168d852443d 100644 --- a/src/plugins/projectexplorer/projectwelcomepagewidget.cpp +++ b/src/plugins/projectexplorer/projectwelcomepagewidget.cpp @@ -106,8 +106,13 @@ void ProjectWelcomePageWidget::updateWelcomePage(const WelcomePageData &welcomeP if (welcomePageData.sessionList.count() > 0) { foreach (const QString &s, welcomePageData.sessionList) { QString str = s; - if (s == welcomePageData.previousSession) - str = tr("%1 (last session)").arg(s); + if (welcomePageData.activeSession.isEmpty()) { + if (s == welcomePageData.previousSession) + str = tr("%1 (last session)").arg(s); + } else { + if (s == welcomePageData.activeSession) + str = tr("%1 (current session)").arg(s); + } ui->sessTreeWidget->addItem(str, s); } ui->sessTreeWidget->updateGeometry(); @@ -120,7 +125,8 @@ void ProjectWelcomePageWidget::updateWelcomePage(const WelcomePageData &welcomeP if (welcomePageData.projectList.count() > 0) { foreach (const QStringPair &it, welcomePageData.projectList) { const QFileInfo fi(it.first); - QTreeWidgetItem *item = ui->projTreeWidget->addItem(it.second, it.first, fi.absolutePath()); + ui->projTreeWidget->addItem(it.second, it.first, + QDir::toNativeSeparators(fi.absolutePath())); } } else { ui->projTreeWidget->hide(); diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp index c9765ad5cd5..6aa8ea34de8 100644 --- a/src/plugins/projectexplorer/runconfiguration.cpp +++ b/src/plugins/projectexplorer/runconfiguration.cpp @@ -30,6 +30,7 @@ #include "runconfiguration.h" #include "project.h" #include "persistentsettings.h" +#include "buildconfiguration.h" #include @@ -56,6 +57,15 @@ Project *RunConfiguration::project() const return m_project.data(); } +bool RunConfiguration::isEnabled() const +{ + if (!m_project) + return false; + if (!m_project->activeBuildConfiguration()) + return false; + return isEnabled(m_project->activeBuildConfiguration()); +} + QString RunConfiguration::name() const { return m_name; diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h index 07f1ad79561..d775856cd77 100644 --- a/src/plugins/projectexplorer/runconfiguration.h +++ b/src/plugins/projectexplorer/runconfiguration.h @@ -49,6 +49,7 @@ class PersistentSettingsReader; class PersistentSettingsWriter; class RunControl; +class BuildConfiguration; /* Base class for a run configuration. A run configuration specifies how a * project should be run, while the runner (see below) does the actual running. @@ -75,7 +76,8 @@ public: QString name() const; void setName(const QString &name); - virtual bool isEnabled() const { return true; } + virtual bool isEnabled(BuildConfiguration *) const { return true; } + bool isEnabled() const; // Returns the widget used to configure this run configuration. Ownership is transferred to the caller // rename to createConfigurationWidget diff --git a/src/plugins/projectexplorer/runsettingspropertiespage.cpp b/src/plugins/projectexplorer/runsettingspropertiespage.cpp index 29de584b162..03b38082614 100644 --- a/src/plugins/projectexplorer/runsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/runsettingspropertiespage.cpp @@ -185,6 +185,10 @@ RunSettingsWidget::RunSettingsWidget(Project *project) m_ui->removeToolButton->setText(tr("Remove")); m_ui->runConfigurationCombo->setModel(m_runConfigurationsModel); + m_makeActiveLabel = new QLabel(this); + m_makeActiveLabel->setVisible(false); + layout()->addWidget(m_makeActiveLabel); + connect(m_addMenu, SIGNAL(aboutToShow()), this, SLOT(aboutToShowAddMenu())); connect(m_ui->runConfigurationCombo, SIGNAL(currentIndexChanged(int)), @@ -197,6 +201,12 @@ RunSettingsWidget::RunSettingsWidget(Project *project) connect(m_project, SIGNAL(addedRunConfiguration(ProjectExplorer::Project *, QString)), this, SLOT(initRunConfigurationComboBox())); + connect(m_project, SIGNAL(activeRunConfigurationChanged()), + this, SLOT(updateMakeActiveLabel())); + + connect(m_makeActiveLabel, SIGNAL(linkActivated(QString)), + this, SLOT(makeActive())); + initRunConfigurationComboBox(); const QList > runConfigurations = m_project->runConfigurations(); for (int i=0; irunConfigurationCombo->setCurrentIndex(runConfigurations.indexOf(currentSelection)); else m_ui->runConfigurationCombo->setCurrentIndex(runConfigurations.indexOf(activeRunConfiguration)); - QList > enabledRunConfigurations; - for (int i = 0; i < runConfigurations.size(); ++i) { - if (runConfigurations.at(i)->isEnabled()) - enabledRunConfigurations.append(runConfigurations.at(i)); - } m_ui->removeToolButton->setEnabled(runConfigurations.size() > 1); + updateMakeActiveLabel(); } void RunSettingsWidget::showRunConfigurationWidget(int index) @@ -296,10 +302,39 @@ void RunSettingsWidget::showRunConfigurationWidget(int index) delete m_runConfigurationWidget; m_runConfigurationWidget = selectedRunConfiguration->configurationWidget(); layout()->addWidget(m_runConfigurationWidget); + updateMakeActiveLabel(); +} + +void RunSettingsWidget::updateMakeActiveLabel() +{ + m_makeActiveLabel->setVisible(false); + QSharedPointer rc = QSharedPointer(0); + int index = m_ui->runConfigurationCombo->currentIndex(); + if (index != -1) { + rc = m_runConfigurationsModel->runConfigurations().at(index); + } + if (rc) { + if (m_project->activeRunConfiguration() != rc) { + m_makeActiveLabel->setText(tr("Make %1 active.").arg(rc->name())); + m_makeActiveLabel->setVisible(true); + } + } +} + +void RunSettingsWidget::makeActive() +{ + QSharedPointer rc = QSharedPointer(0); + int index = m_ui->runConfigurationCombo->currentIndex(); + if (index != -1) { + rc = m_runConfigurationsModel->runConfigurations().at(index); + } + if (rc) + m_project->setActiveRunConfiguration(rc); } void RunSettingsWidget::nameChanged() { RunConfiguration *rc = qobject_cast(sender()); m_runConfigurationsModel->nameChanged(rc); + updateMakeActiveLabel(); } diff --git a/src/plugins/projectexplorer/runsettingspropertiespage.h b/src/plugins/projectexplorer/runsettingspropertiespage.h index 17f2d0cd503..ed497f776de 100644 --- a/src/plugins/projectexplorer/runsettingspropertiespage.h +++ b/src/plugins/projectexplorer/runsettingspropertiespage.h @@ -36,6 +36,7 @@ QT_BEGIN_NAMESPACE class QMenu; +class QLabel; QT_END_NAMESPACE namespace ProjectExplorer { @@ -82,10 +83,13 @@ private slots: void removeRunConfiguration(); void nameChanged(); void initRunConfigurationComboBox(); + void updateMakeActiveLabel(); + void makeActive(); private: Project *m_project; RunConfigurationsModel *m_runConfigurationsModel; Ui::RunSettingsPropertiesPage *m_ui; + QLabel *m_makeActiveLabel; QWidget *m_runConfigurationWidget; QMenu *m_addMenu; }; diff --git a/src/plugins/qmleditor/parser/qmljs.g b/src/plugins/qmleditor/parser/qmljs.g index eb9a8abcfdc..c5b2764cda5 100644 --- a/src/plugins/qmleditor/parser/qmljs.g +++ b/src/plugins/qmleditor/parser/qmljs.g @@ -2949,7 +2949,7 @@ PropertyNameAndValueListOpt: PropertyNameAndValueList ; const int errorState = state_stack[tos]; // automatic insertion of `;' - if (t_action(errorState, T_AUTOMATIC_SEMICOLON) && automatic(driver, yytoken)) { + if (yytoken != -1 && t_action(errorState, T_AUTOMATIC_SEMICOLON) && automatic(driver, yytoken)) { SavedToken &tk = token_buffer[0]; tk.token = yytoken; tk.dval = yylval; diff --git a/src/plugins/qmleditor/parser/qmljsgrammar.cpp b/src/plugins/qmleditor/parser/qmljsgrammar.cpp index da3ce2a0770..2b92b8225bc 100644 --- a/src/plugins/qmleditor/parser/qmljsgrammar.cpp +++ b/src/plugins/qmleditor/parser/qmljsgrammar.cpp @@ -4,7 +4,7 @@ ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). ** Contact: Qt Software Information (qt-info@nokia.com) ** -** This file is part of the QtCore module of the Qt Toolkit. +** This file is part of the QtDeclarative module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** No Commercial Usage diff --git a/src/plugins/qmleditor/parser/qmljsgrammar_p.h b/src/plugins/qmleditor/parser/qmljsgrammar_p.h index b297f81cff5..20d7188f451 100644 --- a/src/plugins/qmleditor/parser/qmljsgrammar_p.h +++ b/src/plugins/qmleditor/parser/qmljsgrammar_p.h @@ -4,7 +4,7 @@ ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). ** Contact: Qt Software Information (qt-info@nokia.com) ** -** This file is part of the QtCore module of the Qt Toolkit. +** This file is part of the QtDeclarative module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** No Commercial Usage diff --git a/src/plugins/qmleditor/parser/qmljsparser.cpp b/src/plugins/qmleditor/parser/qmljsparser.cpp index 402aaeb3959..fb0080a08f0 100644 --- a/src/plugins/qmleditor/parser/qmljsparser.cpp +++ b/src/plugins/qmleditor/parser/qmljsparser.cpp @@ -1713,7 +1713,7 @@ case 337: { const int errorState = state_stack[tos]; // automatic insertion of `;' - if (t_action(errorState, T_AUTOMATIC_SEMICOLON) && automatic(driver, yytoken)) { + if (yytoken != -1 && t_action(errorState, T_AUTOMATIC_SEMICOLON) && automatic(driver, yytoken)) { SavedToken &tk = token_buffer[0]; tk.token = yytoken; tk.dval = yylval; @@ -1749,7 +1749,7 @@ case 337: { token_buffer[1].loc = yylloc = location(lexer); if (t_action(errorState, yytoken)) { - const QString msg = qApp->translate("QmlParser", "Unexpected token `%1'").arg(QLatin1String(spell[token_buffer[0].token])); + const QString msg = qApp->translate("QmlParser", "Unexpected token '%1'").arg(QLatin1String(spell[token_buffer[0].token])); diagnostic_messages.append(DiagnosticMessage(DiagnosticMessage::Error, token_buffer[0].loc, msg)); action = errorState; @@ -1777,7 +1777,7 @@ case 337: { for (int *tk = tokens; *tk != EOF_SYMBOL; ++tk) { int a = t_action(errorState, *tk); if (a > 0 && t_action(a, yytoken)) { - const QString msg = qApp->translate("QmlParser", "Expected token `%1'").arg(QLatin1String(spell[*tk])); + const QString msg = qApp->translate("QmlParser", "Expected token '%1'").arg(QLatin1String(spell[*tk])); diagnostic_messages.append(DiagnosticMessage(DiagnosticMessage::Error, token_buffer[0].loc, msg)); yytoken = *tk; @@ -1800,7 +1800,7 @@ case 337: { int a = t_action(errorState, tk); if (a > 0 && t_action(a, yytoken)) { - const QString msg = qApp->translate("QmlParser", "Expected token `%1'").arg(QLatin1String(spell[tk])); + const QString msg = qApp->translate("QmlParser", "Expected token '%1'").arg(QLatin1String(spell[tk])); diagnostic_messages.append(DiagnosticMessage(DiagnosticMessage::Error, token_buffer[0].loc, msg)); yytoken = tk; diff --git a/src/plugins/qt4projectmanager/gettingstartedwelcomepage.h b/src/plugins/qt4projectmanager/gettingstartedwelcomepage.h index b5f25701e3a..59203641a9c 100644 --- a/src/plugins/qt4projectmanager/gettingstartedwelcomepage.h +++ b/src/plugins/qt4projectmanager/gettingstartedwelcomepage.h @@ -30,14 +30,14 @@ #ifndef GETTINGSTARTEDWELCOMEPLUGIN_H #define GETTINGSTARTEDWELCOMEPLUGIN_H -#include +#include namespace Qt4ProjectManager { namespace Internal { class GettingStartedWelcomePageWidget; -class GettingStartedWelcomePage : public ExtensionSystem::IWelcomePage +class GettingStartedWelcomePage : public Utils::IWelcomePage { Q_OBJECT public: diff --git a/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp b/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp index a85023a2404..0a843c874c4 100644 --- a/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp +++ b/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp @@ -337,7 +337,8 @@ QStringList GettingStartedWelcomePageWidget::tipsOfTheDay() "target in the combo box.")); tips.append(tr("You can use Qt Creator with a number of " "revision control systems such as Subversion, Perforce, CVS and Git.")); - tips.append(tr("In the editor, F2 toggles declaration and definition while F4 toggles header file and source file.")); + tips.append(tr("In the editor, F2 follows symbol definition, Shift+F2 toggles declaration and definition " + "while F4 toggles header file and source file.")); } return tips; } diff --git a/src/plugins/qt4projectmanager/makestep.cpp b/src/plugins/qt4projectmanager/makestep.cpp index ad4882af48a..fdfdf64057e 100644 --- a/src/plugins/qt4projectmanager/makestep.cpp +++ b/src/plugins/qt4projectmanager/makestep.cpp @@ -62,14 +62,10 @@ bool MakeStep::init(const QString &name) Environment environment = project()->environment(bc); setEnvironment(name, environment); - QString workingDirectory; - if (bc->value("useShadowBuild").toBool()) - workingDirectory = bc->value("buildDirectory").toString(); - if (workingDirectory.isEmpty()) - workingDirectory = QFileInfo(project()->file()->fileName()).absolutePath(); + Qt4Project *qt4project = qobject_cast(project()); + QString workingDirectory = qt4project->buildDirectory(bc); setWorkingDirectory(name, workingDirectory); - Qt4Project *qt4project = qobject_cast(project()); QString makeCmd = qt4project->makeCommand(bc); if (!value(name, "makeCmd").toString().isEmpty()) makeCmd = value(name, "makeCmd").toString(); @@ -106,10 +102,10 @@ bool MakeStep::init(const QString &name) // but for now this is the least invasive change ProjectExplorer::ToolChain *toolchain = qt4project->toolChain(bc); - ProjectExplorer::ToolChain::ToolChainType t = ProjectExplorer::ToolChain::UNKNOWN; + ProjectExplorer::ToolChain::ToolChainType type = ProjectExplorer::ToolChain::UNKNOWN; if (toolchain) - t = toolchain->type(); - if (t != ProjectExplorer::ToolChain::MSVC && t != ProjectExplorer::ToolChain::WINCE) { + type = toolchain->type(); + if (type != ProjectExplorer::ToolChain::MSVC && type != ProjectExplorer::ToolChain::WINCE) { if (value(name, "makeCmd").toString().isEmpty()) args << "-w"; } @@ -117,8 +113,7 @@ bool MakeStep::init(const QString &name) setEnabled(name, true); setArguments(name, args); - ProjectExplorer::ToolChain::ToolChainType type = qt4project->toolChain(bc)->type(); - if ( type == ProjectExplorer::ToolChain::MSVC || type == ProjectExplorer::ToolChain::WINCE) + if (type == ProjectExplorer::ToolChain::MSVC || type == ProjectExplorer::ToolChain::WINCE) setBuildParser(ProjectExplorer::Constants::BUILD_PARSER_MSVC); else setBuildParser(ProjectExplorer::Constants::BUILD_PARSER_GCC); @@ -179,6 +174,9 @@ MakeStepConfigWidget::MakeStepConfigWidget(MakeStep *makeStep) connect(makeStep, SIGNAL(changed()), this, SLOT(update())); + connect(makeStep->project(), SIGNAL(buildDirectoryChanged()), + this, SLOT(updateDetails())); + connect(ProjectExplorer::ProjectExplorerPlugin::instance(), SIGNAL(settingsChanged()), this, SLOT(updateMakeOverrideLabel())); connect(ProjectExplorer::ProjectExplorerPlugin::instance(), SIGNAL(settingsChanged()), @@ -194,14 +192,9 @@ void MakeStepConfigWidget::updateMakeOverrideLabel() void MakeStepConfigWidget::updateDetails() { - // TODO reduce heavy code duplication - QString workingDirectory; Qt4Project *pro = static_cast(m_makeStep->project()); ProjectExplorer::BuildConfiguration *bc = pro->buildConfiguration(m_buildConfiguration); - if (bc->value("useShadowBuild").toBool()) - workingDirectory = bc->value("buildDirectory").toString(); - if (workingDirectory.isEmpty()) - workingDirectory = QFileInfo(pro->file()->fileName()).absolutePath(); + QString workingDirectory = pro->buildDirectory(bc); QString makeCmd = pro->makeCommand(bc); if (!m_makeStep->value(m_buildConfiguration, "makeCmd").toString().isEmpty()) diff --git a/src/plugins/qt4projectmanager/projectloadwizard.cpp b/src/plugins/qt4projectmanager/projectloadwizard.cpp index bebf7bc27a8..8c29cdbd7ca 100644 --- a/src/plugins/qt4projectmanager/projectloadwizard.cpp +++ b/src/plugins/qt4projectmanager/projectloadwizard.cpp @@ -48,6 +48,7 @@ using namespace Qt4ProjectManager::Internal; ProjectLoadWizard::ProjectLoadWizard(Qt4Project *project, QWidget *parent, Qt::WindowFlags flags) : QWizard(parent, flags), m_project(project), m_importVersion(0), m_temporaryVersion(false) { + setWindowTitle(tr("Import existing build settings")); QtVersionManager * vm = QtVersionManager::instance(); QString directory = QFileInfo(project->file()->fileName()).absolutePath(); QString importVersion = QtVersionManager::findQMakeBinaryFromMakefile(directory); @@ -155,7 +156,7 @@ void ProjectLoadWizard::setupImportPage(QtVersion *version, QtVersion::QmakeBuil resize(605, 490); // Import Page importPage = new QWizardPage(this); - importPage->setTitle(tr("Import existing settings")); + importPage->setTitle(tr("Import existing build settings")); QVBoxLayout *importLayout = new QVBoxLayout(importPage); importLabel = new QLabel(importPage); diff --git a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp index 3790d311d2d..e1c009498be 100644 --- a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp @@ -36,15 +36,12 @@ using namespace ProjectExplorer; using namespace Qt4ProjectManager::Internal; -namespace { - const char *GCCE_COMMAND = "arm-none-symbianelf-gcc.exe"; -} - -GCCEToolChain::GCCEToolChain(S60Devices::Device device) - : GccToolChain(QLatin1String(GCCE_COMMAND)), +GCCEToolChain::GCCEToolChain(S60Devices::Device device, const QString &gcceCommand) + : GccToolChain(gcceCommand), m_deviceId(device.id), m_deviceName(device.name), - m_deviceRoot(device.epocRoot) + m_deviceRoot(device.epocRoot), + m_gcceCommand(gcceCommand) { } @@ -68,9 +65,9 @@ QList GCCEToolChain::systemHeaderPaths() void GCCEToolChain::addToEnvironment(ProjectExplorer::Environment &env) { - // TODO: do we need to set path to gcce? env.prependOrSetPath(QString("%1\\epoc32\\tools").arg(m_deviceRoot)); // e.g. make.exe env.prependOrSetPath(QString("%1\\epoc32\\gcc\\bin").arg(m_deviceRoot)); // e.g. gcc.exe + env.prependOrSetPath(QFileInfo(m_gcceCommand).absolutePath()); env.set("EPOCDEVICE", QString("%1:%2").arg(m_deviceId, m_deviceName)); env.set("EPOCROOT", S60Devices::cleanedRootPath(m_deviceRoot)); } diff --git a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h index 8b6bdc8dec5..53cd0515c59 100644 --- a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h +++ b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h @@ -40,7 +40,7 @@ namespace Internal { class GCCEToolChain : public ProjectExplorer::GccToolChain { public: - GCCEToolChain(S60Devices::Device device); + GCCEToolChain(S60Devices::Device device, const QString &gcceCommand); QList systemHeaderPaths(); void addToEnvironment(ProjectExplorer::Environment &env); ProjectExplorer::ToolChain::ToolChainType type() const; @@ -52,6 +52,7 @@ private: QString m_deviceId; QString m_deviceName; QString m_deviceRoot; + QString m_gcceCommand; }; } // namespace Internal diff --git a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp index 0804a9fe258..94dfb99aec6 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp @@ -50,6 +50,9 @@ #include +#include +#include + using namespace ProjectExplorer; using namespace Qt4ProjectManager::Internal; @@ -98,6 +101,14 @@ QString S60DeviceRunConfiguration::type() const return QLatin1String("Qt4ProjectManager.DeviceRunConfiguration"); } +ProjectExplorer::ToolChain::ToolChainType S60DeviceRunConfiguration::toolChainType( + ProjectExplorer::BuildConfiguration *configuration) const +{ + if (const Qt4Project *pro = qobject_cast(project())) + return pro->toolChainType(configuration); + return ProjectExplorer::ToolChain::INVALID; +} + ProjectExplorer::ToolChain::ToolChainType S60DeviceRunConfiguration::toolChainType() const { if (const Qt4Project *pro = qobject_cast(project())) @@ -105,9 +116,9 @@ ProjectExplorer::ToolChain::ToolChainType S60DeviceRunConfiguration::toolChainTy return ProjectExplorer::ToolChain::INVALID; } -bool S60DeviceRunConfiguration::isEnabled() const +bool S60DeviceRunConfiguration::isEnabled(ProjectExplorer::BuildConfiguration *configuration) const { - const ToolChain::ToolChainType type = toolChainType(); + const ToolChain::ToolChainType type = toolChainType(configuration); return type == ToolChain::GCCE || type == ToolChain::RVCT_ARMV5 || type == ToolChain::RVCT_ARMV6; } @@ -446,6 +457,11 @@ S60DeviceRunControlBase::~S60DeviceRunControlBase() void S60DeviceRunControlBase::start() { emit started(); + if (m_serialPortName.isEmpty()) { + error(this, tr("There is no device plugged in.")); + emit finished(); + return; + } emit addToOutputWindow(this, tr("Creating %1.sisx ...").arg(QDir::toNativeSeparators(m_baseFileName))); emit addToOutputWindow(this, tr("Executable file: %1").arg(m_executableFileName)); @@ -472,10 +488,23 @@ void S60DeviceRunControlBase::start() m_makesis->start(m_makesisTool, QStringList(m_packageFile), QIODevice::ReadOnly); } +static inline void stopProcess(QProcess *p) +{ + const int timeOutMS = 200; + if (p->state() != QProcess::Running) + return; + p->terminate(); + if (p->waitForFinished(timeOutMS)) + return; + p->kill(); +} + void S60DeviceRunControlBase::stop() { - m_makesis->kill(); - m_signsis->kill(); + if (m_makesis) + stopProcess(m_makesis); + if (m_signsis) + stopProcess(m_signsis); if (m_launcher) m_launcher->terminate(); } @@ -529,6 +558,7 @@ void S60DeviceRunControlBase::makesisProcessFinished() { if (m_makesis->exitCode() != 0) { error(this, tr("An error occurred while creating the package.")); + stop(); emit finished(); return; } @@ -557,6 +587,7 @@ void S60DeviceRunControlBase::signsisProcessFinished() { if (m_signsis->exitCode() != 0) { error(this, tr("An error occurred while creating the package.")); + stop(); emit finished(); return; } @@ -570,6 +601,7 @@ void S60DeviceRunControlBase::signsisProcessFinished() connect(m_launcher, SIGNAL(installingStarted()), this, SLOT(printInstallingNotice())); connect(m_launcher, SIGNAL(canNotInstall(QString,QString)), this, SLOT(printInstallFailed(QString,QString))); connect(m_launcher, SIGNAL(copyProgress(int)), this, SLOT(printCopyProgress(int))); + connect(m_launcher, SIGNAL(stateChanged(int)), this, SLOT(slotLauncherStateChanged(int))); //TODO sisx destination and file path user definable m_launcher->setTrkServerName(m_serialPortName); @@ -593,18 +625,17 @@ void S60DeviceRunControlBase::signsisProcessFinished() break; case trk::PromptStartCommunicationCanceled: case trk::PromptStartCommunicationError: - delete m_launcher; - m_launcher = 0; error(this, errorMessage); + stop(); emit finished(); return; }; if (!m_launcher->startServer(&errorMessage)) { - delete m_launcher; - m_launcher = 0; + error(this, tr("Could not connect to phone on port '%1': %2\n" - "Check if the phone is connected and the TRK application is running.").arg(m_serialPortName, errorMessage)); + "Check if the phone is connected and App TRK is running.").arg(m_serialPortName, errorMessage)); + stop(); emit finished(); } } @@ -657,6 +688,37 @@ void S60DeviceRunControlBase::launcherFinished() handleLauncherFinished(); } +QMessageBox *S60DeviceRunControlBase::createTrkWaitingMessageBox(const QString &port, QWidget *parent) +{ + const QString title = QCoreApplication::translate("Qt4ProjectManager::Internal::S60DeviceRunControlBase", + "Waiting for App TRK"); + const QString text = QCoreApplication::translate("Qt4ProjectManager::Internal::S60DeviceRunControlBase", + "Please start App TRK on %1.").arg(port); + QMessageBox *rc = new QMessageBox(QMessageBox::Information, title, text, + QMessageBox::Cancel, parent); + return rc; +} + +void S60DeviceRunControlBase::slotLauncherStateChanged(int s) +{ + if (s == trk::Launcher::WaitingForTrk) { + QMessageBox *mb = S60DeviceRunControlBase::createTrkWaitingMessageBox(m_launcher->trkServerName(), + Core::ICore::instance()->mainWindow()); + connect(m_launcher, SIGNAL(stateChanged(int)), mb, SLOT(close())); + connect(mb, SIGNAL(finished(int)), this, SLOT(slotWaitingForTrkClosed())); + mb->open(); + } +} + +void S60DeviceRunControlBase::slotWaitingForTrkClosed() +{ + if (m_launcher && m_launcher->state() == trk::Launcher::WaitingForTrk) { + stop(); + error(this, tr("Canceled.")); + emit finished(); + } +} + void S60DeviceRunControlBase::processFailed(const QString &program, QProcess::ProcessError errorCode) { QString errorString; @@ -671,6 +733,7 @@ void S60DeviceRunControlBase::processFailed(const QString &program, QProcess::Pr errorString = tr("An error has occurred while running %1."); } error(this, errorString.arg(program)); + stop(); emit finished(); } diff --git a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h index 444e8855f65..04616bf109a 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h +++ b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h @@ -37,6 +37,11 @@ #include +QT_BEGIN_NAMESPACE +class QMessageBox; +class QWidget; +QT_END_NAMESPACE + namespace Debugger { class DebuggerStartParameters; } @@ -57,7 +62,7 @@ public: ~S60DeviceRunConfiguration(); QString type() const; - bool isEnabled() const; + bool isEnabled(ProjectExplorer::BuildConfiguration *configuration) const; QWidget *configurationWidget(); void save(ProjectExplorer::PersistentSettingsWriter &writer) const; void restore(const ProjectExplorer::PersistentSettingsReader &reader); @@ -92,6 +97,7 @@ private slots: void invalidateCachedTargetInformation(); private: + ProjectExplorer::ToolChain::ToolChainType toolChainType(ProjectExplorer::BuildConfiguration *configuration) const; void updateTarget(); QString m_proFilePath; @@ -134,6 +140,8 @@ public: virtual void stop(); virtual bool isRunning() const; + static QMessageBox *createTrkWaitingMessageBox(const QString &port, QWidget *parent = 0); + protected: virtual void initLauncher(const QString &executable, trk::Launcher *) = 0; virtual void handleLauncherFinished() = 0; @@ -162,8 +170,10 @@ private slots: void printInstallingNotice(); void printInstallFailed(const QString &filename, const QString &errorMessage); void launcherFinished(); + void slotLauncherStateChanged(int); + void slotWaitingForTrkClosed(); -private: +private: bool createPackageFileFromTemplate(QString *errorMessage); QString m_serialPortName; diff --git a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.cpp b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.cpp index a80c4200c98..7fbbf9f7fc6 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.cpp @@ -54,6 +54,8 @@ #include #include #include +#include +#include Q_DECLARE_METATYPE(Qt4ProjectManager::Internal::CommunicationDevice) @@ -196,6 +198,7 @@ void S60DeviceRunConfigurationWidget::updateSerialDevices() if (newPortName != previousRunConfigurationPortName) m_runConfiguration->setSerialPortName(newPortName); } + updateSummary(); } CommunicationDevice S60DeviceRunConfigurationWidget::device(int i) const @@ -288,66 +291,72 @@ void S60DeviceRunConfigurationWidget::setDeviceInfoLabel(const QString &message, m_deviceInfoLabel->adjustSize(); } -void S60DeviceRunConfigurationWidget::updateDeviceInfo() +void S60DeviceRunConfigurationWidget::slotLauncherStateChanged(int s) { - QString message; - setDeviceInfoLabel(tr("Connecting...")); - const bool ok = getDeviceInfo(&message); - setDeviceInfoLabel(message, !ok); + switch (s) { + case trk::Launcher::WaitingForTrk: { + // Entered trk wait state..open message box + QMessageBox *mb = S60DeviceRunControlBase::createTrkWaitingMessageBox(m_infoLauncher->trkServerName(), this); + connect(m_infoLauncher, SIGNAL(stateChanged(int)), mb, SLOT(close())); + connect(mb, SIGNAL(finished(int)), this, SLOT(slotWaitingForTrkClosed())); + mb->open(); + } + break; + case trk::Launcher::DeviceDescriptionReceived: // All ok, done + setDeviceInfoLabel(m_infoLauncher->deviceDescription()); + m_deviceInfoButton->setEnabled(true); + m_infoLauncher->deleteLater(); + break; + } } -bool S60DeviceRunConfigurationWidget::getDeviceInfo(QString *message) +void S60DeviceRunConfigurationWidget::slotWaitingForTrkClosed() { - message->clear(); - // Do a launcher run with the ping protocol. Instantiate launcher on heap - // as not to introduce delays when destructing a device with timeout - trk::Launcher *launcher = new trk::Launcher(trk::Launcher::ActionPingOnly, QSharedPointer(), this); + if (m_infoLauncher && m_infoLauncher->state() == trk::Launcher::WaitingForTrk) { + m_infoLauncher->deleteLater(); + clearDeviceInfo(); + m_deviceInfoButton->setEnabled(true); + } +} + +void S60DeviceRunConfigurationWidget::updateDeviceInfo() +{ + QTC_ASSERT(!m_infoLauncher, return) + setDeviceInfoLabel(tr("Connecting...")); + // Do a launcher run with the ping protocol. Prompt to connect and + // go asynchronous afterwards to pop up launch trk box if a timeout occurs. + m_infoLauncher = new trk::Launcher(trk::Launcher::ActionPingOnly, QSharedPointer(), this); + connect(m_infoLauncher, SIGNAL(stateChanged(int)), this, SLOT(slotLauncherStateChanged(int))); const CommunicationDevice commDev = currentDevice(); - launcher->setSerialFrame(commDev.type == SerialPortCommunication); - launcher->setTrkServerName(commDev.portName); + m_infoLauncher->setSerialFrame(commDev.type == SerialPortCommunication); + m_infoLauncher->setTrkServerName(commDev.portName); // Prompt user + QString message; const trk::PromptStartCommunicationResult src = - S60RunConfigBluetoothStarter::startCommunication(launcher->trkDevice(), + S60RunConfigBluetoothStarter::startCommunication(m_infoLauncher->trkDevice(), commDev.portName, commDev.type, this, - message); + &message); switch (src) { case trk::PromptStartCommunicationConnected: break; case trk::PromptStartCommunicationCanceled: - launcher->deleteLater(); - return true; + clearDeviceInfo(); + m_infoLauncher->deleteLater(); + return; case trk::PromptStartCommunicationError: - launcher->deleteLater(); - return false; + setDeviceInfoLabel(message, true); + m_infoLauncher->deleteLater(); + return; }; - if (!launcher->startServer(message)) { - launcher->deleteLater(); - return false; + if (!m_infoLauncher->startServer(&message)) { + setDeviceInfoLabel(message, true); + m_infoLauncher->deleteLater(); + return; } - // Set up event loop in the foreground with a timer to quit in case of timeout. - QEventLoop eventLoop; - if (!m_infoTimeOutTimer) { - m_infoTimeOutTimer = new QTimer(this); - m_infoTimeOutTimer->setInterval(3000); - m_infoTimeOutTimer->setSingleShot(true); - } - connect(m_infoTimeOutTimer, SIGNAL(timeout()), &eventLoop, SLOT(quit())); - connect(launcher, SIGNAL(finished()), &eventLoop, SLOT(quit())); - // Go! - QApplication::setOverrideCursor(Qt::BusyCursor); - m_infoTimeOutTimer->start(); - eventLoop.exec(QEventLoop::ExcludeUserInputEvents); - m_infoTimeOutTimer->disconnect(); - QApplication::restoreOverrideCursor(); - // Anything received? - *message = launcher->deviceDescription(); - launcher->deleteLater(); - if (message->isEmpty()) { - *message = tr("A timeout occurred while querying the device. Check whether Trk is running"); - return false; - } - return true; + // Wait for either timeout or results + m_deviceInfoButton->setEnabled(false); + return; } } // namespace Internal diff --git a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.h b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.h index 1863f5d5e5e..18f736da736 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.h +++ b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfigurationwidget.h @@ -31,6 +31,7 @@ #define S60DEVICERUNCONFIGURATIONWIDGET_H #include +#include QT_BEGIN_NAMESPACE class QLabel; @@ -44,6 +45,10 @@ namespace Utils { class DetailsWidget; } +namespace trk { + class Launcher; +} + namespace Qt4ProjectManager { namespace Internal { @@ -72,12 +77,13 @@ private slots: void updateSummary(); void updateDeviceInfo(); void clearDeviceInfo(); + void slotLauncherStateChanged(int); + void slotWaitingForTrkClosed(); private: inline CommunicationDevice device(int i) const; inline CommunicationDevice currentDevice() const; - bool getDeviceInfo(QString *message); void setDeviceInfoLabel(const QString &message, bool isError = false); S60DeviceRunConfiguration *m_runConfiguration; @@ -89,6 +95,7 @@ private: QLabel *m_deviceInfoDescriptionLabel; QLabel *m_deviceInfoLabel; QTimer *m_infoTimeOutTimer; + QPointer m_infoLauncher; }; } // namespace Internal diff --git a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp index b1c65fa0e92..6b734e63149 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp @@ -76,11 +76,11 @@ QString S60EmulatorRunConfiguration::type() const return "Qt4ProjectManager.EmulatorRunConfiguration"; } -bool S60EmulatorRunConfiguration::isEnabled() const +bool S60EmulatorRunConfiguration::isEnabled(ProjectExplorer::BuildConfiguration *configuration) const { Qt4Project *pro = qobject_cast(project()); QTC_ASSERT(pro, return false); - ToolChain::ToolChainType type = pro->toolChainType(pro->activeBuildConfiguration()); + ToolChain::ToolChainType type = pro->toolChainType(configuration); return type == ToolChain::WINSCW; } diff --git a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h index 8ba0aeded4d..ec84e7900d3 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h +++ b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h @@ -55,7 +55,7 @@ public: ~S60EmulatorRunConfiguration(); QString type() const; - bool isEnabled() const; + bool isEnabled(ProjectExplorer::BuildConfiguration *configuration) const; QWidget *configurationWidget(); void save(ProjectExplorer::PersistentSettingsWriter &writer) const; void restore(const ProjectExplorer::PersistentSettingsReader &reader); diff --git a/src/plugins/qt4projectmanager/qt-s60/s60manager.cpp b/src/plugins/qt4projectmanager/qt-s60/s60manager.cpp index 0c9084c88dd..a45ebe44e27 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60manager.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60manager.cpp @@ -29,8 +29,8 @@ #include "s60manager.h" -#include "s60devices.h" #include "s60devicespreferencepane.h" +#include "serialdevicelister.h" #include "winscwtoolchain.h" #include "gccetoolchain.h" #include "rvcttoolchain.h" @@ -40,20 +40,22 @@ #include #include #include +#include #include #include #include +namespace { + const char *GCCE_COMMAND = "arm-none-symbianelf-gcc.exe"; + const char *S60_AUTODETECTION_SOURCE = "QTS60"; +} + namespace Qt4ProjectManager { namespace Internal { S60Manager *S60Manager::m_instance = 0; -namespace { -static const char *S60_AUTODETECTION_SOURCE = "QTS60"; -} - // ======== Parametrizable Factory for RunControls, depending on the configuration // class and mode. @@ -200,7 +202,10 @@ ProjectExplorer::ToolChain *S60Manager::createWINSCWToolChain(const Qt4ProjectMa ProjectExplorer::ToolChain *S60Manager::createGCCEToolChain(const Qt4ProjectManager::QtVersion *version) const { - return new GCCEToolChain(deviceForQtVersion(version)); + ProjectExplorer::Environment env = ProjectExplorer::Environment::systemEnvironment(); + env.prependOrSetPath(version->gcceDirectory()+"/bin"); + QString gcceCommandPath= env.searchInPath(GCCE_COMMAND); + return new GCCEToolChain(deviceForQtVersion(version), gcceCommandPath); } ProjectExplorer::ToolChain *S60Manager::createRVCTToolChain( @@ -237,5 +242,5 @@ S60Devices::Device S60Manager::deviceForQtVersion(const Qt4ProjectManager::QtVer return device; } -} -} +} // namespace internal +} // namespace qt4projectmanager diff --git a/src/plugins/qt4projectmanager/qt-s60/s60manager.h b/src/plugins/qt4projectmanager/qt-s60/s60manager.h index fe4078583d8..77e93be3a93 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60manager.h +++ b/src/plugins/qt4projectmanager/qt-s60/s60manager.h @@ -31,17 +31,19 @@ #define S60MANAGER_H #include "qtversionmanager.h" -#include "serialdevicelister.h" #include "s60devices.h" -#include -#include - #include +namespace ProjectExplorer { +class ToolChain; +} + namespace Qt4ProjectManager { namespace Internal { +class SerialDeviceLister; + class S60Manager : public QObject { Q_OBJECT diff --git a/src/plugins/qt4projectmanager/qt4project.cpp b/src/plugins/qt4projectmanager/qt4project.cpp index 7e5dec188c5..dd7a37a4822 100644 --- a/src/plugins/qt4projectmanager/qt4project.cpp +++ b/src/plugins/qt4projectmanager/qt4project.cpp @@ -274,18 +274,19 @@ bool Qt4BuildConfigurationFactory::create(const QString &type) const { QTC_ASSERT(m_versions.contains(type), return false); const VersionInfo &info = m_versions.value(type); + QtVersion *version = QtVersionManager::instance()->version(info.versionId); + if (!version) + return false; bool ok; QString buildConfigurationName = QInputDialog::getText(0, tr("New configuration"), tr("New Configuration Name:"), QLineEdit::Normal, - QString(), + version->name(), &ok); if (!ok || buildConfigurationName.isEmpty()) return false; - QtVersion *version = QtVersionManager::instance()->version(info.versionId); - m_project->addQt4BuildConfiguration(tr("%1 Debug").arg(buildConfigurationName), version, (QtVersion::QmakeBuildConfig)(version->defaultBuildConfig() | QtVersion::DebugBuild)); @@ -983,17 +984,8 @@ void Qt4Project::setToolChainType(BuildConfiguration *configuration, ProjectExpl void Qt4Project::updateActiveRunConfiguration() { - const QSharedPointer activeRunConfig = activeRunConfiguration(); - if (!activeRunConfig.isNull() && !activeRunConfig->isEnabled()) { - foreach (const QSharedPointer &runConfiguration, runConfigurations()) { - if (runConfiguration->isEnabled()) { - setActiveRunConfiguration(runConfiguration); - break; - } - } - } emit runConfigurationsEnabledStateChanged(); - emit invalidateCachedTargetInformation(); + emit targetInformationChanged(); } ProjectExplorer::ToolChain::ToolChainType Qt4Project::toolChainType(BuildConfiguration *configuration) const @@ -1195,6 +1187,11 @@ void Qt4Project::invalidateCachedTargetInformation() emit targetInformationChanged(); } +void Qt4Project::emitBuildDirectoryChanged() +{ + emit buildDirectoryChanged(); +} + // We match -spec and -platfrom separetly // We ignore -cache, because qmake contained a bug that it didn't // mention the -cache in the Makefile diff --git a/src/plugins/qt4projectmanager/qt4project.h b/src/plugins/qt4projectmanager/qt4project.h index 13c7f52fdaa..89083369b07 100644 --- a/src/plugins/qt4projectmanager/qt4project.h +++ b/src/plugins/qt4projectmanager/qt4project.h @@ -72,6 +72,7 @@ namespace Internal { class Qt4RunConfiguration; class GCCPreprocessor; struct Qt4ProjectFiles; + class Qt4ProjectConfigWidget; class CodeModelInfo { @@ -266,6 +267,10 @@ private: static void findProFile(const QString& fileName, Internal::Qt4ProFileNode *root, QList &list); static bool hasSubNode(Internal::Qt4PriFileNode *root, const QString &path); + // called by Qt4ProjectConfigWidget + // TODO remove once there's a setBuildDirectory call + void emitBuildDirectoryChanged(); + QList m_applicationProFileChange; ProjectExplorer::ProjectExplorerPlugin *projectExplorer() const; @@ -294,6 +299,7 @@ private: QMap m_codeModelInfo; friend class Qt4ProjectFile; + friend class Internal::Qt4ProjectConfigWidget; }; } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/qt4runconfiguration.cpp b/src/plugins/qt4projectmanager/qt4runconfiguration.cpp index a17b7e7092e..ff9f17efaef 100644 --- a/src/plugins/qt4projectmanager/qt4runconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt4runconfiguration.cpp @@ -93,12 +93,12 @@ QString Qt4RunConfiguration::type() const return "Qt4ProjectManager.Qt4RunConfiguration"; } -bool Qt4RunConfiguration::isEnabled() const +bool Qt4RunConfiguration::isEnabled(ProjectExplorer::BuildConfiguration *configuration) const { #if defined(QTCREATOR_WITH_S60) || defined(QTCREATOR_WITH_MAEMO) Qt4Project *pro = qobject_cast(project()); QTC_ASSERT(pro, return false); - ProjectExplorer::ToolChain::ToolChainType type = pro->toolChainType(pro->activeBuildConfiguration()); + ProjectExplorer::ToolChain::ToolChainType type = pro->toolChainType(configuration); #ifdef QTCREATOR_WITH_S60 if (type == ProjectExplorer::ToolChain::WINSCW || type == ProjectExplorer::ToolChain::GCCE diff --git a/src/plugins/qt4projectmanager/qt4runconfiguration.h b/src/plugins/qt4projectmanager/qt4runconfiguration.h index 69fa0d6575f..f4d953cad87 100644 --- a/src/plugins/qt4projectmanager/qt4runconfiguration.h +++ b/src/plugins/qt4projectmanager/qt4runconfiguration.h @@ -66,7 +66,7 @@ public: virtual ~Qt4RunConfiguration(); virtual QString type() const; - virtual bool isEnabled() const; + virtual bool isEnabled(ProjectExplorer::BuildConfiguration *configuration) const; virtual QWidget *configurationWidget(); virtual void save(ProjectExplorer::PersistentSettingsWriter &writer) const; virtual void restore(const ProjectExplorer::PersistentSettingsReader &reader); diff --git a/src/plugins/qt4projectmanager/qtoptionspage.cpp b/src/plugins/qt4projectmanager/qtoptionspage.cpp index 0796dc44b92..297ee859627 100644 --- a/src/plugins/qt4projectmanager/qtoptionspage.cpp +++ b/src/plugins/qt4projectmanager/qtoptionspage.cpp @@ -126,6 +126,8 @@ QtOptionsPageWidget::QtOptionsPageWidget(QWidget *parent, QList ver m_ui->mwcPath->setPromptDialogTitle(tr("Select Carbide Install Directory")); m_ui->s60SDKPath->setExpectedKind(Utils::PathChooser::Directory); m_ui->s60SDKPath->setPromptDialogTitle(tr("Select S60 SDK Root")); + m_ui->gccePath->setExpectedKind(Utils::PathChooser::Directory); + m_ui->gccePath->setPromptDialogTitle(tr("Select the CSL Arm Toolchain (GCCE) Directory")); m_ui->addButton->setIcon(QIcon(Core::Constants::ICON_PLUS)); m_ui->delButton->setIcon(QIcon(Core::Constants::ICON_MINUS)); @@ -174,6 +176,8 @@ QtOptionsPageWidget::QtOptionsPageWidget(QWidget *parent, QList ver this, SLOT(updateCurrentMwcDirectory())); connect(m_ui->s60SDKPath, SIGNAL(changed(QString)), this, SLOT(updateCurrentS60SDKDirectory())); + connect(m_ui->gccePath, SIGNAL(changed(QString)), + this, SLOT(updateCurrentGcceDirectory())); #endif connect(m_ui->addButton, SIGNAL(clicked()), @@ -396,6 +400,7 @@ void QtOptionsPageWidget::updateState() m_ui->mingwPath->setEnabled(enabled); m_ui->mwcPath->setEnabled(enabled); m_ui->s60SDKPath->setEnabled(enabled && !isAutodetected); + m_ui->gccePath->setEnabled(enabled); const bool hasLog = enabled && !m_ui->qtdirList->currentItem()->data(2, Qt::UserRole).toString().isEmpty(); m_ui->showLogButton->setEnabled(hasLog); @@ -423,6 +428,8 @@ void QtOptionsPageWidget::makeS60Visible(bool visible) m_ui->mwcPath->setVisible(visible); m_ui->s60SDKLabel->setVisible(visible); m_ui->s60SDKPath->setVisible(visible); + m_ui->gcceLabel->setVisible(visible); + m_ui->gccePath->setVisible(visible); } void QtOptionsPageWidget::showEnvironmentPage(QTreeWidgetItem *item) @@ -472,6 +479,7 @@ void QtOptionsPageWidget::showEnvironmentPage(QTreeWidgetItem *item) makeS60Visible(true); m_ui->mwcPath->setPath(m_versions.at(index)->mwcDirectory()); m_ui->s60SDKPath->setPath(m_versions.at(index)->s60SDKDirectory()); + m_ui->gccePath->setPath(m_versions.at(index)->gcceDirectory()); #endif } else if (types.contains(ProjectExplorer::ToolChain::INVALID)) { makeMSVCVisible(false); @@ -698,6 +706,15 @@ void QtOptionsPageWidget::updateCurrentS60SDKDirectory() return; m_versions[currentItemIndex]->setS60SDKDirectory(m_ui->s60SDKPath->path()); } +void QtOptionsPageWidget::updateCurrentGcceDirectory() +{ + QTreeWidgetItem *currentItem = m_ui->qtdirList->currentItem(); + Q_ASSERT(currentItem); + int currentItemIndex = indexForTreeItem(currentItem); + if (currentItemIndex < 0) + return; + m_versions[currentItemIndex]->setGcceDirectory(m_ui->gccePath->path()); +} #endif QList QtOptionsPageWidget::versions() const diff --git a/src/plugins/qt4projectmanager/qtoptionspage.h b/src/plugins/qt4projectmanager/qtoptionspage.h index 4e1f2b49fe8..834dff9b36f 100644 --- a/src/plugins/qt4projectmanager/qtoptionspage.h +++ b/src/plugins/qt4projectmanager/qtoptionspage.h @@ -121,6 +121,7 @@ private slots: #ifdef QTCREATOR_WITH_S60 void updateCurrentMwcDirectory(); void updateCurrentS60SDKDirectory(); + void updateCurrentGcceDirectory(); #endif void msvcVersionChanged(); void buildDebuggingHelper(); diff --git a/src/plugins/qt4projectmanager/qtversionmanager.cpp b/src/plugins/qt4projectmanager/qtversionmanager.cpp index 15fbc053a4a..ee1b0c36f6f 100644 --- a/src/plugins/qt4projectmanager/qtversionmanager.cpp +++ b/src/plugins/qt4projectmanager/qtversionmanager.cpp @@ -131,6 +131,7 @@ QtVersionManager::QtVersionManager() #ifdef QTCREATOR_WITH_S60 version->setMwcDirectory(s->value("MwcDirectory").toString()); version->setS60SDKDirectory(s->value("S60SDKDirectory").toString()); + version->setGcceDirectory(s->value("GcceDirectory").toString()); #endif m_versions.append(version); } @@ -144,6 +145,23 @@ QtVersionManager::QtVersionManager() writeVersionsIntoSettings(); updateDocumentation(); + + if (m_defaultVersion > m_versions.size() || m_defaultVersion < 0) { + // Invalid default version, correct that... + for(int i = 0; i < m_versions.size(); ++i) { + QtVersion *version = m_versions.at(i); + if (version->isAutodetected() && version->autodetectionSource() == PATH_AUTODETECTION_SOURCE && version->isValid()) { + m_defaultVersion = i; + break; + } + } + } + + if (m_defaultVersion > m_versions.size() || m_defaultVersion < 0) { + // Still invalid? Use the first one + m_defaultVersion = 0; + } + // cannot call from ctor, needs to get connected extenernally first QTimer::singleShot(0, this, SLOT(updateExamples())); } @@ -251,6 +269,7 @@ void QtVersionManager::writeVersionsIntoSettings() #ifdef QTCREATOR_WITH_S60 s->setValue("MwcDirectory", version->mwcDirectory()); s->setValue("S60SDKDirectory", version->s60SDKDirectory()); + s->setValue("GcceDirectory", version->gcceDirectory()); #endif } s->endArray(); @@ -1228,6 +1247,16 @@ void QtVersion::setS60SDKDirectory(const QString &directory) { m_s60SDKDirectory = directory; } + +QString QtVersion::gcceDirectory() const +{ + return m_gcceDirectory; +} + +void QtVersion::setGcceDirectory(const QString &directory) +{ + m_gcceDirectory = directory; +} #endif QString QtVersion::mingwDirectory() const diff --git a/src/plugins/qt4projectmanager/qtversionmanager.h b/src/plugins/qt4projectmanager/qtversionmanager.h index 758a7aa63db..d0dde249231 100644 --- a/src/plugins/qt4projectmanager/qtversionmanager.h +++ b/src/plugins/qt4projectmanager/qtversionmanager.h @@ -97,6 +97,8 @@ public: void setMwcDirectory(const QString &directory); QString s60SDKDirectory() const; void setS60SDKDirectory(const QString &directory); + QString gcceDirectory() const; + void setGcceDirectory(const QString &directory); #endif QString mingwDirectory() const; void setMingwDirectory(const QString &directory); @@ -155,6 +157,7 @@ private: #ifdef QTCREATOR_WITH_S60 QString m_mwcDirectory; QString m_s60SDKDirectory; + QString m_gcceDirectory; #endif mutable bool m_mkspecUpToDate; diff --git a/src/plugins/qt4projectmanager/qtversionmanager.ui b/src/plugins/qt4projectmanager/qtversionmanager.ui index 2f0a1dc840f..898125fa11a 100644 --- a/src/plugins/qt4projectmanager/qtversionmanager.ui +++ b/src/plugins/qt4projectmanager/qtversionmanager.ui @@ -7,7 +7,7 @@ 0 0 577 - 477 + 507 @@ -100,7 +100,7 @@ p, li { white-space: pre-wrap; } - + @@ -204,23 +204,33 @@ p, li { white-space: pre-wrap; } + + + CLS/GCCE Directory: + + + + + + + Carbide Directory: - + - + Debugging Helper: - + diff --git a/src/plugins/welcome/communitywelcomepage.h b/src/plugins/welcome/communitywelcomepage.h index 7df85a1d919..d89dac82fbf 100644 --- a/src/plugins/welcome/communitywelcomepage.h +++ b/src/plugins/welcome/communitywelcomepage.h @@ -32,14 +32,14 @@ #include "welcome_global.h" -#include +#include namespace Welcome { namespace Internal { class CommunityWelcomePageWidget; -class WELCOME_EXPORT CommunityWelcomePage : public ExtensionSystem::IWelcomePage +class CommunityWelcomePage : public Utils::IWelcomePage { Q_OBJECT public: diff --git a/src/plugins/welcome/communitywelcomepagewidget.cpp b/src/plugins/welcome/communitywelcomepagewidget.cpp index a6ffff280c9..3385dd39c9f 100644 --- a/src/plugins/welcome/communitywelcomepagewidget.cpp +++ b/src/plugins/welcome/communitywelcomepagewidget.cpp @@ -55,18 +55,18 @@ CommunityWelcomePageWidget::CommunityWelcomePageWidget(QWidget *parent) : //: Add localized feed here only if one exists m_rssFetcher->fetch(QUrl(tr("http://labs.trolltech.com/blogs/feed"))); - QMap sites; - sites[tr("Qt Home")] = QLatin1String("http://qt.nokia.com"); - sites[tr("Qt Labs")] = QLatin1String("http://labs.qt.nokia.com"); - sites[tr("Qt Git Hosting")] = QLatin1String("http://qt.gitorious.org"); - sites[tr("Qt Centre")] = QLatin1String("http://www.qtcentre.org"); - sites[tr("Qt Apps")] = QLatin1String("http://www.qt-apps.org"); - sites[tr("Qt for Symbian at Forum Nokia")] = QLatin1String("http://discussion.forum.nokia.com/forum/forumdisplay.php?f=196"); + QList > sites; + sites << qMakePair(tr("Qt Home"), QString(QLatin1String("http://qt.nokia.com"))); + sites << qMakePair(tr("Qt Labs"), QString(QLatin1String("http://labs.qt.nokia.com"))); + sites << qMakePair(tr("Qt Git Hosting"), QString(QLatin1String("http://qt.gitorious.org"))); + sites << qMakePair(tr("Qt Centre"), QString(QLatin1String("http://www.qtcentre.org"))); + sites << qMakePair(tr("Qt Apps"), QString(QLatin1String("http://www.qt-apps.org"))); + sites << qMakePair(tr("Qt for Symbian at Forum Nokia"), QString(QLatin1String("http://discussion.forum.nokia.com/forum/forumdisplay.php?f=196"))); - QMapIterator it(sites); + QListIterator > it(sites); while (it.hasNext()) { - it.next(); - ui->sitesTreeWidget->addItem(it.key(), it.value(), it.value()); + QPair pair = it.next(); + ui->sitesTreeWidget->addItem(pair.first, pair.second, pair.second); } } diff --git a/src/plugins/welcome/welcome.pri b/src/plugins/welcome/welcome.pri index 5e0a99bca87..2edd8a4dfc6 100644 --- a/src/plugins/welcome/welcome.pri +++ b/src/plugins/welcome/welcome.pri @@ -1,2 +1,3 @@ -include(coreplugin_dependencies.pri) +include(welcome_dependencies.pri) + LIBS *= -l$$qtLibraryTarget(Welcome) diff --git a/src/plugins/welcome/welcome.pro b/src/plugins/welcome/welcome.pro index fb5cfc9e748..d2e6e7c33ea 100644 --- a/src/plugins/welcome/welcome.pro +++ b/src/plugins/welcome/welcome.pro @@ -2,12 +2,13 @@ TEMPLATE = lib TARGET = Welcome QT += network include(../../qtcreatorplugin.pri) -include(../../plugins/coreplugin/coreplugin.pri) +include(welcome_dependencies.pri) HEADERS += welcomeplugin.h \ welcomemode.h \ rssfetcher.h \ communitywelcomepagewidget.h \ - communitywelcomepage.h + communitywelcomepage.h \ + welcome_global.h SOURCES += welcomeplugin.cpp \ welcomemode.cpp \ rssfetcher.cpp \ diff --git a/src/plugins/welcome/welcome_dependencies.pri b/src/plugins/welcome/welcome_dependencies.pri new file mode 100644 index 00000000000..7f369f6326a --- /dev/null +++ b/src/plugins/welcome/welcome_dependencies.pri @@ -0,0 +1,2 @@ +include(../../plugins/coreplugin/coreplugin.pri) +include(../../libs/utils/utils.pri) diff --git a/src/plugins/welcome/welcomemode.cpp b/src/plugins/welcome/welcomemode.cpp index 9da0ad90d4e..6397930cfae 100644 --- a/src/plugins/welcome/welcomemode.cpp +++ b/src/plugins/welcome/welcomemode.cpp @@ -29,7 +29,6 @@ #include "welcomemode.h" #include -#include #include #include @@ -39,6 +38,7 @@ #include #include +#include #include #include @@ -55,6 +55,7 @@ #include "ui_welcomemode.h" using namespace ExtensionSystem; +using namespace Utils; namespace Welcome { diff --git a/src/shared/cplusplus/CheckDeclaration.cpp b/src/shared/cplusplus/CheckDeclaration.cpp index 7e7d01d9071..1e7afdd166d 100644 --- a/src/shared/cplusplus/CheckDeclaration.cpp +++ b/src/shared/cplusplus/CheckDeclaration.cpp @@ -263,8 +263,29 @@ bool CheckDeclaration::visit(AsmDefinitionAST *) return false; } -bool CheckDeclaration::visit(ExceptionDeclarationAST *) +bool CheckDeclaration::visit(ExceptionDeclarationAST *ast) { + FullySpecifiedType ty = semantic()->check(ast->type_specifier, _scope); + FullySpecifiedType qualTy = ty.qualifiedType(); + + Name *name = 0; + FullySpecifiedType declTy = semantic()->check(ast->declarator, qualTy, + _scope, &name); + + unsigned location = locationOfDeclaratorId(ast->declarator); + if (! location) { + if (ast->declarator) + location = ast->declarator->firstToken(); + else + location = ast->firstToken(); + } + + Declaration *symbol = control()->newDeclaration(location, name); + symbol->setStartOffset(tokenAt(ast->firstToken()).offset); + symbol->setEndOffset(tokenAt(ast->lastToken()).offset); + symbol->setType(declTy); + _scope->enterSymbol(symbol); + return false; } diff --git a/src/shared/trk/bluetoothlistener_gui.cpp b/src/shared/trk/bluetoothlistener_gui.cpp index edcb40a9a52..9b6dbd3bc6e 100644 --- a/src/shared/trk/bluetoothlistener_gui.cpp +++ b/src/shared/trk/bluetoothlistener_gui.cpp @@ -81,8 +81,8 @@ PromptStartCommunicationResult QWidget *msgBoxParent, QString *errorMessage) { - const QString title = QCoreApplication::translate("trk::promptStartCommunication", "Waiting for TRK"); - const QString message = QCoreApplication::translate("trk::promptStartCommunication", "Waiting for TRK to start on %1...").arg(starter.device()); + const QString title = QCoreApplication::translate("trk::promptStartCommunication", "Waiting for App TRK"); + const QString message = QCoreApplication::translate("trk::promptStartCommunication", "Waiting for App TRK to start on %1...").arg(starter.device()); return promptStartCommunication(starter, title, message, msgBoxParent, errorMessage); } diff --git a/src/shared/trk/communicationstarter.h b/src/shared/trk/communicationstarter.h index 7b89e2472ed..6f9f6d1e434 100644 --- a/src/shared/trk/communicationstarter.h +++ b/src/shared/trk/communicationstarter.h @@ -45,8 +45,8 @@ struct BaseCommunicationStarterPrivate; * connection attempt in start() fails, the * virtual initializeStartupResources() is called to initialize resources * required to pull up the communication (namely Bluetooth listeners). - * The base class can be used as is to prompt the user to launch TRK for a serial - * communication as this requires no further resource setup. */ + * The base class can be used as is to prompt the user to launch App TRK for a + * serial communication as this requires no further resource setup. */ class BaseCommunicationStarter : public QObject { Q_OBJECT diff --git a/src/shared/trk/launcher.cpp b/src/shared/trk/launcher.cpp index f066ab4864f..a554269f0ef 100644 --- a/src/shared/trk/launcher.cpp +++ b/src/shared/trk/launcher.cpp @@ -56,6 +56,7 @@ struct LauncherPrivate { TrkDevicePtr m_device; QString m_trkServerName; QByteArray m_trkReadBuffer; + Launcher::State m_state; void logMessage(const QString &msg); // Debuggee state @@ -66,14 +67,13 @@ struct LauncherPrivate { QString m_installFileName; int m_verbose; Launcher::Actions m_startupActions; - bool m_connected; bool m_closeDevice; }; LauncherPrivate::LauncherPrivate(const TrkDevicePtr &d) : m_device(d), + m_state(Launcher::Disconnected), m_verbose(0), - m_connected(false), m_closeDevice(true) { if (m_device.isNull()) @@ -97,6 +97,19 @@ Launcher::~Launcher() delete d; } +Launcher::State Launcher::state() const +{ + return d->m_state; +} + +void Launcher::setState(State s) +{ + if (s != d->m_state) { + d->m_state = s; + emit stateChanged(s); + } +} + void Launcher::addStartupActions(trk::Launcher::Actions startupActions) { d->m_startupActions = Actions(d->m_startupActions | startupActions); @@ -186,7 +199,9 @@ bool Launcher::startServer(QString *errorMessage) } else { disconnect(this, SIGNAL(finished()), d->m_device.data(), 0); } - + setState(Connecting); + // Set up the temporary 'waiting' state if we do not get immediate connection + QTimer::singleShot(200, this, SLOT(slotWaitingForTrk())); d->m_device->sendTrkInitialPing(); d->m_device->sendTrkMessage(TrkDisconnect); // Disconnect, as trk might be still connected d->m_device->sendTrkMessage(TrkSupported, TrkCallback(this, &Launcher::handleSupportMask)); @@ -197,13 +212,20 @@ bool Launcher::startServer(QString *errorMessage) return true; } +void Launcher::slotWaitingForTrk() +{ + // Set temporary state if we are still in connected state + if (state() == Connecting) + setState(WaitingForTrk); +} + void Launcher::handleConnect(const TrkResult &result) { if (result.errorCode()) { emit canNotConnect(result.errorString()); return; } - d->m_connected = true; + setState(Connected); if (d->m_startupActions & ActionCopy) copyFileToRemote(); else if (d->m_startupActions & ActionInstall) @@ -226,17 +248,27 @@ void Launcher::logMessage(const QString &msg) void Launcher::terminate() { - if (d->m_session.pid) { - QByteArray ba; - appendShort(&ba, 0x0000, TargetByteOrder); - appendInt(&ba, d->m_session.pid, TargetByteOrder); - d->m_device->sendTrkMessage(TrkDeleteItem, TrkCallback(this, &Launcher::handleRemoteProcessKilled), ba); - } else if (d->m_connected) { + switch (state()) { + case DeviceDescriptionReceived: + case Connected: + if (d->m_session.pid) { + QByteArray ba; + appendShort(&ba, 0x0000, TargetByteOrder); + appendInt(&ba, d->m_session.pid, TargetByteOrder); + d->m_device->sendTrkMessage(TrkDeleteItem, TrkCallback(this, &Launcher::handleRemoteProcessKilled), ba); + return; + } if (d->m_copyState.copyFileHandle) closeRemoteFile(true); disconnectTrk(); - } else { + break; + case Disconnected: + break; + case Connecting: + case WaitingForTrk: + setState(Disconnected); emit finished(); + break; } } @@ -364,17 +396,21 @@ QString Launcher::deviceDescription(unsigned verbose) const void Launcher::handleTrkVersion(const TrkResult &result) { if (result.errorCode() || result.data.size() < 5) { - if (d->m_startupActions == ActionPingOnly) + if (d->m_startupActions == ActionPingOnly) { + setState(Disconnected); emit finished(); + } return; } d->m_session.trkAppVersion.trkMajor = result.data.at(1); d->m_session.trkAppVersion.trkMinor = result.data.at(2); d->m_session.trkAppVersion.protocolMajor = result.data.at(3); d->m_session.trkAppVersion.protocolMinor = result.data.at(4); + setState(DeviceDescriptionReceived); // Ping mode: Log & Terminate if (d->m_startupActions == ActionPingOnly) { qWarning("%s", qPrintable(deviceDescription())); + setState(Disconnected); emit finished(); } } @@ -501,6 +537,7 @@ void Launcher::handleCreateProcess(const TrkResult &result) void Launcher::handleWaitForFinished(const TrkResult &result) { logMessage(" FINISHED: " + stringFromArray(result.data)); + setState(Disconnected); emit finished(); } diff --git a/src/shared/trk/launcher.h b/src/shared/trk/launcher.h index 2c4881de6d1..538d367e742 100644 --- a/src/shared/trk/launcher.h +++ b/src/shared/trk/launcher.h @@ -61,10 +61,21 @@ public: ActionCopyInstallRun = ActionCopy | ActionInstall | ActionRun }; + enum State { Disconnected, Connecting, Connected, + WaitingForTrk, // This occurs only if the initial ping times out after + // a reasonable timeout, indicating that Trk is not + // running. Note that this will never happen with + // Bluetooth as communication immediately starts + // after connecting. + DeviceDescriptionReceived }; + explicit Launcher(trk::Launcher::Actions startupActions = trk::Launcher::ActionPingOnly, const TrkDevicePtr &trkDevice = TrkDevicePtr(), QObject *parent = 0); ~Launcher(); + + State state() const; + void addStartupActions(trk::Launcher::Actions startupActions); void setTrkServerName(const QString &name); QString trkServerName() const; @@ -98,12 +109,14 @@ signals: void finished(); void applicationOutputReceived(const QString &output); void copyProgress(int percent); + void stateChanged(int); public slots: void terminate(); private slots: void handleResult(const trk::TrkResult &data); + void slotWaitingForTrk(); private: // kill process and breakpoints @@ -130,6 +143,7 @@ private: void startInferiorIfNeeded(); void logMessage(const QString &msg); + void setState(State s); LauncherPrivate *d; }; diff --git a/src/shared/trk/trkutils.cpp b/src/shared/trk/trkutils.cpp index 93df3937994..4b63cad0343 100644 --- a/src/shared/trk/trkutils.cpp +++ b/src/shared/trk/trkutils.cpp @@ -98,8 +98,8 @@ QString Session::deviceDescription(unsigned verbose) const if (fpTypeSize) str << ", float size: " << fpTypeSize; } - str << ", Trk: v" << trkAppVersion.trkMajor << '.' << trkAppVersion.trkMinor - << " Protocol: v" << trkAppVersion.protocolMajor << '.' << trkAppVersion.protocolMinor; + str << ", App TRK: v" << trkAppVersion.trkMajor << '.' << trkAppVersion.trkMinor + << " TRK protocol: v" << trkAppVersion.protocolMajor << '.' << trkAppVersion.protocolMinor; } return msg; } diff --git a/tests/auto/debugger/tst_dumpers.cpp b/tests/auto/debugger/tst_dumpers.cpp index debe1ff8b2a..c92abc004df 100644 --- a/tests/auto/debugger/tst_dumpers.cpp +++ b/tests/auto/debugger/tst_dumpers.cpp @@ -10,11 +10,10 @@ #include //#include -#if (QT_POINTER_SIZE==4) -# define POINTER_PRINTFORMAT "0x%x" -#else -# define POINTER_PRINTFORMAT "0x%lx" -#endif +static const char *pointerPrintFormat() +{ + return sizeof(quintptr) == sizeof(long) ? "0x%lx" : "0x%llx"; +} #undef NS #ifdef QT_NAMESPACE @@ -393,7 +392,7 @@ static void testDumper(QByteArray expected0, const void *data, QByteArray outert extraInt0, extraInt1, extraInt2, extraInt3); QString expected(expected0); char buf[100]; - sprintf(buf, POINTER_PRINTFORMAT, (uintptr_t)data); + sprintf(buf, pointerPrintFormat(), (uintptr_t)data); if ((!expected.startsWith('t') && !expected.startsWith('f')) || expected.startsWith("type")) expected = "tiname='$I',addr='$A'," + expected; @@ -423,7 +422,7 @@ static void testDumper(QByteArray expected0, const void *data, QByteArray outert QByteArray str(const void *p) { char buf[100]; - sprintf(buf, POINTER_PRINTFORMAT, (uintptr_t)p); + sprintf(buf, pointerPrintFormat(), (uintptr_t)p); return buf; } @@ -1977,7 +1976,7 @@ void tst_Debugger::dumpQObjectSignalList() "numchild='0',addr='$A',type='"NS"QObjectSignal'}," "{name='21',value='columnsMoved(QModelIndex,int,int,QModelIndex,int)'," "numchild='0',addr='$A',type='"NS"QObjectSignal'}]"; - + testDumper(expected << "0" << "0" << "0" << "0" << "0" << "0", &m, NS"QObjectSignalList", true); diff --git a/tests/auto/debugger/tst_gdb.cpp b/tests/auto/debugger/tst_gdb.cpp index 034e53221c1..1dc69746789 100644 --- a/tests/auto/debugger/tst_gdb.cpp +++ b/tests/auto/debugger/tst_gdb.cpp @@ -17,7 +17,12 @@ bool checkUninitialized = false; #include "gdb/gdbmi.h" #include -#include + +#ifdef Q_OS_WIN +# include +#else +# include +#endif #undef NS @@ -43,9 +48,11 @@ bool checkUninitialized = false; #define gettid() QString("0x%1").arg((qulonglong)(void *)currentThread(), 0, 16) -using namespace Debugger; -using namespace Debugger::Internal; - +#ifdef Q_OS_WIN +QString gdbBinary = "c:\\MinGw\\bin\\gdb.exe"; +#else +QString gdbBinary = "./gdb"; +#endif class Foo { @@ -89,6 +96,7 @@ private: ///////////////////////////////////////////////////////////////////////// // +// // Helper stuff // ///////////////////////////////////////////////////////////////////////// @@ -135,8 +143,11 @@ class Thread : public QThread public: Thread(tst_Gdb *test); + void startup(QProcess *proc); void run(); + QString errorString() const { return m_errorString; } + public slots: void readStandardOutput(); void readStandardError(); @@ -157,6 +168,7 @@ public: int m_line; // line extracted from last "*stopped" message QProcess *m_proc; // owned tst_Gdb *m_test; // not owned + QString m_errorString; }; class tst_Gdb : public QObject @@ -166,7 +178,6 @@ class tst_Gdb : public QObject public: tst_Gdb(); - void initTestCase() {} void cleanupTestCase(); void prepare(const QByteArray &function); void run(const QByteArray &label, const QByteArray &expected, @@ -177,80 +188,85 @@ signals: void writeToGdb(const QByteArray &ba); private slots: - void dumpArray(); - void dumpMisc(); - void dumpFoo(); - void dumpQByteArray(); - void dumpQChar(); - void dumpQList_char_star(); - void dumpQList_char(); - void dumpQList_int(); - void dumpQList_QString(); - void dumpQList_QString3(); - void dumpQList_Int3(); - void dumpQStack(); - void dumpQString(); - void dumpQStringList(); - void dumpQWeakPointer(); - void dumpQVector(); + void initTestCase(); + void dump_array(); + void dump_misc(); + void dump_Foo(); + void dump_QByteArray(); + void dump_QChar(); + void dump_QList_char(); + void dump_QList_char_star(); + void dump_QList_int(); + void dump_QList_int_star(); + void dump_QList_QString(); + void dump_QList_QString3(); + void dump_QList_Int3(); + void dump_QStack(); + void dump_QString(); + void dump_QStringList(); + void dump_QWeakPointer_11(); + void dump_QWeakPointer_12(); + void dump_QWeakPointer_13(); + void dump_QWeakPointer_2(); + void dump_QVector(); - void dumpQHash(); + void dump_QHash(); public slots: void dumperCompatibility(); #if 0 - void dumpQAbstractItemAndModelIndex(); - void dumpQAbstractItemModel(); - void dumpQDateTime(); - void dumpQDir(); - void dumpQFile(); - void dumpQFileInfo(); - void dumpQHashNode(); - void dumpQImage(); - void dumpQImageData(); - void dumpQLinkedList(); - void dumpQLocale(); - void dumpQMap(); - void dumpQMapNode(); - void dumpQObject(); - void dumpQObjectChildList(); - void dumpQObjectMethodList(); - void dumpQObjectPropertyList(); - void dumpQObjectSignal(); - void dumpQObjectSignalList(); - void dumpQObjectSlot(); - void dumpQObjectSlotList(); - void dumpQPixmap(); - void dumpQSharedPointer(); - void dumpQTextCodec(); - void dumpQVariant_invalid(); - void dumpQVariant_QString(); - void dumpQVariant_QStringList(); + void dump_QAbstractItemAndModelIndex(); + void dump_QAbstractItemModel(); + void dump_QDateTime(); + void dump_QDir(); + void dump_QFile(); + void dump_QFileInfo(); + void dump_QHashNode(); + void dump_QImage(); + void dump_QImageData(); + void dump_QLinkedList(); + void dump_QLocale(); + void dump_QMap(); + void dump_QMapNode(); + void dump_QObject(); + void dump_QObjectChildList(); + void dump_QObjectMethodList(); + void dump_QObjectPropertyList(); + void dump_QObjectSignal(); + void dump_QObjectSignalList(); + void dump_QObjectSlot(); + void dump_QObjectSlotList(); + void dump_QPixmap(); + void dump_QSharedPointer(); + void dump_QTextCodec(); + void dump_QVariant_invalid(); + void dump_QVariant_QString(); + void dump_QVariant_QStringList(); void dumpStdVector(); #endif private: #if 0 - void dumpQAbstractItemHelper(QModelIndex &index); - void dumpQAbstractItemModelHelper(QAbstractItemModel &m); - void dumpQDateTimeHelper(const QDateTime &d); - void dumpQFileHelper(const QString &name, bool exists); - template void dumpQHashNodeHelper(QHash &hash); - void dumpQImageHelper(const QImage &img); - void dumpQImageDataHelper(QImage &img); - template void dumpQLinkedListHelper(QLinkedList &l); - void dumpQLocaleHelper(QLocale &loc); - template void dumpQMapHelper(QMap &m); - template void dumpQMapNodeHelper(QMap &m); - void dumpQObjectChildListHelper(QObject &o); - void dumpQObjectSignalHelper(QObject &o, int sigNum); + void dump_QAbstractItemHelper(QModelIndex &index); + void dump_QAbstractItemModelHelper(QAbstractItemModel &m); + void dump_QDateTimeHelper(const QDateTime &d); + void dump_QFileHelper(const QString &name, bool exists); + template void dump_QHashNodeHelper(QHash &hash); + void dump_QImageHelper(const QImage &img); + void dump_QImageDataHelper(QImage &img); + template void dump_QLinkedListHelper(QLinkedList &l); + void dump_QLocaleHelper(QLocale &loc); + template void dump_QMapHelper(QMap &m); + template void dump_QMapNodeHelper(QMap &m); + void dump_QObjectChildListHelper(QObject &o); + void dump_QObjectSignalHelper(QObject &o, int sigNum); #if QT_VERSION >= 0x040500 template - void dumpQSharedPointerHelper(QSharedPointer &ptr); + void dump_QSharedPointerHelper(QSharedPointer &ptr); template - void dumpQWeakPointerHelper(QWeakPointer &ptr); + void dump_QWeakPointerHelper(QWeakPointer &ptr); #endif - void dumpQTextCodecHelper(QTextCodec *codec); + void dump_QTextCodecHelper(QTextCodec *codec); #endif private: @@ -454,16 +470,22 @@ void getMapNodeParams(size_t &nodeSize, size_t &valOffset) // ///////////////////////////////////////////////////////////////////////// -Thread::Thread(tst_Gdb *test) +Thread::Thread(tst_Gdb *test) : m_proc(0), m_test(test) { - moveToThread(this); - m_test = test; - m_proc = 0; - m_proc = new QProcess; - m_proc->moveToThread(this); +#ifdef Q_OS_WIN + qDebug() << "\nTHREAD CREATED" << GetCurrentProcessId() << GetCurrentThreadId(); +#else qDebug() << "\nTHREAD CREATED" << getpid() << gettid(); +#endif + moveToThread(this); connect(m_test, SIGNAL(writeToGdb(QByteArray)), - this, SLOT(writeToGdbRequested(QByteArray))); + this, SLOT(writeToGdbRequested(QByteArray)), Qt::QueuedConnection); +} + +void Thread::startup(QProcess *proc) +{ + m_proc = proc; + m_proc->moveToThread(this); connect(m_proc, SIGNAL(error(QProcess::ProcessError)), this, SLOT(handleGdbError(QProcess::ProcessError))); connect(m_proc, SIGNAL(finished(int, QProcess::ExitStatus)), @@ -567,9 +589,6 @@ void Thread::handleGdbStarted() void Thread::run() { - //qDebug() << "\nTHREAD RUN" << getpid() << gettid(); - m_proc->start("./gdb -i mi --args ./tst_gdb run"); - m_proc->waitForStarted(); m_proc->write("break main\n"); m_proc->write("run\n"); m_proc->write("handle SIGSTOP stop pass\n"); @@ -587,11 +606,32 @@ void Thread::run() tst_Gdb::tst_Gdb() : m_thread(this) { - // FIXME: Wait until gdb proc is running. - QTest::qWait(600); - QFile file("tst_gdb.cpp"); - Q_ASSERT(file.open(QIODevice::ReadOnly)); +} + +void tst_Gdb::initTestCase() +{ + //qDebug() << "\nTHREAD RUN" << getpid() << gettid(); + QProcess *gdbProc = new QProcess; + QStringList args; + args << QLatin1String("-i") + << QLatin1String("mi") << QLatin1String("--args") + << qApp->applicationFilePath(); + qDebug() << "Starting" << gdbBinary << args; + gdbProc->start(gdbBinary, args); + if (!gdbProc->waitForStarted()) { + const QString msg = QString::fromLatin1("Unable to run %1: %2").arg(gdbBinary, gdbProc->errorString()); + delete gdbProc; + QSKIP(msg.toLatin1().constData(), SkipAll); + } + + const QString fileName = "tst_gdb.cpp"; + QFile file(fileName); + if (!file.open(QIODevice::ReadOnly)) { + const QString msg = QString::fromLatin1("Unable to open %1: %2").arg(fileName, file.errorString()); + QSKIP(msg.toLatin1().constData(), SkipAll); + } + QByteArray funcName; const QByteArrayList bal = file.readAll().split('\n'); Q_ASSERT(bal.size() > 100); @@ -605,6 +645,7 @@ tst_Gdb::tst_Gdb() m_lineForLabel[funcName + ba.mid(7, pos - 8)] = i + 1; } } + m_thread.startup(gdbProc); } void tst_Gdb::prepare(const QByteArray &function) @@ -712,16 +753,16 @@ void tst_Gdb::cleanupTestCase() ///////////////////////////// Foo structure ///////////////////////////////// -void dumpFoo() +void dump_Foo() { /* A */ Foo f; /* B */ f.doit(); /* D */ (void) 0; } -void tst_Gdb::dumpFoo() +void tst_Gdb::dump_Foo() { - prepare("dumpFoo"); + prepare("dump_Foo"); next(); run("B","{iname='local.f',addr='-',name='f',type='Foo'," "value='-',numchild='5'}", "", 0); @@ -742,19 +783,19 @@ void tst_Gdb::dumpFoo() ///////////////////////////// Array /////////////////////////////////////// -void dumpArray_char() +void dump_array_char() { /* A */ const char s[] = "XYZ"; /* B */ (void) &s; } -void dumpArray_int() +void dump_array_int() { /* A */ int s[] = {1, 2, 3}; /* B */ (void) s; } -void tst_Gdb::dumpArray() +void tst_Gdb::dump_array() { - prepare("dumpArray_char"); + prepare("dump_array_char"); next(); // FIXME: numchild should be '4', not '1' run("B","{iname='local.s',addr='-',name='s',type='char [4]'," @@ -765,7 +806,7 @@ void tst_Gdb::dumpArray() "{value='0 '\\\\000''}]}", "local.s"); - prepare("dumpArray_int"); + prepare("dump_array_int"); next(); // FIXME: numchild should be '3', not '1' run("B","{iname='local.s',addr='-',name='s',type='int [3]'," @@ -779,16 +820,16 @@ void tst_Gdb::dumpArray() ///////////////////////////// Misc stuff ///////////////////////////////// -void dumpMisc() +void dump_misc() { /* A */ int *s = new int(1); /* B */ *s += 1; /* D */ (void) 0; } -void tst_Gdb::dumpMisc() +void tst_Gdb::dump_misc() { - prepare("dumpMisc"); + prepare("dump_misc"); next(); run("B","{iname='local.s',addr='-',name='s',type='int *'," "value='-',numchild='1'}", "", 0); @@ -798,7 +839,7 @@ void tst_Gdb::dumpMisc() } #if 0 -void tst_Gdb::dumpQAbstractItemHelper(QModelIndex &index) +void tst_Gdb::dump_QAbstractItemHelper(QModelIndex &index) { const QAbstractItemModel *model = index.model(); const QString &rowStr = N(index.row()); @@ -834,7 +875,7 @@ void tst_Gdb::dumpQAbstractItemHelper(QModelIndex &index) testDumper(expected, &index, NS"QAbstractItem", true, indexSpecValue); } -void tst_Gdb::dumpQAbstractItemAndModelIndex() +void tst_Gdb::dump_QAbstractItemAndModelIndex() { class PseudoTreeItemModel : public QAbstractItemModel { @@ -928,7 +969,7 @@ void tst_Gdb::dumpQAbstractItemAndModelIndex() // Case 2: ModelIndex with one child. QModelIndex index2 = m2.index(0, 0); - dumpQAbstractItemHelper(index2); + dump_QAbstractItemHelper(index2); qDebug() << "FIXME: invalid indices should not have children"; testDumper(QByteArray("type='$T',value='(0, 0)',numchild='5',children=[" @@ -946,7 +987,7 @@ void tst_Gdb::dumpQAbstractItemAndModelIndex() // Case 3: ModelIndex with two children. QModelIndex index3 = m2.index(1, 0); - dumpQAbstractItemHelper(index3); + dump_QAbstractItemHelper(index3); testDumper(QByteArray("type='$T',value='(1, 0)',numchild='5',children=[" "{name='row',value='1',type='int',numchild='0'}," @@ -982,7 +1023,7 @@ void tst_Gdb::dumpQAbstractItemAndModelIndex() &index4, NS"QModelIndex", true); } -void tst_Gdb::dumpQAbstractItemModelHelper(QAbstractItemModel &m) +void tst_Gdb::dump_QAbstractItemModelHelper(QAbstractItemModel &m) { QByteArray address = ptrToBa(&m); QByteArray expected = QByteArray("tiname='iname',addr='%'," @@ -1015,55 +1056,55 @@ void tst_Gdb::dumpQAbstractItemModelHelper(QAbstractItemModel &m) testDumper(expected, &m, NS"QAbstractItemModel", true); } -void tst_Gdb::dumpQAbstractItemModel() +void tst_Gdb::dump_QAbstractItemModel() { // Case 1: No rows, one column. QStringList strList; QStringListModel model(strList); - dumpQAbstractItemModelHelper(model); + dump_QAbstractItemModelHelper(model); // Case 2: One row, one column. strList << "String 1"; model.setStringList(strList); - dumpQAbstractItemModelHelper(model); + dump_QAbstractItemModelHelper(model); // Case 3: Two rows, one column. strList << "String 2"; model.setStringList(strList); - dumpQAbstractItemModelHelper(model); + dump_QAbstractItemModelHelper(model); // Case 4: No rows, two columns. QStandardItemModel model2(0, 2); - dumpQAbstractItemModelHelper(model2); + dump_QAbstractItemModelHelper(model2); // Case 5: One row, two columns. QStandardItem item1("Item (0,0)"); QStandardItem item2("(Item (0,1)"); model2.appendRow(QList() << &item1 << &item2); - dumpQAbstractItemModelHelper(model2); + dump_QAbstractItemModelHelper(model2); // Case 6: Two rows, two columns QStandardItem item3("Item (1,0"); QStandardItem item4("Item (1,1)"); model2.appendRow(QList() << &item3 << &item4); - dumpQAbstractItemModelHelper(model); + dump_QAbstractItemModelHelper(model); } #endif -void dumpQByteArrayTest() +void dump_QByteArray() { /* A */ QByteArray ba; // Empty object. /* B */ ba.append('a'); // One element. /* C */ ba.append('b'); // Two elements. /* D */ ba = QByteArray(101, 'a'); // > 100 elements. - /* E */ ba = QByteArray("abc\a\n\r\e\'\"?"); // Mixed. + /* E */ ba = QByteArray("abc\a\n\r\033\'\"?"); // Mixed. /* F */ (void) 0; } -void tst_Gdb::dumpQByteArray() +void tst_Gdb::dump_QByteArray() { - prepare("dumpQByteArrayTest"); - if (1 || checkUninitialized) + prepare("dump_QByteArray"); + if (checkUninitialized) run("A","{iname='local.ba',addr='-',name='ba',type='"NS"QByteArray'," "value='',numchild='0'}"); next(); @@ -1095,7 +1136,7 @@ void tst_Gdb::dumpQByteArray() "local.ba"); } -void dumpQCharTest() +void dump_QChar() { /* A */ QChar c('X'); // Printable ASCII character. /* B */ c = QChar(0x600); // Printable non-ASCII character. @@ -1104,9 +1145,9 @@ void dumpQCharTest() /* E */ c = QChar::fromAscii('?'); // The replacement character. /* F */ (void) 0; } -void tst_Gdb::dumpQChar() +void tst_Gdb::dump_QChar() { - prepare("dumpQCharTest"); + prepare("dump_QChar"); next(); // Case 1: Printable ASCII character. @@ -1135,7 +1176,7 @@ void tst_Gdb::dumpQChar() } #if 0 -void tst_Gdb::dumpQDateTimeHelper(const QDateTime &d) +void tst_Gdb::dump_QDateTimeHelper(const QDateTime &d) { QByteArray value; if (d.isNull()) @@ -1161,18 +1202,18 @@ void tst_Gdb::dumpQDateTimeHelper(const QDateTime &d) testDumper(expected, &d, NS"QDateTime", true); } -void tst_Gdb::dumpQDateTime() +void tst_Gdb::dump_QDateTime() { // Case 1: Null object. QDateTime d; - dumpQDateTimeHelper(d); + dump_QDateTimeHelper(d); // Case 2: Non-null object. d = QDateTime::currentDateTime(); - dumpQDateTimeHelper(d); + dump_QDateTimeHelper(d); } -void tst_Gdb::dumpQDir() +void tst_Gdb::dump_QDir() { // Case 1: Current working directory. QDir dir = QDir::current(); @@ -1193,7 +1234,7 @@ void tst_Gdb::dumpQDir() &dir, NS"QDir", true); } -void tst_Gdb::dumpQFileHelper(const QString &name, bool exists) +void tst_Gdb::dump_QFileHelper(const QString &name, bool exists) { QFile file(name); QByteArray filenameAsBase64 = utfToBase64(name); @@ -1205,21 +1246,21 @@ void tst_Gdb::dumpQFileHelper(const QString &name, bool exists) &file, NS"QFile", true); } -void tst_Gdb::dumpQFile() +void tst_Gdb::dump_QFile() { // Case 1: Empty file name => Does not exist. - dumpQFileHelper("", false); + dump_QFileHelper("", false); // Case 2: File that is known to exist. QTemporaryFile file; file.open(); - dumpQFileHelper(file.fileName(), true); + dump_QFileHelper(file.fileName(), true); // Case 3: File with a name that most likely does not exist. - dumpQFileHelper("jfjfdskjdflsdfjfdls", false); + dump_QFileHelper("jfjfdskjdflsdfjfdls", false); } -void tst_Gdb::dumpQFileInfo() +void tst_Gdb::dump_QFileInfo() { QFileInfo fi("."); QByteArray expected("value='%',valueencoded='2',type='$T',numchild='3'," @@ -1304,7 +1345,7 @@ void tst_Gdb::dumpQFileInfo() testDumper(expected, &fi, NS"QFileInfo", true); } -void tst_Gdb::dumpQHash() +void tst_Gdb::dump_QHash() { QHash > hash; hash.insert("Hallo", QList()); @@ -1314,7 +1355,7 @@ void tst_Gdb::dumpQHash() } template -void tst_Gdb::dumpQHashNodeHelper(QHash &hash) +void tst_Gdb::dump_QHashNodeHelper(QHash &hash) { typename QHash::iterator it = hash.begin(); typedef QHashNode HashNode; @@ -1335,30 +1376,30 @@ void tst_Gdb::dumpQHashNodeHelper(QHash &hash) getMapType(), "", sizeof(it.key()), sizeof(it.value())); } -void tst_Gdb::dumpQHashNode() +void tst_Gdb::dump_QHashNode() { // Case 1: simple type -> simple type. QHash hash1; hash1[2] = 3; - dumpQHashNodeHelper(hash1); + dump_QHashNodeHelper(hash1); // Case 2: simple type -> composite type. QHash hash2; hash2[5] = "String 7"; - dumpQHashNodeHelper(hash2); + dump_QHashNodeHelper(hash2); // Case 3: composite type -> simple type QHash hash3; hash3["String 11"] = 13; - dumpQHashNodeHelper(hash3); + dump_QHashNodeHelper(hash3); // Case 4: composite type -> composite type QHash hash4; hash4["String 17"] = "String 19"; - dumpQHashNodeHelper(hash4); + dump_QHashNodeHelper(hash4); } -void tst_Gdb::dumpQImageHelper(const QImage &img) +void tst_Gdb::dump_QImageHelper(const QImage &img) { QByteArray expected = "value='(%x%)',type='"NS"QImage',numchild='1'," "children=[{name='data',type='"NS"QImageData',addr='%'}]" @@ -1368,22 +1409,22 @@ void tst_Gdb::dumpQImageHelper(const QImage &img) testDumper(expected, &img, NS"QImage", true); } -void tst_Gdb::dumpQImage() +void tst_Gdb::dump_QImage() { // Case 1: Null image. QImage img; - dumpQImageHelper(img); + dump_QImageHelper(img); // Case 2: Normal image. img = QImage(3, 700, QImage::Format_RGB555); - dumpQImageHelper(img); + dump_QImageHelper(img); // Case 3: Invalid image. img = QImage(100, 0, QImage::Format_Invalid); - dumpQImageHelper(img); + dump_QImageHelper(img); } -void tst_Gdb::dumpQImageDataHelper(QImage &img) +void tst_Gdb::dump_QImageDataHelper(QImage &img) { const QByteArray ba(QByteArray::fromRawData((const char*) img.bits(), img.numBytes())); QByteArray expected = QByteArray("tiname='$I',addr='$A',type='"NS"QImageData',"). @@ -1393,23 +1434,23 @@ void tst_Gdb::dumpQImageDataHelper(QImage &img) testDumper(expected, &img, NS"QImageData", false); } -void tst_Gdb::dumpQImageData() +void tst_Gdb::dump_QImageData() { // Case 1: Null image. QImage img; - dumpQImageDataHelper(img); + dump_QImageDataHelper(img); // Case 2: Normal image. img = QImage(3, 700, QImage::Format_RGB555); - dumpQImageDataHelper(img); + dump_QImageDataHelper(img); // Case 3: Invalid image. img = QImage(100, 0, QImage::Format_Invalid); - dumpQImageDataHelper(img); + dump_QImageDataHelper(img); } template -void tst_Gdb::dumpQLinkedListHelper(QLinkedList &l) +void tst_Gdb::dump_QLinkedListHelper(QLinkedList &l) { const int size = qMin(l.size(), 1000); const QString &sizeStr = N(size); @@ -1448,35 +1489,35 @@ void tst_Gdb::dumpQLinkedListHelper(QLinkedList &l) testDumper(expected, &l, NS"QLinkedList", true, elemTypeStr); } -void tst_Gdb::dumpQLinkedList() +void tst_Gdb::dump_QLinkedList() { // Case 1: Simple element type. QLinkedList l; // Case 1.1: Empty list. - dumpQLinkedListHelper(l); + dump_QLinkedListHelper(l); // Case 1.2: One element. l.append(2); - dumpQLinkedListHelper(l); + dump_QLinkedListHelper(l); // Case 1.3: Two elements l.append(3); - dumpQLinkedListHelper(l); + dump_QLinkedListHelper(l); // Case 2: Composite element type. QLinkedList l2; // Case 2.1: Empty list. - dumpQLinkedListHelper(l2); + dump_QLinkedListHelper(l2); // Case 2.2: One element. l2.append("Teststring 1"); - dumpQLinkedListHelper(l2); + dump_QLinkedListHelper(l2); // Case 2.3: Two elements. l2.append("Teststring 2"); - dumpQLinkedListHelper(l2); + dump_QLinkedListHelper(l2); // Case 2.4: > 1000 elements. for (int i = 3; i <= 1002; ++i) @@ -1487,11 +1528,11 @@ void tst_Gdb::dumpQLinkedList() l3.append(new int(5)); l3.append(new int(7)); l3.append(0); - dumpQLinkedListHelper(l3); + dump_QLinkedListHelper(l3); } #if 0 - void tst_Gdb::dumpQLinkedList() + void tst_Gdb::dump_QLinkedList() { // Case 1: Simple element type. QLinkedList l; @@ -1566,12 +1607,12 @@ void tst_Gdb::dumpQLinkedList() l3.append(new int(5)); l3.append(new int(7)); l3.append(0); - //dumpQLinkedListHelper(l3); + //dump_QLinkedListHelper(l3); testDumper("", &l, NS"QLinkedList", true, NS"QString"); } #endif -void tst_Gdb::dumpQLocaleHelper(QLocale &loc) +void tst_Gdb::dump_QLocaleHelper(QLocale &loc) { QByteArray expected = QByteArray("value='%',type='$T',numchild='8'," "children=[{name='country',%}," @@ -1602,23 +1643,23 @@ void tst_Gdb::dumpQLocaleHelper(QLocale &loc) testDumper(expected, &loc, NS"QLocale", true); } -void tst_Gdb::dumpQLocale() +void tst_Gdb::dump_QLocale() { QLocale english(QLocale::English); - dumpQLocaleHelper(english); + dump_QLocaleHelper(english); QLocale german(QLocale::German); - dumpQLocaleHelper(german); + dump_QLocaleHelper(german); QLocale chinese(QLocale::Chinese); - dumpQLocaleHelper(chinese); + dump_QLocaleHelper(chinese); QLocale swahili(QLocale::Swahili); - dumpQLocaleHelper(swahili); + dump_QLocaleHelper(swahili); } template - void tst_Gdb::dumpQMapHelper(QMap &map) + void tst_Gdb::dump_QMapHelper(QMap &map) { QByteArray sizeStr(valToString(map.size())); size_t nodeSize; @@ -1669,71 +1710,71 @@ template true, getMapType(), "", 0, 0, nodeSize, valOff); } -void tst_Gdb::dumpQMap() +void tst_Gdb::dump_QMap() { // Case 1: Simple type -> simple type. QMap map1; // Case 1.1: Empty map. - dumpQMapHelper(map1); + dump_QMapHelper(map1); // Case 1.2: One element. map1[2] = 3; - dumpQMapHelper(map1); + dump_QMapHelper(map1); // Case 1.3: Two elements. map1[3] = 5; - dumpQMapHelper(map1); + dump_QMapHelper(map1); // Case 2: Simple type -> composite type. QMap map2; // Case 2.1: Empty Map. - dumpQMapHelper(map2); + dump_QMapHelper(map2); // Case 2.2: One element. map2[5] = "String 7"; - dumpQMapHelper(map2); + dump_QMapHelper(map2); // Case 2.3: Two elements. map2[7] = "String 11"; - dumpQMapHelper(map2); + dump_QMapHelper(map2); // Case 3: Composite type -> simple type. QMap map3; // Case 3.1: Empty map. - dumpQMapHelper(map3); + dump_QMapHelper(map3); // Case 3.2: One element. map3["String 13"] = 11; - dumpQMapHelper(map3); + dump_QMapHelper(map3); // Case 3.3: Two elements. map3["String 17"] = 13; - dumpQMapHelper(map3); + dump_QMapHelper(map3); // Case 4: Composite type -> composite type. QMap map4; // Case 4.1: Empty map. - dumpQMapHelper(map4); + dump_QMapHelper(map4); // Case 4.2: One element. map4["String 19"] = "String 23"; - dumpQMapHelper(map4); + dump_QMapHelper(map4); // Case 4.3: Two elements. map4["String 29"] = "String 31"; - dumpQMapHelper(map4); + dump_QMapHelper(map4); // Case 4.4: Different value, same key (multimap functionality). map4["String 29"] = "String 37"; - dumpQMapHelper(map4); + dump_QMapHelper(map4); } template - void tst_Gdb::dumpQMapNodeHelper(QMap &m) + void tst_Gdb::dump_QMapNodeHelper(QMap &m) { typename QMap::iterator it = m.begin(); const K &key = it.key(); @@ -1753,30 +1794,30 @@ template true, getMapType(), "", 0, 0, nodeSize, valOffset); } -void tst_Gdb::dumpQMapNode() +void tst_Gdb::dump_QMapNode() { // Case 1: simple type -> simple type. QMap map; map[2] = 3; - dumpQMapNodeHelper(map); + dump_QMapNodeHelper(map); // Case 2: simple type -> composite type. QMap map2; map2[3] = "String 5"; - dumpQMapNodeHelper(map2); + dump_QMapNodeHelper(map2); // Case 3: composite type -> simple type. QMap map3; map3["String 7"] = 11; - dumpQMapNodeHelper(map3); + dump_QMapNodeHelper(map3); // Case 4: composite type -> composite type. QMap map4; map4["String 13"] = "String 17"; - dumpQMapNodeHelper(map4); + dump_QMapNodeHelper(map4); } -void tst_Gdb::dumpQObject() +void tst_Gdb::dump_QObject() { QObject parent; testDumper("value='',valueencoded='2',type='$T',displayedtype='QObject'," @@ -1835,7 +1876,7 @@ void tst_Gdb::dumpQObject() &child, NS"QObject", false); } -void tst_Gdb::dumpQObjectChildListHelper(QObject &o) +void tst_Gdb::dump_QObjectChildListHelper(QObject &o) { const QObjectList children = o.children(); const int size = children.size(); @@ -1855,22 +1896,22 @@ void tst_Gdb::dumpQObjectChildListHelper(QObject &o) testDumper(expected, &o, NS"QObjectChildList", true); } -void tst_Gdb::dumpQObjectChildList() +void tst_Gdb::dump_QObjectChildList() { // Case 1: Object with no children. QObject o; - dumpQObjectChildListHelper(o); + dump_QObjectChildListHelper(o); // Case 2: Object with one child. QObject o2(&o); - dumpQObjectChildListHelper(o); + dump_QObjectChildListHelper(o); // Case 3: Object with two children. QObject o3(&o); - dumpQObjectChildListHelper(o); + dump_QObjectChildListHelper(o); } -void tst_Gdb::dumpQObjectMethodList() +void tst_Gdb::dump_QObjectMethodList() { QStringListModel m; testDumper("addr='',type='$T',numchild='20'," @@ -1898,7 +1939,7 @@ void tst_Gdb::dumpQObjectMethodList() &m, NS"QObjectMethodList", true); } -void tst_Gdb::dumpQObjectPropertyList() +void tst_Gdb::dump_QObjectPropertyList() { // Case 1: Model without a parent. QStringListModel m(QStringList() << "Test1" << "Test2"); @@ -1951,7 +1992,7 @@ public: typedef QVector ConnLists; -void tst_Gdb::dumpQObjectSignalHelper(QObject &o, int sigNum) +void tst_Gdb::dump_QObjectSignalHelper(QObject &o, int sigNum) { //qDebug() << o.objectName() << sigNum; QByteArray expected("addr='',numchild='1',type='"NS"QObjectSignal'"); @@ -1995,7 +2036,7 @@ void tst_Gdb::dumpQObjectSignalHelper(QObject &o, int sigNum) testDumper(expected, &o, NS"QObjectSignal", true, "", "", sigNum); } -void tst_Gdb::dumpQObjectSignal() +void tst_Gdb::dump_QObjectSignal() { // Case 1: Simple QObject. QObject o; @@ -2007,7 +2048,7 @@ void tst_Gdb::dumpQObjectSignal() // Case 2: QAbstractItemModel with no connections. QStringListModel m(QStringList() << "Test1" << "Test2"); for (int signalIndex = 0; signalIndex < 17; ++signalIndex) - dumpQObjectSignalHelper(m, signalIndex); + dump_QObjectSignalHelper(m, signalIndex); // Case 3: QAbstractItemModel with connections to itself and to another // object, using different connection types. @@ -2027,10 +2068,10 @@ void tst_Gdb::dumpQObjectSignal() &m, SLOT(revert()), Qt::UniqueConnection); #endif for (int signalIndex = 0; signalIndex < 17; ++signalIndex) - dumpQObjectSignalHelper(m, signalIndex); + dump_QObjectSignalHelper(m, signalIndex); } -void tst_Gdb::dumpQObjectSignalList() +void tst_Gdb::dump_QObjectSignalList() { // Case 1: Simple QObject. QObject o; @@ -2120,7 +2161,7 @@ QByteArray slotIndexList(const QObject *ob) return slotIndices; } -void tst_Gdb::dumpQObjectSlot() +void tst_Gdb::dump_QObjectSlot() { // Case 1: Simple QObject. QObject o; @@ -2176,7 +2217,7 @@ void tst_Gdb::dumpQObjectSlot() } -void tst_Gdb::dumpQObjectSlotList() +void tst_Gdb::dump_QObjectSlotList() { // Case 1: Simple QObject. QObject o; @@ -2227,7 +2268,7 @@ void tst_Gdb::dumpQObjectSlotList() &m, NS"QObjectSlotList", true); } -void tst_Gdb::dumpQPixmap() +void tst_Gdb::dump_QPixmap() { // Case 1: Null Pixmap. QPixmap p; @@ -2255,7 +2296,7 @@ void tst_Gdb::dumpQPixmap() #if QT_VERSION >= 0x040500 template -void tst_Gdb::dumpQSharedPointerHelper(QSharedPointer &ptr) +void tst_Gdb::dump_QSharedPointerHelper(QSharedPointer &ptr) { struct Cheater : public QSharedPointer { @@ -2294,54 +2335,54 @@ void tst_Gdb::dumpQSharedPointerHelper(QSharedPointer &ptr) } #endif -void tst_Gdb::dumpQSharedPointer() +void tst_Gdb::dump_QSharedPointer() { #if QT_VERSION >= 0x040500 // Case 1: Simple type. // Case 1.1: Null pointer. QSharedPointer simplePtr; - dumpQSharedPointerHelper(simplePtr); + dump_QSharedPointerHelper(simplePtr); // Case 1.2: Non-null pointer, QSharedPointer simplePtr2(new int(99)); - dumpQSharedPointerHelper(simplePtr2); + dump_QSharedPointerHelper(simplePtr2); // Case 1.3: Shared pointer. QSharedPointer simplePtr3 = simplePtr2; - dumpQSharedPointerHelper(simplePtr2); + dump_QSharedPointerHelper(simplePtr2); // Case 1.4: Weak pointer. QWeakPointer simplePtr4(simplePtr2); - dumpQSharedPointerHelper(simplePtr2); + dump_QSharedPointerHelper(simplePtr2); // Case 2: Composite type. // Case 1.1: Null pointer. QSharedPointer compositePtr; // TODO: This case is not handled in gdbmacros.cpp (segfault!) - //dumpQSharedPointerHelper(compoistePtr); + //dump_QSharedPointerHelper(compoistePtr); // Case 1.2: Non-null pointer, QSharedPointer compositePtr2(new QString("Test")); - dumpQSharedPointerHelper(compositePtr2); + dump_QSharedPointerHelper(compositePtr2); // Case 1.3: Shared pointer. QSharedPointer compositePtr3 = compositePtr2; - dumpQSharedPointerHelper(compositePtr2); + dump_QSharedPointerHelper(compositePtr2); // Case 1.4: Weak pointer. QWeakPointer compositePtr4(compositePtr2); - dumpQSharedPointerHelper(compositePtr2); + dump_QSharedPointerHelper(compositePtr2); #endif } -void tst_Gdb::dumpQVariant_invalid() +void tst_Gdb::dump_QVariant_invalid() { QVariant v; testDumper("value='(invalid)',type='$T',numchild='0'", &v, NS"QVariant", false); } -void tst_Gdb::dumpQVariant_QString() +void tst_Gdb::dump_QVariant_QString() { QVariant v = "abc"; testDumper("value='KFFTdHJpbmcpICJhYmMi',valueencoded='5',type='$T'," @@ -2356,7 +2397,7 @@ void tst_Gdb::dumpQVariant_QString() */ } -void tst_Gdb::dumpQVariant_QStringList() +void tst_Gdb::dump_QVariant_QStringList() { QVariant v = QStringList() << "Hi"; testDumper("value='(QStringList) ',type='$T',numchild='1'," @@ -2366,7 +2407,7 @@ void tst_Gdb::dumpQVariant_QStringList() &v, NS"QVariant", true); } -void tst_Gdb::dumpStdVector() +void tst_Gdb::dump_StdVector() { std::vector *> vector; QByteArray inner = "std::list *"; @@ -2393,7 +2434,7 @@ void tst_Gdb::dumpStdVector() vector.push_back(0); } -void tst_Gdb::dumpQTextCodecHelper(QTextCodec *codec) +void tst_Gdb::dump_QTextCodecHelper(QTextCodec *codec) { const QByteArray name = codec->name().toBase64(); QByteArray expected = QByteArray("value='%',valueencoded='1',type='$T'," @@ -2403,51 +2444,20 @@ void tst_Gdb::dumpQTextCodecHelper(QTextCodec *codec) testDumper(expected, codec, NS"QTextCodec", true); } -void tst_Gdb::dumpQTextCodec() +void tst_Gdb::dump_QTextCodec() { const QList &codecNames = QTextCodec::availableCodecs(); foreach (const QByteArray &codecName, codecNames) - dumpQTextCodecHelper(QTextCodec::codecForName(codecName)); + dump_QTextCodecHelper(QTextCodec::codecForName(codecName)); } -#if QT_VERSION >= 0x040500 -template - size_t offsetOf(const T1 *klass, const T2 *member) -{ - return static_cast(reinterpret_cast(member) - - reinterpret_cast(klass)); -} - -template -void tst_Gdb::dumpQWeakPointerHelper(QWeakPointer &ptr) -{ - typedef QtSharedPointer::ExternalRefCountData Data; - const size_t dataOffset = 0; - const Data *d = *reinterpret_cast( - reinterpret_cast(&ptr) + dataOffset); - const int *weakRefPtr = reinterpret_cast(&d->weakref); - const int *strongRefPtr = reinterpret_cast(&d->strongref); - T *data = ptr.toStrongRef().data(); - const QString dataStr = valToString(*data); - QByteArray expected("value='"); - if (isSimpleType()) - expected.append(dataStr); - expected.append("',valuedisabled='true',numchild='1',children=[{name='data',addr='"). - append(ptrToBa(data)).append("',type='").append(typeToString()). - append("',value='").append(dataStr).append("'},{name='weakref',value='"). - append(valToString(*weakRefPtr)).append("',type='int',addr='"). - append(ptrToBa(weakRefPtr)).append("',numchild='0'},{name='strongref',value='"). - append(valToString(*strongRefPtr)).append("',type='int',addr='"). - append(ptrToBa(strongRefPtr)).append("',numchild='0'}]"); - testDumper(expected, &ptr, NS"QWeakPointer", true, typeToString()); -} -#endif #endif // #if 0 ///////////////////////////// QWeakPointer ///////////////////////////////// #if QT_VERSION >= 0x040500 -void dumpQWeakPointer_11() + +void dump_QWeakPointer_11() { // Case 1: Simple type. // Case 1.1: Null pointer. @@ -2456,7 +2466,23 @@ void dumpQWeakPointer_11() /* B */ (void) 0; } -void dumpQWeakPointer_12() +void tst_Gdb::dump_QWeakPointer_11() +{ + // Case 1.1: Null pointer. + prepare("dump_QWeakPointer_11"); + if (checkUninitialized) + run("A","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='0'}"); + next(); + next(); + run("B","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='0'}," + "{iname='local.wp',addr='-',name='wp'," + "type='"NS"QWeakPointer',value='',numchild='0'}"); +} + + +void dump_QWeakPointer_12() { // Case 1.2: Weak pointer is unique. /* A */ QSharedPointer sp(new int(99)); @@ -2464,103 +2490,118 @@ void dumpQWeakPointer_12() /* B */ (void) 0; } -void dumpQWeakPointer_13() +void tst_Gdb::dump_QWeakPointer_12() +{ + // Case 1.2: Weak pointer is unique. + prepare("dump_QWeakPointer_12"); + if (checkUninitialized) + run("A","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='0'}"); + next(); + next(); + run("B","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='3'}," + "{iname='local.wp',addr='-',name='wp'," + "type='"NS"QWeakPointer',value='',numchild='3'}"); + run("B","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='3',children=[" + "{name='data',type='int',value='99',numchild='0'}," + "{name='weakref',value='2',type='int',numchild='0'}," + "{name='strongref',value='2',type='int',numchild='0'}]}," + "{iname='local.wp',addr='-',name='wp'," + "type='"NS"QWeakPointer',value='',numchild='3',children=[" + "{name='data',type='int',value='99',numchild='0'}," + "{name='weakref',value='2',type='int',numchild='0'}," + "{name='strongref',value='2',type='int',numchild='0'}]}", + "local.sp,local.wp"); +} + + +void dump_QWeakPointer_13() { // Case 1.3: There are other weak pointers. /* A */ QSharedPointer sp(new int(99)); /* */ QWeakPointer wp = sp.toWeakRef(); + /* */ QWeakPointer wp2 = sp.toWeakRef(); /* B */ (void) 0; } -void dumpQWeakPointer_14() +void tst_Gdb::dump_QWeakPointer_13() { - // Case 1.4: There are other strong shared pointers as well. - /* A */ QSharedPointer sp(new int(99)); - /* */ QSharedPointer sp2(sp); - /* B */ (void) 0; + // Case 1.3: There are other weak pointers. + prepare("dump_QWeakPointer_13"); + if (checkUninitialized) + run("A","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='0'}"); + next(); + next(); + next(); + run("B","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='3'}," + "{iname='local.wp',addr='-',name='wp'," + "type='"NS"QWeakPointer',value='',numchild='3'}," + "{iname='local.wp2',addr='-',name='wp2'," + "type='"NS"QWeakPointer',value='',numchild='3'}"); + run("B","{iname='local.sp',addr='-',name='sp'," + "type='"NS"QSharedPointer',value='',numchild='3',children=[" + "{name='data',type='int',value='99',numchild='0'}," + "{name='weakref',value='3',type='int',numchild='0'}," + "{name='strongref',value='3',type='int',numchild='0'}]}," + "{iname='local.wp',addr='-',name='wp'," + "type='"NS"QWeakPointer',value='',numchild='3',children=[" + "{name='data',type='int',value='99',numchild='0'}," + "{name='weakref',value='3',type='int',numchild='0'}," + "{name='strongref',value='3',type='int',numchild='0'}]}," + "{iname='local.wp2',addr='-',name='wp2'," + "type='"NS"QWeakPointer',value='',numchild='3'}", + "local.sp,local.wp"); } -void dumpQWeakPointer_2() + +void dump_QWeakPointer_2() { // Case 2: Composite type. /* A */ QSharedPointer sp(new QString("Test")); /* */ QWeakPointer wp = sp.toWeakRef(); /* B */ (void) 0; } -#endif -void tst_Gdb::dumpQWeakPointer() +void tst_Gdb::dump_QWeakPointer_2() { -#if QT_VERSION >= 0x040500 - -return; - - // Case 1.1: Null pointer. - prepare("dumpQWeakPointer_11"); + // Case 2: Composite type. + prepare("dump_QWeakPointer_2"); if (checkUninitialized) run("A","{iname='local.sp',addr='-',name='sp'," - "type='"NS"QSharedPointer',value='',numchild='0'}"); + "type='"NS"QSharedPointer<"NS"QString>',value='',numchild='0'}"); + next(); next(); run("B","{iname='local.sp',addr='-',name='sp'," - "type='"NS"QSharedPointer',value='<0 items>',numchild='1'}"); - -/* - //,numchild='1',children=[{name='data',addr='"). - append(ptrToBa(data)).append("',type='").append(typeToString()). - append("',value='").append(dataStr).append("'},{name='weakref',value='"). - append(valToString(*weakRefPtr)).append("',type='int',addr='"). - append(ptrToBa(weakRefPtr)).append("',numchild='0'},{name='strongref',value='"). - append(valToString(*strongRefPtr)).append("',type='int',addr='"). - append(ptrToBa(strongRefPtr)).append("',numchild='0'}]"); - - // Case 1.2: Weak pointer is unique. -void tst_Gdb::dumpQWeakPointerHelper(QWeakPointer &ptr) -{ - typedef QtSharedPointer::ExternalRefCountData Data; - const size_t dataOffset = 0; - const Data *d = *reinterpret_cast( - reinterpret_cast(&ptr) + dataOffset); - const int *weakRefPtr = reinterpret_cast(&d->weakref); - const int *strongRefPtr = reinterpret_cast(&d->strongref); - T *data = ptr.toStrongRef().data(); - const QString dataStr = valToString(*data); - QByteArray expected("value='"); - if (isSimpleType()) - expected.append(dataStr); - expected.append("',valuedisabled='true',numchild='1',children=[{name='data',addr='"). - append(ptrToBa(data)).append("',type='").append(typeToString()). - append("',value='").append(dataStr).append("'},{name='weakref',value='"). - append(valToString(*weakRefPtr)).append("',type='int',addr='"). - append(ptrToBa(weakRefPtr)).append("',numchild='0'},{name='strongref',value='"). - append(valToString(*strongRefPtr)).append("',type='int',addr='"). - append(ptrToBa(strongRefPtr)).append("',numchild='0'}]"); - testDumper(expected, &ptr, NS"QWeakPointer", true, typeToString()); + "type='"NS"QSharedPointer<"NS"QString>',value='',numchild='3',children=[" + "{name='data',type='"NS"QString'," + "valueencoded='7',value='5400650073007400',numchild='0'}," + "{name='weakref',value='2',type='int',numchild='0'}," + "{name='strongref',value='2',type='int',numchild='0'}]}," + "{iname='local.wp',addr='-',name='wp'," + "type='"NS"QWeakPointer<"NS"QString>',value='',numchild='3',children=[" + "{name='data',type='"NS"QString'," + "valueencoded='7',value='5400650073007400',numchild='0'}," + "{name='weakref',value='2',type='int',numchild='0'}," + "{name='strongref',value='2',type='int',numchild='0'}]}", + "local.sp,local.wp"); } +#else // before Qt 4.5 - QSharedPointer sp(new int(99)); - wp = sp.toWeakRef(); - dumpQWeakPointerHelper(wp); +void tst_Gdb::dump_QWeakPointer_11() {} +void tst_Gdb::dump_QWeakPointer_12() {} +void tst_Gdb::dump_QWeakPointer_13() {} +void tst_Gdb::dump_QWeakPointer_2() {} - // Case 1.3: There are other weak pointers. - QWeakPointer wp2 = sp.toWeakRef(); - dumpQWeakPointerHelper(wp); - - // Case 1.4: There are other strong shared pointers as well. - QSharedPointer sp2(sp); - dumpQWeakPointerHelper(wp); - - // Case 2: Composite type. - QSharedPointer spS(new QString("Test")); - QWeakPointer wpS = spS.toWeakRef(); - dumpQWeakPointerHelper(wpS); -*/ #endif -} ///////////////////////////// QHash ////////////////////////////// -void dumpQHash_QString_QString() +void dump_QHash_QString_QString() { /* A */ QHash h; /* B */ h["hello"] = "world"; @@ -2568,7 +2609,7 @@ void dumpQHash_QString_QString() /* D */ (void) 0; } -void dumpQHash_int_int() +void dump_QHash_int_int() { /* A */ QHash h; /* B */ h[43] = 44; @@ -2576,7 +2617,7 @@ void dumpQHash_int_int() /* D */ (void) 0; } -void tst_Gdb::dumpQHash() +void tst_Gdb::dump_QHash() { // Need to check the following combinations: // int-key optimization, small value @@ -2590,7 +2631,7 @@ void tst_Gdb::dumpQHash() // complex key //struct NodeL { void *next; uint h; void *k; void *v; } nodeL - prepare("dumpQHash_int_int"); + prepare("dump_QHash_int_int"); if (checkUninitialized) run("A","{iname='local.h',addr='-',name='h'," "type='"NS"QHash',value=''," @@ -2605,7 +2646,7 @@ void tst_Gdb::dumpQHash() "{name='45',value='46'}]}", "local.h"); - prepare("dumpQHash_QString_QString"); + prepare("dump_QHash_QString_QString"); if (checkUninitialized) run("A","{iname='local.h',addr='-',name='h'," "type='"NS"QHash<"NS"QString, "NS"QString>',value=''," @@ -2638,7 +2679,7 @@ void tst_Gdb::dumpQHash() ///////////////////////////// QList ///////////////////////////////// -void dumpQList_int() +void dump_QList_int() { /* A */ QList list; /* B */ list.append(1); @@ -2646,9 +2687,9 @@ void dumpQList_int() /* D */ (void) 0; } -void tst_Gdb::dumpQList_int() +void tst_Gdb::dump_QList_int() { - prepare("dumpQList_int"); + prepare("dump_QList_int"); if (checkUninitialized) run("A","{iname='local.list',addr='-',name='list'," "type='"NS"QList',value='',numchild='0'}"); @@ -2672,18 +2713,46 @@ void tst_Gdb::dumpQList_int() } +///////////////////////////// QList ///////////////////////////////// + +void dump_QList_int_star() +{ + /* A */ QList list; + /* B */ list.append(new int(1)); + /* C */ list.append(0); + /* D */ list.append(new int(2)); + /* E */ (void) 0; +} + +void tst_Gdb::dump_QList_int_star() +{ + prepare("dump_QList_int_star"); + if (checkUninitialized) + run("A","{iname='local.list',addr='-',name='list'," + "type='"NS"QList',value='',numchild='0'}"); + next(); + next(); + next(); + next(); + run("E","{iname='local.list',addr='-',name='list'," + "type='"NS"QList',value='<3 items>',numchild='3'," + "childtype='int',childnumchild='0',children=[" + "{value='1'},{value='',type='int *'},{value='2'}]}", "local.list"); +} + + ///////////////////////////// QList ///////////////////////////////// -void dumpQList_char() +void dump_QList_char() { /* A */ QList list; /* B */ list.append('a'); /* C */ (void) 0; } -void tst_Gdb::dumpQList_char() +void tst_Gdb::dump_QList_char() { - prepare("dumpQList_char"); + prepare("dump_QList_char"); if (checkUninitialized) run("A","{iname='local.list',addr='-',name='list'," "type='"NS"QList',value='',numchild='0'}"); @@ -2702,7 +2771,7 @@ void tst_Gdb::dumpQList_char() ///////////////////////////// QList ///////////////////////////////// -void dumpQList_char_star() +void dump_QList_char_star() { /* A */ QList list; /* B */ list.append("a"); @@ -2711,9 +2780,9 @@ void dumpQList_char_star() /* E */ (void) 0; } -void tst_Gdb::dumpQList_char_star() +void tst_Gdb::dump_QList_char_star() { - prepare("dumpQList_char_star"); + prepare("dump_QList_char_star"); if (checkUninitialized) run("A","{iname='local.list',addr='-',name='list'," "type='"NS"QList',value='',numchild='0'}"); @@ -2740,16 +2809,16 @@ void tst_Gdb::dumpQList_char_star() ///////////////////////////// QList ///////////////////////////////////// -void dumpQList_QString() +void dump_QList_QString() { /* A */ QList list; /* B */ list.append("Hallo"); /* C */ (void) 0; } -void tst_Gdb::dumpQList_QString() +void tst_Gdb::dump_QList_QString() { - prepare("dumpQList_QString"); + prepare("dump_QList_QString"); if (0 && checkUninitialized) run("A","{iname='local.list',addr='-',name='list'," "type='"NS"QList<"NS"QString>',value='',numchild='0'}"); @@ -2768,16 +2837,16 @@ void tst_Gdb::dumpQList_QString() ///////////////////////////// QList /////////////////////////////////// -void dumpQList_QString3() +void dump_QList_QString3() { /* A */ QList list; /* B */ list.append(QString3()); /* C */ (void) 0; } -void tst_Gdb::dumpQList_QString3() +void tst_Gdb::dump_QList_QString3() { - prepare("dumpQList_QString3"); + prepare("dump_QList_QString3"); if (checkUninitialized) run("A","{iname='local.list',addr='-',name='list'," "type='"NS"QList',value='',numchild='0'}"); @@ -2806,16 +2875,16 @@ void tst_Gdb::dumpQList_QString3() ///////////////////////////// QList ///////////////////////////////////// -void dumpQList_Int3() +void dump_QList_Int3() { /* A */ QList list; /* B */ list.append(Int3()); /* C */ (void) 0; } -void tst_Gdb::dumpQList_Int3() +void tst_Gdb::dump_QList_Int3() { - prepare("dumpQList_Int3"); + prepare("dump_QList_Int3"); if (checkUninitialized) run("A","{iname='local.list',addr='-',name='list'," "type='"NS"QList',value='',numchild='0'}"); @@ -2840,7 +2909,7 @@ void tst_Gdb::dumpQList_Int3() ///////////////////////////// QVector ///////////////////////////////// -void dumpQStack() +void dump_QStack() { /* A */ QStack v; /* B */ v.append(3); @@ -2848,9 +2917,9 @@ void dumpQStack() /* D */ (void) 0; } -void tst_Gdb::dumpQStack() +void tst_Gdb::dump_QStack() { - prepare("dumpQStack"); + prepare("dump_QStack"); if (checkUninitialized) run("A","{iname='local.v',addr='-',name='v',type='"NS"QStack'," "value='',numchild='0'}"); @@ -2878,7 +2947,7 @@ void tst_Gdb::dumpQStack() ///////////////////////////// QString ///////////////////////////////////// -void dumpQString() +void dump_QString() { /* A */ QString s; /* B */ s = "hallo"; @@ -2886,9 +2955,9 @@ void dumpQString() /* D */ (void) 0; } -void tst_Gdb::dumpQString() +void tst_Gdb::dump_QString() { - prepare("dumpQString"); + prepare("dump_QString"); if (checkUninitialized) run("A","{iname='local.s',addr='-',name='s',type='"NS"QString'," "value='',numchild='0'}"); @@ -2920,7 +2989,7 @@ void tst_Gdb::dumpQString() ///////////////////////////// QStringList ///////////////////////////////// -void dumpQStringList() +void dump_QStringList() { /* A */ QStringList s; /* B */ s.append("hello"); @@ -2928,9 +2997,9 @@ void dumpQStringList() /* D */ (void) 0; } -void tst_Gdb::dumpQStringList() +void tst_Gdb::dump_QStringList() { - prepare("dumpQStringList"); + prepare("dump_QStringList"); if (checkUninitialized) run("A","{iname='local.s',addr='-',name='s',type='"NS"QStringList'," "value='',numchild='0'}"); @@ -2961,7 +3030,7 @@ void tst_Gdb::dumpQStringList() ///////////////////////////// QVector ///////////////////////////////// -void dumpQVector() +void dump_QVector() { /* A */ QVector v; /* B */ v.append(3.14); @@ -2969,9 +3038,9 @@ void dumpQVector() /* D */ (void) 0; } -void tst_Gdb::dumpQVector() +void tst_Gdb::dump_QVector() { - prepare("dumpQVector"); + prepare("dump_QVector"); if (checkUninitialized) run("A","{iname='local.v',addr='-',name='v',type='"NS"QVector'," "value='',numchild='0'}"); @@ -3010,6 +3079,31 @@ int main(int argc, char *argv[]) return 0; } + if (argc == 2 && QByteArray(argv[1]) == "debug") { + dump_array_char(); + dump_array_int(); + dump_Foo(); + dump_misc(); + dump_QByteArray(); + dump_QChar(); + dump_QHash_int_int(); + dump_QList_char(); + dump_QList_char_star(); + dump_QList_int(); + dump_QList_int_star(); + dump_QList_Int3(); + dump_QList_QString(); + dump_QList_QString3(); + dump_QStack(); + dump_QString(); + dump_QStringList(); + dump_QVector(); + dump_QWeakPointer_11(); + dump_QWeakPointer_12(); + dump_QWeakPointer_13(); + dump_QWeakPointer_2(); + } + try { // Plain call. Start the testing. QCoreApplication app(argc, argv); diff --git a/tests/manual/trklauncher/main.cpp b/tests/manual/trklauncher/main.cpp index 35336632173..9938f847931 100644 --- a/tests/manual/trklauncher/main.cpp +++ b/tests/manual/trklauncher/main.cpp @@ -126,7 +126,7 @@ static TrkLauncherPtr parseArguments(const QStringList &arguments, bool *bluetoo int main(int argc, char *argv[]) { QCoreApplication app(argc, argv); - QCoreApplication::setApplicationName(QLatin1String("trklauncher")); + QCoreApplication::setApplicationName(QLatin1String("TRKlauncher")); QCoreApplication::setOrganizationName(QLatin1String("Nokia")); bool bluetooth;