diff --git a/share/qtcreator/qml/qmlobserver/main.cpp b/share/qtcreator/qml/qmlobserver/main.cpp index 5189a70872c1eaadfedfdc0beca379c6224e1789..08958f57df53d7b4eb6b68df887f05d31613f59a 100644 --- a/share/qtcreator/qml/qmlobserver/main.cpp +++ b/share/qtcreator/qml/qmlobserver/main.cpp @@ -50,7 +50,7 @@ #include <QDebug> #include <QMessageBox> #include "qdeclarativetester.h" -#include "private/qdeclarativedebughelper_p.h" +#include "qt_private/qdeclarativedebughelper_p.h" QT_USE_NAMESPACE diff --git a/share/qtcreator/static.pro b/share/qtcreator/static.pro index 2865e9e2edfac13c8664878faf342560e9f7c46a..1a553368dac6c591457584bd1da3099bc93c0f30 100644 --- a/share/qtcreator/static.pro +++ b/share/qtcreator/static.pro @@ -35,7 +35,8 @@ DATA_DIRS = \ qmldesigner \ qmlicons \ qml \ - qml-type-descriptions + qml-type-descriptions \ + generic-highlighter !isEmpty(copydata) { diff --git a/share/qtcreator/templates/qmlapp/main.cpp b/share/qtcreator/templates/qmlapp/main.cpp index f4da658c57792ba8d60d3ed5e12f5ab3268bb00d..dfb208a90c671da67a38fc40b923d33c7cb6867b 100644 --- a/share/qtcreator/templates/qmlapp/main.cpp +++ b/share/qtcreator/templates/qmlapp/main.cpp @@ -9,7 +9,7 @@ int main(int argc, char *argv[]) viewer.addImportPath(QLatin1String("modules")); // ADDIMPORTPATH viewer.setOrientation(QmlApplicationViewer::ScreenOrientationAuto); // ORIENTATION viewer.setMainQmlFile(QLatin1String("qml/app/main.qml")); // MAINQML - viewer.show(); + viewer.showExpanded(); return app.exec(); } diff --git a/share/qtcreator/templates/wizards/qml-extension/project.pro b/share/qtcreator/templates/wizards/qml-extension/project.pro index 8a5a9c44e9edbd7a76bf4477d2ecc90c216018fd..94686cebcaba3f8feb3124f56dfe33d170deec74 100644 --- a/share/qtcreator/templates/wizards/qml-extension/project.pro +++ b/share/qtcreator/templates/wizards/qml-extension/project.pro @@ -16,8 +16,10 @@ HEADERS += \ OTHER_FILES = qmldir -copy_qmldir.target = $$OUT_PWD/qmldir -copy_qmldir.depends = $$PWD/qmldir -copy_qmldir.commands = $(COPY_FILE) \"$$replace(copy_qmldir.depends, /, $$QMAKE_DIR_SEP)\" \"$$replace(copy_qmldir.target, /, $$QMAKE_DIR_SEP)\" -QMAKE_EXTRA_TARGETS += copy_qmldir -PRE_TARGETDEPS += $$copy_qmldir.target +!equals(_PRO_FILE_PWD_, $$OUT_PWD) { + copy_qmldir.target = $$OUT_PWD/qmldir + copy_qmldir.depends = $$_PRO_FILE_PWD_/qmldir + copy_qmldir.commands = $(COPY_FILE) \"$$replace(copy_qmldir.depends, /, $$QMAKE_DIR_SEP)\" \"$$replace(copy_qmldir.target, /, $$QMAKE_DIR_SEP)\" + QMAKE_EXTRA_TARGETS += copy_qmldir + PRE_TARGETDEPS += $$copy_qmldir.target +} diff --git a/share/qtcreator/translations/qtcreator_pl.ts b/share/qtcreator/translations/qtcreator_pl.ts index 84e67fb7c6a986f5b85e505c7498570322b08d80..198c428693d760897cb0ee5b65e398b0f0278623 100644 --- a/share/qtcreator/translations/qtcreator_pl.ts +++ b/share/qtcreator/translations/qtcreator_pl.ts @@ -992,10 +992,6 @@ dla emisji sygnału wskoczy bezpośrednio do podłączonego slotu.</translation> <source>Class</source> <translation>Klasa</translation> </message> - <message> - <source>Configure...</source> - <translation type="obsolete">Konfiguruj...</translation> - </message> <message> <source>%1 - Error</source> <translation>%1 - Błąd</translation> @@ -1057,7 +1053,7 @@ dla emisji sygnału wskoczy bezpośrednio do podłączonego slotu.</translation> </message> <message> <source>Highlight search results</source> - <translation>Podświetlaj wyniki poszukiwań</translation> + <translation>Podświetlaj wyniki wyszukiwań</translation> </message> <message> <source>Incremental search</source> @@ -1421,10 +1417,6 @@ dla emisji sygnału wskoczy bezpośrednio do podłączonego slotu.</translation> <source>Note that huge amount of commits might take some time.</source> <translation>Zwróć uwagę że wyświetlanie dużej liczby zmian może zajmować sporo czasu.</translation> </message> - <message> - <source>Omit date from annotation output</source> - <translation type="obsolete">Pomijaj daty w wyjściowych adnotacjach</translation> - </message> <message> <source>Git</source> <translation>Git</translation> @@ -1477,10 +1469,6 @@ dla emisji sygnału wskoczy bezpośrednio do podłączonego slotu.</translation> <source>Arguments:</source> <translation>Argumenty:</translation> </message> - <message> - <source>Ignore whitespace changes in annotation and diff</source> - <translation type="obsolete">Ignoruj zmiany spacji w adnotacjach i różnicach</translation> - </message> <message> <source>Omit date from blame output</source> <translation>Pomijaj daty w rezultatach z "blame"</translation> @@ -2220,7 +2208,7 @@ Dodaj, zmodyfikuj lub usuń filtry dokumentów, które determinują zestaw dokum </message> <message> <source>Copy Project to writable Location?</source> - <translation>Kopiować projekt do miejsca zapisywalnego?</translation> + <translation>Skopiować projekt do miejsca zapisywalnego?</translation> </message> <message> <source><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></source> @@ -2272,7 +2260,7 @@ Dodaj, zmodyfikuj lub usuń filtry dokumentów, które determinują zestaw dokum </message> <message> <source>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: <br /><br />1: Build Issues, 2: Search Results, 3: Application Output, 4: Compile Output</source> - <translation>Możesz przełączać panele wyjściowe naciskając <tt>%1+n</tt> gdzie n jest odpowiednim numerem na przycisku na dole okna:<br /><br />1 - Problemy podczas budowania, 2 - Wyniki poszukiwań, 3 - Komunikaty aplikacji, 4 - Komunikaty kompilatora</translation> + <translation>Możesz przełączać panele wyjściowe naciskając <tt>%1+n</tt> gdzie n jest odpowiednim numerem na przycisku na dole okna:<br /><br />1 - Problemy podczas budowania, 2 - Wyniki wyszukiwań, 3 - Komunikaty aplikacji, 4 - Komunikaty kompilatora</translation> </message> <message> <source>You can quickly search methods, classes, help and more using the <a href="qthelp://com.nokia.qtcreator/doc/creator-editor-locator.html">Locator bar</a> (<tt>%1+K</tt>).</source> @@ -2358,10 +2346,6 @@ Dodaj, zmodyfikuj lub usuń filtry dokumentów, które determinują zestaw dokum <source>Explore Qt Quick examples:</source> <translation>Poznaj dogłębnie przykłady Qt Quick:</translation> </message> - <message> - <source>Explore Qt C++ mobile examples:</source> - <translation type="obsolete">Poznaj dogłębnie mobilne przykłady Qt C++:</translation> - </message> </context> <context> <name>MakeStep</name> @@ -3471,7 +3455,7 @@ Przyczyna: %3</translation> </message> <message> <source>Cannot perform extensionsInitialized because state != Initialized</source> - <translation>Nie można wykonać extensionsInitialized bo stan wtyczki jest inny niż "zainicjowana"</translation> + <translation>Nie można wykonać "extensionsInitialized" ponieważ stan wtyczek jest inny niż "Initialized"</translation> </message> <message> <source>Internal error: have no plugin instance to perform extensionsInitialized</source> @@ -4924,10 +4908,6 @@ Zwróć uwagę że spowoduje to usunięcie lokalnego pliku.</translation> <source>The header and source file names will be derived from the class name</source> <translation>Nazwy pliku nagłówkowego i źródłowego będą zaproponowane na podstawie nazwy klasy</translation> </message> - <message> - <source>Configure...</source> - <translation type="obsolete">Konfiguruj...</translation> - </message> </context> <context> <name>CppEditor::Internal::CppClassWizardDialog</name> @@ -5356,7 +5336,7 @@ Zwróć uwagę że spowoduje to usunięcie lokalnego pliku.</translation> </message> <message> <source>Do you want to commit the change?</source> - <translation type="unfinished">Czy chcesz dokonać commita na zmianie?</translation> + <translation type="unfinished">Czy chcesz dokonać commitu na zmianie?</translation> </message> <message> <source>The commit message check failed. Do you want to commit the change?</source> @@ -6116,14 +6096,6 @@ Qt Creator nie może się do niego podłączyć.</translation> </context> <context> <name>Debugger::Internal::CoreGdbAdapter</name> - <message> - <source>Error Loading Symbols</source> - <translation type="obsolete">Błąd w trakcie ładowania symboli</translation> - </message> - <message> - <source>No executable to load symbols from specified.</source> - <translation type="obsolete">Nie podano programu z którego można załadować symbole.</translation> - </message> <message> <source>Attached to core temporarily.</source> <translation>Tymczasowo dołączono do zrzutu.</translation> @@ -6312,7 +6284,8 @@ Qt Creator nie może się do niego podłączyć.</translation> <message> <source>The Qt version used to build the debugging helpers (%1) does not match the Qt version used to build the debugged application (%2). This might yield incorrect results.</source> - <translation type="unfinished"></translation> + <translation>Wersja Qt użyta do budowy asystentów debuggera (%1) nie odpowiada wersji Qt użytej do budowy debugowanej aplikacji (%2). +Może to spowodować uzyskanie błędnych rezultatów.</translation> </message> <message> <source>Custom dumper setup: %1</source> @@ -6551,7 +6524,7 @@ Możesz poczekać dłużej na odpowiedź lub przerwać debugowanie.</translation </message> <message> <source>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. </source> - <translation>Ustawienia debuggera pokazują na skrypt w "%1" króry nie jest dostępny. Jeśli plik ze skryptem nie jest potrzebny rozważ usunięcie go z ustawień w celu uniknięcia tego ostrzeżenia.</translation> + <translation>Ustawienia debuggera pokazują na skrypt "%1" który nie jest dostępny. Jeśli plik ze skryptem nie jest potrzebny rozważ usunięcie go z ustawień w celu uniknięcia tego ostrzeżenia.</translation> </message> <message> <source>Setting breakpoints...</source> @@ -7851,7 +7824,7 @@ Przebudowanie projektu może pomóc w ich odnalezieniu.</translation> </message> <message> <source>Search Results</source> - <translation>Wyniki poszukiwań</translation> + <translation>Wyniki wyszukiwań</translation> </message> </context> <context> @@ -7995,15 +7968,11 @@ Przebudowanie projektu może pomóc w ich odnalezieniu.</translation> </message> <message> <source>Delete the master branch after checking out the repository.</source> - <translation>Usuń gałąź master po skolowaniu repozytorium.</translation> + <translation>Usuń gałąź master po sklonowaniu repozytorium.</translation> </message> </context> <context> <name>Git::Internal::GitClient</name> - <message> - <source>Note that the git plugin for QtCreator is not able to interact with the server so far. Thus, manual ssh-identification etc. will not work.</source> - <translation>Zwróć uwagę że wtyczka git dla Qt Creatora nie współdziała jak dotąd z serwerem. Dlatego też ręczna identyfikacja ssh i inne rzeczy nie będą działać.</translation> - </message> <message> <source>Unable to determine the repository for %1.</source> <translation>Nie można określić repozytorium dla %1.</translation> @@ -8572,10 +8541,6 @@ Przebudowanie projektu może pomóc w ich odnalezieniu.</translation> <source>Status</source> <translation>Stan</translation> </message> - <message> - <source>Reset...</source> - <translation type="obsolete">Reset...</translation> - </message> <message> <source>Clean...</source> <translation>Wyczyść...</translation> @@ -8616,16 +8581,6 @@ Przebudowanie projektu może pomóc w ich odnalezieniu.</translation> <source>&Redo</source> <translation>&Przywróć</translation> </message> - <message> - <source>Revert all pending changes to the repository -%1?</source> - <translation type="obsolete">Odwróć wszystkie oczekujące zmiany dla repozytorium -%1?</translation> - </message> - <message> - <source>Revert</source> - <translation type="obsolete">Odwróć zmiany</translation> - </message> <message> <source>Another submit is currently being executed.</source> <translation>Trwa inna wysyłka.</translation> @@ -8650,44 +8605,6 @@ Przebudowanie projektu może pomóc w ich odnalezieniu.</translation> <translation>Nie można odnaleźć pliku binarnego "%1" w ścieżce "%2"</translation> </message> </context> -<context> - <name>HelloWorld::Internal::HelloWorldPlugin</name> - <message> - <source>Say "&Hello World!"</source> - <translation>Powiedz "&Witaj świecie!"</translation> - </message> - <message> - <source>&Hello World</source> - <translation>&Witaj świecie</translation> - </message> - <message> - <source>Hello world!</source> - <translation>Witaj świecie!</translation> - </message> - <message> - <source>Hello World PushButton!</source> - <translation>Przycisk powitalny!</translation> - </message> - <message> - <source>Hello World!</source> - <translation>Witaj świecie!</translation> - </message> - <message> - <source>Hello World! Beautiful day today, isn't it?</source> - <translation>Witaj świecie! Piękny dzień dziś mamy, nieprawdaż?</translation> - </message> -</context> -<context> - <name>HelloWorld::Internal::HelloWorldWindow</name> - <message> - <source>Focus me to activate my context!</source> - <translation>Daj mi fokus, żeby uaktywnić mój kontekst!</translation> - </message> - <message> - <source>Hello, world!</source> - <translation>Witaj świecie!</translation> - </message> -</context> <context> <name>Help::Internal::CentralWidget</name> <message> @@ -9541,14 +9458,6 @@ Przebudowanie projektu może pomóc w ich odnalezieniu.</translation> <source>Build Environment</source> <translation>Środowisko budowania</translation> </message> - <message> - <source>No Executable specified.</source> - <translation type="obsolete">Nie podano programu wykonywalnego.</translation> - </message> - <message> - <source>Running executable: <b>%1</b> %2</source> - <translation type="obsolete">Uruchomiony program: <b>%1</b> %2</translation> - </message> </context> <context> <name>ProjectExplorer::CustomExecutableRunConfiguration</name> @@ -9987,10 +9896,6 @@ Powód: %2</translation> <source>Start Debugging</source> <translation>Rozpocznij debugowanie</translation> </message> - <message> - <source>F5</source> - <translation type="obsolete">F5</translation> - </message> <message> <source>Add New...</source> <translation>Dodaj nowy...</translation> @@ -10146,7 +10051,7 @@ No project selected</extracomment> <message> <source>Failed to add subproject '%1' to project '%2'.</source> - <translation>Nie można dodac podprojektu "%1" + <translation>Nie można dodać podprojektu "%1" do projektu "%2".</translation> </message> <message> @@ -10396,7 +10301,7 @@ do projektu "%2".</translation> <name>Qt4ProjectManager::Internal::CustomWidgetWizard</name> <message> <source>Qt Custom Designer Widget</source> - <translation>Własny widżet Qt Designer</translation> + <translation>Własny widżet Qt Designera</translation> </message> <message> <source>Creates a Qt Custom Designer Widget or a Custom Widget Collection.</source> @@ -10407,7 +10312,7 @@ do projektu "%2".</translation> <name>Qt4ProjectManager::Internal::CustomWidgetWizardDialog</name> <message> <source>This wizard generates a Qt4 Designer Custom Widget or a Qt4 Designer Custom Widget Collection project.</source> - <translation>Ten kreator generuje projekt własnego widżetu Qt4 Designer lub projekt kolekcji własnych widżetów Qt4 Designer.</translation> + <translation>Ten kreator generuje projekt własnego widżetu Qt4 Designera lub projekt kolekcji własnych widżetów Qt4 Designera.</translation> </message> <message> <source>Custom Widgets</source> @@ -11199,80 +11104,7 @@ Wstępnie wybiera wersję desktopową Qt do budowania aplikacji (jeśli jest dos </message> <message> <source>Select the modules you want to include in your project. The recommended modules for this project are selected by default.</source> - <translation>Wybierz moduły które chcesz włączyć do projektu. Rekomendowane moduły dla tegp projektu są domyślnie zaznaczone.</translation> - </message> -</context> -<context> - <name>QObject</name> - <message> - <source>Pass</source> - <translation>Prawidłowy</translation> - </message> - <message> - <source>Expected Failure</source> - <translation>Oczekiwany błąd</translation> - </message> - <message> - <source>Failure</source> - <translation>Błąd</translation> - </message> - <message> - <source>Expected Pass</source> - <translation>Oczekiwany prawidłowy</translation> - </message> - <message> - <source>Warning</source> - <translation>Ostrzeżenie</translation> - </message> - <message> - <source>Qt Warning</source> - <translation>Ostrzeżenie Qt</translation> - </message> - <message> - <source>Qt Debug</source> - <translation>Komunikat debugowy Qt</translation> - </message> - <message> - <source>Critical</source> - <translation>Błąd krytyczny</translation> - </message> - <message> - <source>Fatal</source> - <translation>Błąd śmiertelny</translation> - </message> - <message> - <source>Skipped</source> - <translation>Pominięty</translation> - </message> - <message> - <source>Info</source> - <translation>Informacja</translation> - </message> -</context> -<context> - <name>QTestLib::Internal::QTestOutputPane</name> - <message> - <source>Test Results</source> - <translation>Rezultaty testu</translation> - </message> - <message> - <source>Result</source> - <translation>Rezultat</translation> - </message> - <message> - <source>Message</source> - <translation>Komunikat</translation> - </message> -</context> -<context> - <name>QTestLib::Internal::QTestOutputWidget</name> - <message> - <source>All Incidents</source> - <translation>Wszystkie zajścia</translation> - </message> - <message> - <source>Show Only:</source> - <translation>Pokazuj tylko:</translation> + <translation>Wybierz moduły które chcesz włączyć do projektu. Rekomendowane moduły dla tego projektu są domyślnie zaznaczone.</translation> </message> </context> <context> @@ -11286,89 +11118,6 @@ Wstępnie wybiera wersję desktopową Qt do budowania aplikacji (jeśli jest dos <translation>Lokalizator</translation> </message> </context> -<context> - <name>RegExp::Internal::RegExpWindow</name> - <message> - <source>&Pattern:</source> - <translation>&Wzorzec:</translation> - </message> - <message> - <source>&Text:</source> - <translation>&Tekst:</translation> - </message> - <message> - <source>&Minimal</source> - <translation>&Minimalistyczny</translation> - </message> - <message> - <source>Wildcard</source> - <translation>Dżoker</translation> - </message> - <message> - <source>&Escaped pattern:</source> - <translation>&Zabezpieczony wzorzec:</translation> - </message> - <message> - <source>&Pattern syntax:</source> - <translation>Składnia &wzorca:</translation> - </message> - <message> - <source>Case &sensitive</source> - <translation>Uwzględniaj &wielkość liter</translation> - </message> - <message> - <source>Index of match:</source> - <translation>Indeks dopasowania:</translation> - </message> - <message> - <source>Matched length:</source> - <translation>Dopasowana długość:</translation> - </message> - <message> - <source>Regular Expression v1</source> - <translation>Wyrażenie regularne v1</translation> - </message> - <message> - <source>Regular Expression v2</source> - <translation>Wyrażenie regularne v2</translation> - </message> - <message> - <source>Fixed String</source> - <translation>Stały ciąg</translation> - </message> - <message> - <source>Capture %1:</source> - <translation>Złapanie %1:</translation> - </message> - <message> - <source>Match:</source> - <translation>Dopasowanie:</translation> - </message> - <message> - <source>Regular Expression</source> - <translation>Wyrażenie regularne</translation> - </message> - <message> - <source>Enter Pattern from Code...</source> - <translation>Wprowadź wzorzec z kodu...</translation> - </message> - <message> - <source>Clear Patterns</source> - <translation>Wyczyść wzorce</translation> - </message> - <message> - <source>Clear Text</source> - <translation>Wyczyść tekst</translation> - </message> - <message> - <source>Enter Pattern from Code</source> - <translation>Wprowadź wzorzec z kodu</translation> - </message> - <message> - <source>Pattern</source> - <translation>Wzorzec</translation> - </message> -</context> <context> <name>ResourceEditor::Internal::ResourceEditorPlugin</name> <message> @@ -11395,25 +11144,11 @@ Wstępnie wybiera wersję desktopową Qt do budowania aplikacji (jeśli jest dos <translation>nienazwany</translation> </message> </context> -<context> - <name>Snippets::Internal::SnippetsPlugin</name> - <message> - <source>Snippets</source> - <translation>Urywki</translation> - </message> -</context> -<context> - <name>Snippets::Internal::SnippetsWindow</name> - <message> - <source>Snippets</source> - <translation>Urywki</translation> - </message> -</context> <context> <name>Subversion::Internal::CheckoutWizard</name> <message> <source>Checks out a Subversion repository and tries to load the contained project.</source> - <translation type="unfinished">Wyciąga repozytorium Subversion i próbuje załadować zawarty projekt.</translation> + <translation>Wyciąga repozytorium Subversion i próbuje załadować zawarty projekt.</translation> </message> <message> <source>Subversion Checkout</source> @@ -12598,7 +12333,7 @@ Następujące kodowania będą najprawdopodobniej pasowały:</translation> <name>IndexWindow</name> <message> <source>&Look for:</source> - <translation>Po&szukuj:</translation> + <translation>Wy&szukaj:</translation> </message> <message> <source>Open Link</source> @@ -12719,150 +12454,6 @@ Następujące kodowania będą najprawdopodobniej pasowały:</translation> <translation>Alias:</translation> </message> </context> -<context> - <name>MainWindow</name> - <message> - <source>Bauhaus</source> - <comment>MainWindowClass</comment> - <translation>Bauhaus</translation> - </message> - <message> - <source>&File</source> - <translation>&Plik</translation> - </message> - <message> - <source>&New...</source> - <translation>&Nowy...</translation> - </message> - <message> - <source>Ctrl+N</source> - <translation></translation> - </message> - <message> - <source>&Open...</source> - <translation>&Otwórz...</translation> - </message> - <message> - <source>Ctrl+O</source> - <translation>Ctrl+O</translation> - </message> - <message> - <source>Recent Files</source> - <translation>Ostatnie pliki</translation> - </message> - <message> - <source>&Save</source> - <translation>&Zachowaj</translation> - </message> - <message> - <source>Ctrl+S</source> - <translation>Ctrl+S</translation> - </message> - <message> - <source>Save &As...</source> - <translation>Zachowaj j&ako...</translation> - </message> - <message> - <source>&Preview</source> - <translation>&Podgląd</translation> - </message> - <message> - <source>Ctrl+R</source> - <translation>Ctrl+R</translation> - </message> - <message> - <source>&Preview with Debug</source> - <translation>&Podgląd z debugowaniem</translation> - </message> - <message> - <source>Ctrl+D</source> - <translation>Ctrl+D</translation> - </message> - <message> - <source>&Quit</source> - <translation>Za&kończ</translation> - </message> - <message> - <source>&Edit</source> - <translation>&Edycja</translation> - </message> - <message> - <source>Ctrl+Z</source> - <translation>Ctrl+Z</translation> - </message> - <message> - <source>Ctrl+Y</source> - <translation>Ctrl+Y</translation> - </message> - <message> - <source>Ctrl+Shift+Z</source> - <translation>Ctrl+Shift+Z</translation> - </message> - <message> - <source>&Copy</source> - <translation>S&kopiuj</translation> - </message> - <message> - <source>&Cut</source> - <translation>Wy&tnij</translation> - </message> - <message> - <source>&Paste</source> - <translation>Wk&lej</translation> - </message> - <message> - <source>&Delete</source> - <translation>&Usuń</translation> - </message> - <message> - <source>Del</source> - <translation>Del</translation> - </message> - <message> - <source>Backspace</source> - <translation>Backspace</translation> - </message> - <message> - <source>&View</source> - <translation>&Widok</translation> - </message> - <message> - <source>&Help</source> - <translation>P&omoc</translation> - </message> - <message> - <source>&About...</source> - <translation>Inform&acje o...</translation> - </message> - <message> - <source>Properties</source> - <translation>Właściwości</translation> - </message> - <message> - <source>Could not open file <%1></source> - <translation>Nie można otworzyć pliku <%1></translation> - </message> - <message> - <source>Qml Errors:</source> - <translation>Błędy Qml:</translation> - </message> - <message> - <source> -%1 %2:%3 - %4</source> - <translation> -%1 %2:%3 - %4</translation> - </message> - <message> - <source> -%1:%2 - %3</source> - <translation> -%1:%2 - %3</translation> - </message> - <message> - <source>Ctrl+Q</source> - <translation>Ctrl+Q</translation> - </message> -</context> <context> <name>MimeType</name> <message> @@ -13328,7 +12919,7 @@ aktywny tylko po wpisaniu przedrostka</translation> </message> <message> <source>Illegal unicode escape sequence</source> - <translation>Niepoprawna unicodowa sekwencja specjalna</translation> + <translation>Niepoprawna unikodowa sekwencja specjalna</translation> </message> <message> <source>Unclosed comment at end of file</source> @@ -14442,7 +14033,7 @@ Możesz odłożyć zmiany lub je porzucić.</translation> </message> <message> <source>Deploy Public Key ...</source> - <translation>Zainstaluj klucz publiczny...</translation> + <translation>Instaluj klucz publiczny...</translation> </message> <message> <source>Remote device</source> @@ -15361,11 +14952,11 @@ Wartość dziesiętna ze znakiem (big endian): %4</translation> </message> <message> <source>Hg incoming %1</source> - <translation type="unfinished">Hg incoming %1</translation> + <translation>Hg incoming %1</translation> </message> <message> <source>Hg outgoing %1</source> - <translation type="unfinished">Hg outgoing %1</translation> + <translation>Hg outgoing %1</translation> </message> <message> <source>Working...</source> @@ -15509,11 +15100,11 @@ Wartość dziesiętna ze znakiem (big endian): %4</translation> </message> <message> <source>Incoming...</source> - <translation type="unfinished"></translation> + <translation>Incoming...</translation> </message> <message> <source>Outgoing...</source> - <translation type="unfinished"></translation> + <translation>Outgoing...</translation> </message> <message> <source>Commit...</source> @@ -16094,6 +15685,10 @@ Wartość dziesiętna ze znakiem (big endian): %4</translation> <source>Parent folder "%1" for file "%2" does not exist.</source> <translation>Katalog "%1" dla pliku "%2" nie istnieje.</translation> </message> + <message> + <source>Error</source> + <translation>Błąd</translation> + </message> <message> <source>Cannot write file: "%1".</source> <translation>Nie można zapisać pliku: "%1".</translation> @@ -16492,7 +16087,7 @@ Wartość dziesiętna ze znakiem (big endian): %4</translation> </message> <message> <source>Refactoring</source> - <translation type="unfinished"></translation> + <translation>Refaktoryzacja</translation> </message> <message> <source>Rename id '%1'...</source> @@ -16896,7 +16491,7 @@ Czy uruchomiłeś Qemu?</translation> </message> <message> <source>Device error</source> - <translation>Błąd urządenia</translation> + <translation>Błąd urządzenia</translation> </message> <message> <source>Fetching environment failed: %1</source> @@ -16922,17 +16517,17 @@ Czy uruchomiłeś Qemu?</translation> <message numerus="yes"> <source>WARNING: You want to mount %1 directories, but your device has only %n free ports.<br>You will not be able to run this configuration.</source> <translation> - <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie posiada tylko %n wolny port.<br>Nie będzie można uruchomić tej configuracji.</numerusform> - <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie posiada tylko %n wolne porty.<br>Nie będzie można uruchomić tej configuracji.</numerusform> - <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie posiada tylko %n wolnych portów.<br>Nie będzie można uruchomić tej configuracji.</numerusform> + <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie posiada tylko %n wolny port.<br>Nie będzie można uruchomić tej konfiguracji.</numerusform> + <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie posiada tylko %n wolne porty.<br>Nie będzie można uruchomić tej konfiguracji.</numerusform> + <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie posiada tylko %n wolnych portów.<br>Nie będzie można uruchomić tej konfiguracji.</numerusform> </translation> </message> <message numerus="yes"> <source>WARNING: You want to mount %1 directories, but only %n ports on the device will be available in debug mode. <br>You will not be able to debug your application with this configuration.</source> <translation> - <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie udostępnia tylko %n port do debugowania.<br>Nie będzie można debugować aplikacji przy użyciu tej configuracji.</numerusform> - <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie udostępnia tylko %n porty do debugowania.<br>Nie będzie można debugować aplikacji przy użyciu tej configuracji.</numerusform> - <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie udostępnia tylko %n portów do debugowania.<br>Nie będzie można debugować aplikacji przy użyciu tej configuracji.</numerusform> + <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie udostępnia tylko %n port do debugowania.<br>Nie będzie można debugować aplikacji przy użyciu tej konfiguracji.</numerusform> + <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie udostępnia tylko %n porty do debugowania.<br>Nie będzie można debugować aplikacji przy użyciu tej konfiguracji.</numerusform> + <numerusform>Ostrzeżenie: Nie można zamontować %1 katalogów ponieważ urządzenie udostępnia tylko %n portów do debugowania.<br>Nie będzie można debugować aplikacji przy użyciu tej konfiguracji.</numerusform> </translation> </message> <message> @@ -17361,14 +16956,6 @@ Czy uruchomiłeś Qemu?</translation> <translation>Nie można pozyskać urządzenia na porcie "%1". Wygląda że jest w użyciu.</translation> </message> </context> -<context> - <name>AboutDialog</name> - <message> - <source>About Bauhaus</source> - <comment>AboutDialog</comment> - <translation>Informacje o Bauhaus</translation> - </message> -</context> <context> <name>CodePaster::FileShareProtocolSettingsWidget</name> <message> @@ -17675,6 +17262,14 @@ should a repository require SSH-authentication (see documentation on SSH and the <source>Anchors</source> <translation>Kotwice</translation> </message> + <message> + <source>Set anchors</source> + <translation type="unfinished"></translation> + </message> + <message> + <source>Setting anchors in states is not supported.</source> + <translation type="unfinished"></translation> + </message> <message> <source>Target</source> <translation>Produkt docelowy</translation> @@ -17833,7 +17428,7 @@ should a repository require SSH-authentication (see documentation on SSH and the </message> <message> <source>Echo Mode</source> - <translation type="unfinished">Tryb echo</translation> + <translation>Tryb echo</translation> </message> <message> <source>Pass. Char</source> @@ -18456,7 +18051,7 @@ Przy obecnej nazwie możesz spodziewać się problemów.</translation> <message> <source>The qmake command "%1" was not found or is not executable.</source> <extracomment>%1: Path to qmake executable</extracomment> - <translation>Komenda qmake "%1" nie została odnaleziona lub nie jest plikiem wykonywanlym.</translation> + <translation>Komenda qmake "%1" nie została odnaleziona lub nie jest plikiem wykonywalnym.</translation> </message> <message> <source>Qmake does not support build directories below the source directory.</source> @@ -18470,10 +18065,6 @@ Przy obecnej nazwie możesz spodziewać się problemów.</translation> <source>Warning: Cannot build QMLObserver; Qt version must be 4.7.1 or higher.</source> <translation>Ostrzeżenie: Nie można zbudować QML Observera; wymagana wersja Qt 4.7.1 lub wyższa.</translation> </message> - <message> - <source>Warning: Cannot build qmldump; Qt version must be 4.7.1 or higher.</source> - <translation>Ostrzeżenie: Nie można zbudować qmldump; wymagana wersja Qt 4.7.1 lub wyższa.</translation> - </message> </context> <context> <name>emptyPane</name> @@ -18820,7 +18411,7 @@ Identyfikatory muszą rozpoczynać się małą literą.</translation> </message> <message> <source>Amplitude of elastic and bounce easing curves</source> - <translation>Amplituda easing curve typu elastic i bounce</translation> + <translation>Amplituda easing curve typu elastic lub bounce</translation> </message> <message> <source>Period</source> @@ -19092,21 +18683,6 @@ aktywny tylko po wpisaniu przedrostka</translation> <translation>Usuń przyrostek "d" z wersji release'owej</translation> </message> </context> -<context> - <name>MaemoDeployableListWidget</name> - <message> - <source>Form</source> - <translation type="obsolete">Formularz</translation> - </message> - <message> - <source>Add File to Package</source> - <translation type="obsolete">Dodaj plik do pakietu</translation> - </message> - <message> - <source>Remove File from Package</source> - <translation type="obsolete">Usuń plik z pakietu</translation> - </message> -</context> <context> <name>MaemoDeployStepWidget</name> <message> @@ -19125,10 +18701,6 @@ aktywny tylko po wpisaniu przedrostka</translation> <source>These show the INSTALLS settings from the project file(s).</source> <translation>Pokazuje ustawienia INSTALLS dla plików projektu.</translation> </message> - <message> - <source><b>Files to install:</b></source> - <translation type="obsolete"><b>Pliki do zainstalowania:</b></translation> - </message> <message> <source><b>Files to install for subproject:</b></source> <translation><b>Pliki do zainstalowania dla podprojektu:</b></translation> @@ -19146,7 +18718,7 @@ aktywny tylko po wpisaniu przedrostka</translation> </message> <message> <source>Target UID3:</source> - <translation>UID3 prodktu:</translation> + <translation>UID3 produktu:</translation> </message> <message> <source>Enable network access</source> @@ -19185,7 +18757,7 @@ aktywny tylko po wpisaniu przedrostka</translation> </message> <message> <source>Target UID3:</source> - <translation>UID3 prodktu:</translation> + <translation>UID3 produktu:</translation> </message> </context> <context> @@ -19204,7 +18776,7 @@ aktywny tylko po wpisaniu przedrostka</translation> </message> <message> <source>Import an existing .qml file</source> - <translation>Zaimportuj isniejący plik .qml</translation> + <translation>Zaimportuj istniejący plik .qml</translation> </message> <message> <source>Note: All files and directories that reside in the same directory as the main QML file are deployed. You can modify the contents of the directory any time before deploying.</source> @@ -19661,6 +19233,10 @@ Lista serwera: %2.</translation> <extracomment>Function call failed</extracomment> <translation>Funkcja "%1()" zakończona niepowodzeniem: %2</translation> </message> + <message> + <source>An instance of the CDB engine is still running; cannot create an a new instance.</source> + <translation type="unfinished"></translation> + </message> <message> <source>Version: %1</source> <translation>Wersja: %1</translation> @@ -20567,6 +20143,18 @@ zamiast w jego katalogu instalacyjnym.</translation> <source>Previous Open Document in History</source> <translation>Poprzedni otwarty dokument w historii</translation> </message> + <message> + <source>Go Back</source> + <translation>Wstecz</translation> + </message> + <message> + <source>Go Forward</source> + <translation>W przód</translation> + </message> + <message> + <source>Close</source> + <translation>Zamknij</translation> + </message> </context> <context> <name>Help::Internal::OpenPagesManager</name> @@ -21165,21 +20753,6 @@ Adds the library and include paths to the .pro file.</source> <translation>Zdalny katalog</translation> </message> </context> -<context> - <name>Qt4ProjectManager::Internal::MaemoDeployableListWidget</name> - <message> - <source>Choose a local file</source> - <translation type="obsolete">Wybierz plik lokalny</translation> - </message> - <message> - <source>Error adding file</source> - <translation type="obsolete">Błąd w trakcie dodawania pliku</translation> - </message> - <message> - <source>Error removing file</source> - <translation type="obsolete">Błąd w trakcie usuwania pliku</translation> - </message> -</context> <context> <name>Qt4ProjectManager::Internal::MaemoDeployStep</name> <message> @@ -21249,7 +20822,7 @@ Adds the library and include paths to the .pro file.</source> </message> <message> <source>Installing package to device...</source> - <translation>Instalowanie pakietu na urządzieniu...</translation> + <translation>Instalowanie pakietu na urządzeniu...</translation> </message> <message> <source>Copying file '%1' to path '%2' on the device...</source> @@ -21364,19 +20937,19 @@ Zawartość zdalnego stderr: "%1"</translation> </message> <message> <source>No directories to unmount</source> - <translation>Brak katalogów do odmontowania</translation> + <translation>Brak katalogów do zdemontowania</translation> </message> <message> <source>Could not execute unmount request.</source> - <translation>Nie można wykonać odmontowania.</translation> + <translation>Nie można wykonać zdemontowania.</translation> </message> <message> <source>Failure unmounting: %1</source> - <translation>Błąd odmontowywania: %1</translation> + <translation>Błąd demontażu: %1</translation> </message> <message> <source>Finished unmounting.</source> - <translation>Odmontowywanie zakończone.</translation> + <translation>Zakończono demontaż.</translation> </message> <message> <source> @@ -21512,7 +21085,7 @@ stderr był: %1</translation> </message> <message> <source>Unmounting host directories...</source> - <translation>Odmontowywanie katalogów hosta...</translation> + <translation>Demontowanie katalogów hosta...</translation> </message> </context> <context> @@ -22051,7 +21624,7 @@ Sprawdź prawa dostępu do katalogu.</translation> </message> <message> <source>Timeout after %1s.</source> - <translation>Bez odpowiedzie po %1s.</translation> + <translation>Bez odpowiedzi po %1s.</translation> </message> <message> <source>The process crashed.</source> @@ -22143,15 +21716,6 @@ Powód: %2</translation> <translation>Dodaj definicję w %1</translation> </message> </context> -<context> - <name>QmlDesigner::TextToModelMerger</name> - <message> - <source>Unsupported import: -import QtQuick 1.0 use import Qt 4.7 instead</source> - <translation type="obsolete">Nieobsługiwany import: -zamiast "import QtQuick 1.0" użyj "import Qt 4.7"</translation> - </message> -</context> <context> <name>QmlJsEditor</name> <message> diff --git a/src/libs/qmleditorwidgets/gradientline.cpp b/src/libs/qmleditorwidgets/gradientline.cpp index 2c6b9f8c937cd4ab679e63d7f8b3952a9e7c6250..66b1821718481cfe9207d71492da713aadb3f194 100644 --- a/src/libs/qmleditorwidgets/gradientline.cpp +++ b/src/libs/qmleditorwidgets/gradientline.cpp @@ -193,6 +193,8 @@ void GradientLine::paintEvent(QPaintEvent *event) int pos = qreal((width() - 16)) * m_stops.at(i) + 9; p.setBrush(arrowColor); QVector<QPointF> points; + if (localYOffset < -8) + p.setOpacity(0.5); points.append(QPointF(pos + 0.5, 28.5 + localYOffset)); //triangle points.append(QPointF(pos - 3.5, 22.5 + localYOffset)); points.append(QPointF(pos + 4.5, 22.5 + localYOffset)); @@ -210,6 +212,7 @@ void GradientLine::paintEvent(QPaintEvent *event) p.setBrush(Qt::NoBrush); p.setPen(QColor(255, 255, 255, 30)); p.drawRect(pos - 4, 9 + localYOffset, 8, 9); + p.setOpacity(1); } } } @@ -220,6 +223,7 @@ void GradientLine::mousePressEvent(QMouseEvent *event) event->accept(); int xPos = event->pos().x(); int yPos = event->pos().y(); + m_dragStart = event->pos(); int draggedIndex = -1; m_create = false; @@ -227,10 +231,9 @@ void GradientLine::mousePressEvent(QMouseEvent *event) if ((yPos > 10) && (yPos < 30)) for (int i =0; i < m_stops.size(); i++) { int pos = qreal((width() - 16)) * m_stops.at(i) + 9; - if (((xPos + 5) > pos) && ((xPos - 5) < pos)) { + if (((xPos + 8) > pos) && ((xPos - 8) < pos)) { draggedIndex = i; m_dragActive = true; - m_dragStart = event->pos(); setCurrentIndex(draggedIndex); update(); } @@ -253,6 +256,22 @@ void GradientLine::mouseReleaseEvent(QMouseEvent *event) { if (event->button() == Qt::LeftButton) { event->accept(); + + if (m_dragActive) { + m_yOffset += event->pos().y() - 14; + if (m_yOffset > 0) { + m_yOffset = 0; + } else if ((m_yOffset < - 8) && (currentColorIndex()) != 0 && (currentColorIndex() < m_stops.size() - 1)) { + m_yOffset = 0; + m_dragActive = false; + m_stops.removeAt(currentColorIndex()); + m_colorList.removeAt(currentColorIndex()); + updateGradient(); + setCurrentIndex(0); + //delete item + } + } + if (m_dragActive == false && m_create) { qreal stopPos = qreal(event->pos().x() - 9) / qreal((width() - 15)); int index = -1; @@ -260,7 +279,7 @@ void GradientLine::mouseReleaseEvent(QMouseEvent *event) if ((stopPos > m_stops.at(i)) && (index == -1)) index = i +1; } - if (index != -1 && (m_useGradient)) { //creating of items only in base state + if (index != -1 && (m_useGradient) && abs(m_dragStart.x() - event->pos().x()) < 10) { //creating of items only in base state m_stops.insert(index, stopPos); m_colorList.insert(index, QColor(Qt::white)); setCurrentIndex(index); @@ -278,32 +297,24 @@ void GradientLine::mouseMoveEvent(QMouseEvent *event) { if (m_dragActive) { event->accept(); - int xPos = event->pos().x(); int pos = qreal((width() - 20)) * m_stops.at(currentColorIndex()) + 8; - int offset = m_dragOff ? 2 : 20; - if (xPos < pos + offset && xPos > pos - offset) { - m_dragOff = false; - int xDistance = event->pos().x() - m_dragStart.x(); - qreal distance = qreal(xDistance) / qreal((width() - 20)); - qreal newStop = m_stops.at(currentColorIndex()) + distance; - if ((newStop >=0) && (newStop <= 1)) - m_stops[currentColorIndex()] = newStop; - m_yOffset += event->pos().y() - m_dragStart.y(); - if (m_yOffset > 0) { //deleting only in base state - m_yOffset = 0; - } else if ((m_yOffset < - 12) && (currentColorIndex()) != 0 && (currentColorIndex() < m_stops.size() - 1)) { - m_yOffset = 0; - m_dragActive = false; - m_stops.removeAt(currentColorIndex()); - m_colorList.removeAt(currentColorIndex()); - updateGradient(); - setCurrentIndex(0); - //delete item - } - } else { - m_dragOff = true; - } - m_dragStart = event->pos(); + + m_dragOff = false; + int xDistance = event->pos().x() - pos; + qreal distance = qreal(xDistance) / qreal((width() - 20)); + qreal newStopPosition = m_stops.at(currentColorIndex()) + distance; + if (newStopPosition > 0.98) //snap to 1 + newStopPosition = 1; + if (newStopPosition < 0.02) //snap to 0 + newStopPosition = 0; + if ((newStopPosition >=0) && (newStopPosition <= 1)) + m_stops[currentColorIndex()] = newStopPosition; + m_yOffset += event->pos().y() - 14; + if (m_yOffset > 0) + m_yOffset = 0; + else if ((m_yOffset < - 10)) + m_yOffset = -10; + update(); } } diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp index ab3bc7b23a7716b6ee4b8c11d24b43bc39fd8c8c..46a81ef1a93ffd4f24de9cfc2665dbe840dbcc7a 100644 --- a/src/plugins/cppeditor/cppeditor.cpp +++ b/src/plugins/cppeditor/cppeditor.cpp @@ -415,9 +415,9 @@ CPPEditor::CPPEditor(QWidget *parent) setParenthesesMatchingEnabled(true); setMarksVisible(true); setCodeFoldingSupported(true); - setCodeFoldingVisible(true); setIndenter(new CppQtStyleIndenter); setAutoCompleter(new CppAutoCompleter); + baseTextDocument()->setSyntaxHighlighter(new CppHighlighter); m_modelManager = CppTools::CppModelManagerInterface::instance(); diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp index f9620f5ca1bdb3c9b09087c2e038d3c6bce9b562..3f1266ec87a7f23914a0cc79e3aa558085fa1829 100644 --- a/src/plugins/cpptools/cppcodecompletion.cpp +++ b/src/plugins/cpptools/cppcodecompletion.cpp @@ -1133,6 +1133,40 @@ void CppCodeCompletion::globalCompletion(Scope *currentScope) addMacros(context.thisDocument()->fileName(), context.snapshot()); } +static Scope *enclosingNonTemplateScope(Symbol *symbol) +{ + if (symbol) { + if (Scope *scope = symbol->enclosingScope()) { + if (Template *templ = scope->asTemplate()) + return templ->enclosingScope(); + return scope; + } + } + return 0; +} + +static Function *asFunctionOrTemplateFunctionType(FullySpecifiedType ty) +{ + if (Function *funTy = ty->asFunctionType()) + return funTy; + else if (Template *templ = ty->asTemplateType()) { + if (Symbol *decl = templ->declaration()) + return decl->asFunction(); + } + return 0; +} + +static Class *asClassOrTemplateClassType(FullySpecifiedType ty) +{ + if (Class *classTy = ty->asClassType()) + return classTy; + else if (Template *templ = ty->asTemplateType()) { + if (Symbol *decl = templ->declaration()) + return decl->asClass(); + } + return 0; +} + bool CppCodeCompletion::completeConstructorOrFunction(const QList<LookupItem> &results, int endOfExpression, bool toolTipOnly) { @@ -1142,10 +1176,10 @@ bool CppCodeCompletion::completeConstructorOrFunction(const QList<LookupItem> &r foreach (const LookupItem &result, results) { FullySpecifiedType exprTy = result.type().simplified(); - if (Class *klass = exprTy->asClassType()) { + if (Class *klass = asClassOrTemplateClassType(exprTy)) { const Name *className = klass->name(); if (! className) - continue; // nothing to do for anonymoous classes. + continue; // nothing to do for anonymous classes. for (unsigned i = 0; i < klass->memberCount(); ++i) { Symbol *member = klass->memberAt(i); @@ -1173,11 +1207,11 @@ bool CppCodeCompletion::completeConstructorOrFunction(const QList<LookupItem> &r foreach (const LookupItem &result, results) { FullySpecifiedType ty = result.type().simplified(); - if (Function *fun = ty->asFunctionType()) { + if (Function *fun = asFunctionOrTemplateFunctionType(ty)) { if (! fun->name()) continue; - else if (! functions.isEmpty() && functions.first()->enclosingScope() != fun->enclosingScope()) + else if (! functions.isEmpty() && enclosingNonTemplateScope(functions.first()) != enclosingNonTemplateScope(fun)) continue; // skip fun, it's an hidden declaration. bool newOverload = true; diff --git a/src/plugins/glsleditor/glsleditor.cpp b/src/plugins/glsleditor/glsleditor.cpp index 8e5837198109df86e770bcebda9d98a6e2bfcae7..5903def136e30649ae9a831a4afea9a8b096bb5a 100644 --- a/src/plugins/glsleditor/glsleditor.cpp +++ b/src/plugins/glsleditor/glsleditor.cpp @@ -80,7 +80,6 @@ GLSLTextEditor::GLSLTextEditor(QWidget *parent) : setParenthesesMatchingEnabled(true); setMarksVisible(true); setCodeFoldingSupported(true); - setCodeFoldingVisible(true); //setIndenter(new Indenter); m_updateDocumentTimer = new QTimer(this); diff --git a/src/plugins/qmldesigner/components/propertyeditor/qmlanchorbindingproxy.cpp b/src/plugins/qmldesigner/components/propertyeditor/qmlanchorbindingproxy.cpp index f987b8e09b5ee9f5f8ff767804fd9c4ab8be984f..d9d6de0e1beb258adc9cc11f73ed4b182ba0fc42 100644 --- a/src/plugins/qmldesigner/components/propertyeditor/qmlanchorbindingproxy.cpp +++ b/src/plugins/qmldesigner/components/propertyeditor/qmlanchorbindingproxy.cpp @@ -271,13 +271,13 @@ void QmlAnchorBindingProxy::resetLayout() { m_fxItemNode.anchors().removeAnchors(); m_fxItemNode.anchors().removeMargins(); - if (qFuzzyCompare(m_fxItemNode.instancePosition().x(), 0.0)) + if (qFuzzyCompare(m_fxItemNode.instancePosition().x(), 0.0) && m_fxItemNode.modelNode().hasAuxiliaryData(auxDataString + "x")) m_fxItemNode.setVariantProperty("x", m_fxItemNode.modelNode().auxiliaryData(auxDataString + "x")); - if (qFuzzyCompare(m_fxItemNode.instancePosition().y(), 0.0)) + if (qFuzzyCompare(m_fxItemNode.instancePosition().y(), 0.0) && m_fxItemNode.modelNode().hasAuxiliaryData(auxDataString + "y")) m_fxItemNode.setVariantProperty("y", m_fxItemNode.modelNode().auxiliaryData(auxDataString + "y")); - if (qFuzzyCompare(m_fxItemNode.instanceSize().width(), 0.0)) + if (qFuzzyCompare(m_fxItemNode.instanceSize().width(), 0.0) && m_fxItemNode.modelNode().hasAuxiliaryData(auxDataString + "width")) m_fxItemNode.setVariantProperty("width", m_fxItemNode.modelNode().auxiliaryData(auxDataString + "width")); - if (qFuzzyCompare(m_fxItemNode.instanceSize().height(), 0.0)) + if (qFuzzyCompare(m_fxItemNode.instanceSize().height(), 0.0) && m_fxItemNode.modelNode().hasAuxiliaryData(auxDataString + "height")) m_fxItemNode.setVariantProperty("height", m_fxItemNode.modelNode().auxiliaryData(auxDataString + "height")); emit topAnchorChanged(); diff --git a/src/plugins/qmldesigner/designercore/metainfo/propertymetainfo.cpp b/src/plugins/qmldesigner/designercore/metainfo/propertymetainfo.cpp index f7c3b1efdbd050b3782cba75c40ffa166e44fe4d..2275afb04ef82e19a438f5d4ece4758013803539 100644 --- a/src/plugins/qmldesigner/designercore/metainfo/propertymetainfo.cpp +++ b/src/plugins/qmldesigner/designercore/metainfo/propertymetainfo.cpp @@ -256,7 +256,7 @@ bool PropertyMetaInfo::isValueType() const throw InvalidMetaInfoException(__LINE__, Q_FUNC_INFO, __FILE__); } - QDeclarativeValueType *valueType(QDeclarativeValueTypeFactory::valueType(variantTypeId())); + QScopedPointer<QDeclarativeValueType> valueType(QDeclarativeValueTypeFactory::valueType(variantTypeId())); return valueType; } diff --git a/src/plugins/qmldesigner/qtquickplugin/quick.metainfo b/src/plugins/qmldesigner/qtquickplugin/quick.metainfo index 139a82bc056dbb7f80ebb1400392938b8c93f2ae..781e6352cb785522943a35c0ec73c9713cd46e8e 100644 --- a/src/plugins/qmldesigner/qtquickplugin/quick.metainfo +++ b/src/plugins/qmldesigner/qtquickplugin/quick.metainfo @@ -21,6 +21,7 @@ <property name="width" type="int" value="80"/> <property name="height" type="int" value="20"/> <property name="text" type="QString" value="text"/> + <property name="font.pixelSize" type="int" value="12"/> </itemlibraryentry> </node> <node name="Qt/TextEdit" isContainer="false" icon=":/qtquickplugin/images/text-edit-icon16.png"> @@ -30,6 +31,7 @@ <property name="width" type="int" value="80"/> <property name="height" type="int" value="20"/> <property name="text" type="QString" value="textEdit"/> + <property name="font.pixelSize" type="int" value="12"/> </itemlibraryentry> </node> <node name="Qt/TextInput" isContainer="false" icon=":/qtquickplugin/images/text-input-icon16.png"> @@ -39,6 +41,7 @@ <property name="width" type="int" value="80"/> <property name="height" type="int" value="20"/> <property name="text" type="QString" value="textInput"/> + <property name="font.pixelSize" type="int" value="12"/> </itemlibraryentry> </node> <node name="Qt/MouseArea" icon=":/qtquickplugin/images/mouse-area-icon16.png"> diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp index c9a3afc3a58f637e0ed731ad56c3a4e33ad4377e..d7fa0d4261b14dfa3cfa1bb43e074d6655794682 100644 --- a/src/plugins/qmljseditor/qmljseditor.cpp +++ b/src/plugins/qmljseditor/qmljseditor.cpp @@ -613,7 +613,6 @@ QmlJSTextEditor::QmlJSTextEditor(QWidget *parent) : setParenthesesMatchingEnabled(true); setMarksVisible(true); setCodeFoldingSupported(true); - setCodeFoldingVisible(true); setIndenter(new Indenter); setAutoCompleter(new AutoCompleter); diff --git a/src/plugins/qmljsinspector/qmljsinspector.cpp b/src/plugins/qmljsinspector/qmljsinspector.cpp index 8cbc61e87d539e36d4c3e3d34537967722afc5c0..a9a391dbf2d90d4e9ca9dbc8b220957b3b85ee08 100644 --- a/src/plugins/qmljsinspector/qmljsinspector.cpp +++ b/src/plugins/qmljsinspector/qmljsinspector.cpp @@ -566,6 +566,13 @@ QString InspectorUi::filenameForShadowBuildFile(const QString &filename) const if (projectDir.exists() && buildDir.exists() && fileInfo.exists()) { if (fileInfo.absoluteFilePath().startsWith(buildDir.canonicalPath())) { QString fileRelativePath = fileInfo.canonicalFilePath().mid(debugProjectBuildDirectory().length()); + +#ifdef Q_OS_MACX + // Qt Quick Applications by default copy the qml directory to buildDir()/X.app/Contents/Resources + static QRegExp resourceBundlePattern(QLatin1String("^.*\\.app/Contents/Resources/")); + fileRelativePath.remove(resourceBundlePattern); +#endif + QFileInfo projectFile(projectDir.canonicalPath() + QLatin1Char('/') + fileRelativePath); if (projectFile.exists()) diff --git a/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp b/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp index 1e523a039224029bf97e032fe343730715474614..ac716745399e6680853674157beb27de13fc8cff 100644 --- a/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp +++ b/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.cpp @@ -85,16 +85,29 @@ GettingStartedWelcomePageWidget::GettingStartedWelcomePageWidget(QWidget *parent connect(ui->tutorialTreeWidget, SIGNAL(activated(QString)), SLOT(slotOpenHelpPage(const QString&))); - ui->tutorialTreeWidget->addItem(tr("The Qt Creator User Interface"), - QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-quick-tour.html")); - ui->tutorialTreeWidget->addItem(tr("Building and Running an Example"), - QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-build-example-application.html?view=split")); - ui->tutorialTreeWidget->addItem(tr("Creating a Qt C++ Application"), - QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-writing-program.html?view=split")); - ui->tutorialTreeWidget->addItem(tr("Creating a Mobile Application"), - QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-mobile-example.html?view=split")); - ui->tutorialTreeWidget->addItem(tr("Creating a Qt Quick Application"), - QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-qml-application.html?view=split")); + QFontMetrics fm = fontMetrics(); + const int margins = 30; + int width = ui->tutorialTreeWidget->minimumWidth() - margins; + + QString itemText = tr("The Qt Creator User Interface"); + QString url = QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-quick-tour.html"); + ui->tutorialTreeWidget->addItem(fm.elidedText(itemText, Qt::ElideRight, width), url, itemText); + + itemText = tr("Building and Running an Example"); + url = QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-build-example-application.html?view=split"); + ui->tutorialTreeWidget->addItem(fm.elidedText(itemText, Qt::ElideRight, width), url, itemText); + + itemText = tr("Creating a Qt C++ Application"); + url = QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-writing-program.html?view=split"); + ui->tutorialTreeWidget->addItem(fm.elidedText(itemText, Qt::ElideRight, width), url, itemText); + + itemText = tr("Creating a Mobile Application"); + url = QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-mobile-example.html?view=split"); + ui->tutorialTreeWidget->addItem(fm.elidedText(itemText, Qt::ElideRight, width), url, itemText); + + itemText = tr("Creating a Qt Quick Application"); + url = QLatin1String("qthelp://com.nokia.qtcreator/doc/creator-qml-application.html?view=split"); + ui->tutorialTreeWidget->addItem(fm.elidedText(itemText, Qt::ElideRight, width), url, itemText); srand(QDateTime::currentDateTime().toTime_t()); QStringList tips = tipsOfTheDay(); diff --git a/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.ui b/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.ui index d04f47be194b9736c20a8fca9b422825187591f9..788470bf47730ff50bd41bacab5ee683b0a4ea11 100644 --- a/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.ui +++ b/src/plugins/qt4projectmanager/gettingstartedwelcomepagewidget.ui @@ -52,7 +52,20 @@ </widget> </item> <item row="1" column="0"> - <widget class="Utils::WelcomeModeTreeWidget" name="tutorialTreeWidget" native="true"/> + <widget class="Utils::WelcomeModeTreeWidget" name="tutorialTreeWidget" native="true"> + <property name="minimumSize"> + <size> + <width>260</width> + <height>0</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>260</width> + <height>16777215</height> + </size> + </property> + </widget> </item> </layout> </widget> @@ -67,20 +80,26 @@ </property> <property name="minimumSize"> <size> - <width>230</width> + <width>240</width> <height>0</height> </size> </property> - <property name="styleSheet"> - <string notr="true"/> + <property name="maximumSize"> + <size> + <width>240</width> + <height>16777215</height> + </size> </property> <layout class="QGridLayout" name="gridLayout_11"> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> <property name="verticalSpacing"> <number>12</number> </property> - <property name="rightMargin"> - <number>9</number> - </property> <item row="0" column="0"> <layout class="QVBoxLayout" name="verticalLayout"> <item> @@ -248,6 +267,9 @@ </sizepolicy> </property> <layout class="QGridLayout" name="gridLayout"> + <property name="topMargin"> + <number>0</number> + </property> <item row="0" column="0"> <widget class="Utils::WelcomeModeLabel" name="demoTitleLabel_4"> <property name="text"> @@ -316,7 +338,7 @@ </layout> </widget> </item> - <item row="3" column="0" colspan="2"> + <item row="2" column="0" colspan="2"> <layout class="QHBoxLayout" name="horizontalLayout_2"> <property name="spacing"> <number>6</number> @@ -368,22 +390,6 @@ </item> </layout> </item> - <item row="2" column="0"> - <spacer name="verticalSpacer_8"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::MinimumExpanding</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> </layout> </widget> </item> @@ -457,28 +463,27 @@ border-bottom: 1px solid "#C9C9C9"; </widget> </item> <item> - <layout class="QHBoxLayout" name="horizontalLayout"> - <item> - <spacer name="horizontalSpacer_3"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>24</width> - <height>38</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="detailsLabel"> - <property name="text"> - <string notr="true"/> - </property> - </widget> - </item> - </layout> + <spacer name="verticalSpacer_8"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>6</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QLabel" name="detailsLabel"> + <property name="text"> + <string notr="true"/> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> </item> <item> <spacer name="verticalSpacer_5"> diff --git a/src/plugins/qt4projectmanager/qmldumptool.cpp b/src/plugins/qt4projectmanager/qmldumptool.cpp index 64deddcf256ba466c8d7771f0bf46e0fb09b5ccc..46d849dfa9c6b95854d919a43a5643fd707617c0 100644 --- a/src/plugins/qt4projectmanager/qmldumptool.cpp +++ b/src/plugins/qt4projectmanager/qmldumptool.cpp @@ -279,7 +279,7 @@ void QmlDumpTool::pathAndEnvironment(ProjectExplorer::Project *project, QString path = Qt4ProjectManager::QmlDumpTool::toolForProject(project); QtVersion *version = qtVersionForProject(project); - if (version && path.isEmpty()) { + if (version && path.isEmpty() && QmlDumpTool::canBuild(version)) { QmlDumpBuildTask *qmlDumpBuildTask = qmlDumpBuilds()->value(version->uniqueId()); if (qmlDumpBuildTask) { if (!qmlDumpBuildTask->hasFailed()) diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.cpp index c5c797f26a3e22dbebf00b7ee72deda015fd1947..a5a286c87aa21e7f9dd96e4fd24b4e70a105ede6 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.cpp @@ -22,7 +22,6 @@ MaemoDeployStepWidget::MaemoDeployStepWidget(MaemoDeployStep *step) : m_step(step) { ui->setupUi(this); - ui->tableView->setTextElideMode(Qt::ElideMiddle); ui->modelComboBox->setModel(m_step->deployables().data()); connect(m_step->deployables().data(), SIGNAL(modelAboutToBeReset()), SLOT(handleModelListToBeReset())); diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.ui b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.ui index 72ae6855646181fda7c531ad001d8d66b9cba007..2ad404fbdbd52efa4dec89f318f40c613299a8f9 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.ui +++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeploystepwidget.ui @@ -110,6 +110,18 @@ <layout class="QHBoxLayout" name="horizontalLayout_4"> <item> <widget class="QTableView" name="tableView"> + <property name="minimumSize"> + <size> + <width>0</width> + <height>150</height> + </size> + </property> + <property name="textElideMode"> + <enum>Qt::ElideMiddle</enum> + </property> + <property name="horizontalScrollMode"> + <enum>QAbstractItemView::ScrollPerPixel</enum> + </property> <property name="showGrid"> <bool>false</bool> </property> @@ -119,6 +131,9 @@ <attribute name="horizontalHeaderDefaultSectionSize"> <number>400</number> </attribute> + <attribute name="horizontalHeaderHighlightSections"> + <bool>false</bool> + </attribute> <attribute name="horizontalHeaderMinimumSectionSize"> <number>100</number> </attribute> diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp index 22d7bd469dba180ac64778585fbad82149cf94f3..f9057366dc765bd3f9b325d17391af5f5eddccec 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoremotemounter.cpp @@ -168,18 +168,6 @@ void MaemoRemoteMounter::handleUnmountProcessFinished(int exitStatus) void MaemoRemoteMounter::stop() { setState(Inactive); - if (m_utfsClientUploader) { - disconnect(m_utfsClientUploader.data(), 0, this, 0); - m_utfsClientUploader->closeChannel(); - } - if (m_mountProcess) { - disconnect(m_mountProcess.data(), 0, this, 0); - m_mountProcess->closeChannel(); - } - if (m_unmountProcess) { - disconnect(m_unmountProcess.data(), 0, this, 0); - m_unmountProcess->closeChannel(); - } } void MaemoRemoteMounter::deployUtfsClient() @@ -449,8 +437,21 @@ void MaemoRemoteMounter::handleUtfsServerTimeout() void MaemoRemoteMounter::setState(State newState) { - if (newState == Inactive) + if (newState == Inactive) { m_utfsServerTimer->stop(); + if (m_utfsClientUploader) { + disconnect(m_utfsClientUploader.data(), 0, this, 0); + m_utfsClientUploader->closeChannel(); + } + if (m_mountProcess) { + disconnect(m_mountProcess.data(), 0, this, 0); + m_mountProcess->closeChannel(); + } + if (m_unmountProcess) { + disconnect(m_unmountProcess.data(), 0, this, 0); + m_unmountProcess->closeChannel(); + } + } m_state = newState; } diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp index 2adab390a23040506e4b871ffad7bf7e30fb3d08..9a3cb5851c2dd5dceb2f8c907247e6c7db7c3370 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp @@ -69,6 +69,8 @@ void MaemoRunControl::start() { if (!m_devConfig.isValid()) { handleError(tr("No device configuration set for run configuration.")); + } else if (!m_runConfig) { + handleError(tr("Run configuration no longer available.")); } else { m_running = true; emit started(); diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h index 4f8edb6da988ef0e308ccee037bc6c86ba8a69d5..111fc99465f1499362ebe54224903da81fdeb59e 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h @@ -39,6 +39,7 @@ #include <projectexplorer/runconfiguration.h> +#include <QtCore/QPointer> #include <QtCore/QString> namespace Qt4ProjectManager { @@ -71,7 +72,7 @@ private: void setFinished(); void handleError(const QString &errString); - MaemoRunConfiguration *m_runConfig; // TODO this pointer can be invalid + QPointer<MaemoRunConfiguration> m_runConfig; const MaemoDeviceConfig m_devConfig; MaemoSshRunner * const m_runner; bool m_running; diff --git a/src/plugins/qt4projectmanager/qtoutputformatter.cpp b/src/plugins/qt4projectmanager/qtoutputformatter.cpp index c993cf2a0deaa175cb4f9d1bd487bcfdf82e10ff..98dc10b044dc8f99a2de666892b82afce8936f43 100644 --- a/src/plugins/qt4projectmanager/qtoutputformatter.cpp +++ b/src/plugins/qt4projectmanager/qtoutputformatter.cpp @@ -31,6 +31,7 @@ #include <texteditor/basetexteditor.h> #include <qt4projectmanager/qt4project.h> +#include <utils/qtcassert.h> #include <QtCore/QFileInfo> #include <QtCore/QUrl> @@ -176,6 +177,48 @@ void QtOutputFormatter::appendLine(QTextCursor &cursor, LinkResult lr, const QSt cursor.insertText(line.mid(lr.end), normalFormat); } +// Map absolute path in shadow build / in the deployment folder to the path in the project directory +// +// Input is e.g. +// C:/app-build-desktop/qml/app/main.qml (shadow build directory) +// C:/Private/e3026d63/qml/app/main.qml (Application data folder on Symbian device) +// /Users/x/app-build-desktop/App.app/Contents/Resources/qml/App/main.qml (folder on Mac OS X) +// which should be mapped to +// $PROJECTDIR/qml/app/main.qml +QString QtOutputFormatter::pathInSourceDirectory(const QString &originalFilePath) +{ + QTC_ASSERT(QFileInfo(originalFilePath).isAbsolute(), return originalFilePath); + + if (!m_project) + return originalFilePath; + + const QString projectDirectory = m_project.data()->projectDirectory(); + + QTC_ASSERT(!projectDirectory.isEmpty(), return originalFilePath); + QTC_ASSERT(!projectDirectory.endsWith(QLatin1Char('/')), return originalFilePath); + + const QChar separator = QLatin1Char('/'); + + if (originalFilePath.startsWith(projectDirectory + separator)) { + return originalFilePath; + } + + // Strip directories one by one from the beginning of the path, + // and see if the new relative path exists in the build directory. + if (originalFilePath.contains(separator)) { + for (int pos = originalFilePath.indexOf(separator); pos != -1; pos = originalFilePath.indexOf(separator, pos + 1)) { + QString candidate = originalFilePath; + candidate.remove(0, pos); + candidate.prepend(projectDirectory); + QFileInfo candidateInfo(candidate); + if (candidateInfo.exists() && candidateInfo.isFile()) + return candidate; + } + } + + return originalFilePath; +} + void QtOutputFormatter::handleLink(const QString &href) { if (!href.isEmpty()) { @@ -187,7 +230,8 @@ void QtOutputFormatter::handleLink(const QString &href) const QString fileName = QUrl(qmlLineColumnLink.cap(1)).toLocalFile(); const int line = qmlLineColumnLink.cap(2).toInt(); const int column = qmlLineColumnLink.cap(3).toInt(); - TextEditor::BaseTextEditor::openEditorAt(fileName, line, column - 1); + TextEditor::BaseTextEditor::openEditorAt(pathInSourceDirectory(fileName), line, column - 1); + return; } @@ -197,7 +241,7 @@ void QtOutputFormatter::handleLink(const QString &href) if (qmlLineLink.indexIn(href) != -1) { const QString fileName = QUrl(qmlLineLink.cap(1)).toLocalFile(); const int line = qmlLineLink.cap(2).toInt(); - TextEditor::BaseTextEditor::openEditorAt(fileName, line); + TextEditor::BaseTextEditor::openEditorAt(pathInSourceDirectory(fileName), line); return; } @@ -237,6 +281,9 @@ void QtOutputFormatter::handleLink(const QString &href) } } } + } else if (!fi.exists()) { + // map possible on-device path to source path + fileName = pathInSourceDirectory(fileName); } TextEditor::BaseTextEditor::openEditorAt(fileName, line, 0); return; diff --git a/src/plugins/qt4projectmanager/qtoutputformatter.h b/src/plugins/qt4projectmanager/qtoutputformatter.h index 08396e0c9b60fa6416fa32901ba7a5220216b28e..a5e4aff8f9755e0a874187d790692c804ed98149 100644 --- a/src/plugins/qt4projectmanager/qtoutputformatter.h +++ b/src/plugins/qt4projectmanager/qtoutputformatter.h @@ -65,6 +65,7 @@ public: private: LinkResult matchLine(const QString &line) const; void appendLine(QTextCursor & cursor, LinkResult lr, const QString &line, bool onStdError); + QString pathInSourceDirectory(const QString &originalFilePath); QRegExp m_qmlError; QRegExp m_qtError; diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp index 6f0661b8d3b166b3c9541eae2d5d0ba65a71c793..a11f0bd5c4d52ddd0cc9a0f56261e75b0d54baa2 100644 --- a/src/plugins/texteditor/basetexteditor.cpp +++ b/src/plugins/texteditor/basetexteditor.cpp @@ -2234,10 +2234,13 @@ bool BaseTextEditor::lineSeparatorsAllowed() const return d->m_lineSeparatorsAllowed; } -void BaseTextEditor::setCodeFoldingVisible(bool b) +void BaseTextEditor::updateCodeFoldingVisible() { - d->m_codeFoldingVisible = b && d->m_codeFoldingSupported; - slotUpdateExtraAreaWidth(); + const bool visible = d->m_codeFoldingSupported && d->m_displaySettings.m_displayFoldingMarkers; + if (d->m_codeFoldingVisible != visible) { + d->m_codeFoldingVisible = visible; + slotUpdateExtraAreaWidth(); + } } bool BaseTextEditor::codeFoldingVisible() const @@ -2254,6 +2257,7 @@ bool BaseTextEditor::codeFoldingVisible() const void BaseTextEditor::setCodeFoldingSupported(bool b) { d->m_codeFoldingSupported = b; + updateCodeFoldingVisible(); } bool BaseTextEditor::codeFoldingSupported() const @@ -5522,7 +5526,6 @@ void BaseTextEditor::setDisplaySettings(const DisplaySettings &ds) setLineWrapMode(ds.m_textWrapping ? QPlainTextEdit::WidgetWidth : QPlainTextEdit::NoWrap); setLineNumbersVisible(ds.m_displayLineNumbers); setVisibleWrapColumn(ds.m_showWrapColumn ? ds.m_wrapColumn : 0); - setCodeFoldingVisible(ds.m_displayFoldingMarkers); setHighlightCurrentLine(ds.m_highlightCurrentLine); setRevisionsVisible(ds.m_markTextChanges); setCenterOnScroll(ds.m_centerCursorOnScroll); @@ -5545,6 +5548,7 @@ void BaseTextEditor::setDisplaySettings(const DisplaySettings &ds) d->m_highlightBlocksInfo = BaseTextEditorPrivateHighlightBlocks(); } + updateCodeFoldingVisible(); updateHighlights(); viewport()->update(); extraArea()->update(); diff --git a/src/plugins/texteditor/basetexteditor.h b/src/plugins/texteditor/basetexteditor.h index f0774c75b0751c6d9fd4c4b8b7c23decc017819b..9b19c2f0448d88ec966875745392f88e60dc9f77 100644 --- a/src/plugins/texteditor/basetexteditor.h +++ b/src/plugins/texteditor/basetexteditor.h @@ -186,7 +186,7 @@ public: void setLineSeparatorsAllowed(bool b); bool lineSeparatorsAllowed() const; - void setCodeFoldingVisible(bool b); + void updateCodeFoldingVisible(); bool codeFoldingVisible() const; void setCodeFoldingSupported(bool b); diff --git a/src/plugins/texteditor/generichighlighter/highlightersettings.cpp b/src/plugins/texteditor/generichighlighter/highlightersettings.cpp index f2bf4e32a4e0fe008cb6293f4350d00500c57535..c87c0ba82526c320c572930bbd090a48a881e635 100644 --- a/src/plugins/texteditor/generichighlighter/highlightersettings.cpp +++ b/src/plugins/texteditor/generichighlighter/highlightersettings.cpp @@ -36,6 +36,7 @@ #include <QtCore/QLatin1Char> #include <QtCore/QDir> #include <QtCore/QFile> +#include <QtCore/QStringList> #ifdef Q_OS_UNIX #include <QtCore/QProcess> #endif @@ -43,8 +44,11 @@ namespace TextEditor { namespace Internal { -QString findDefinitionsLocation() +QString findFallbackDefinitionsLocation() { + QDir dir; + dir.setNameFilters(QStringList(QLatin1String("*.xml"))); + #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) static const QLatin1String kateSyntax[] = { QLatin1String("/share/apps/katepart/syntax"), @@ -54,7 +58,6 @@ QString findDefinitionsLocation() sizeof(kateSyntax) / sizeof(kateSyntax[0]); // Some wild guesses. - QDir dir; for (int i = 0; i < kateSyntaxCount; ++i) { QStringList paths; paths << QLatin1String("/usr") + kateSyntax[i] @@ -62,7 +65,7 @@ QString findDefinitionsLocation() << QLatin1String("/opt") + kateSyntax[i]; foreach (const QString &path, paths) { dir.setPath(path); - if (dir.exists()) + if (dir.exists() && !dir.entryInfoList().isEmpty()) return dir.path(); } } @@ -79,13 +82,17 @@ QString findDefinitionsLocation() output.remove(QLatin1Char('\n')); for (int i = 0; i < kateSyntaxCount; ++i) { dir.setPath(output + kateSyntax[i]); - if (dir.exists()) + if (dir.exists() && !dir.entryInfoList().isEmpty()) return dir.path(); } } } #endif + dir.setPath(Core::ICore::instance()->resourcePath() + QLatin1String("/generic-highlighter")); + if (dir.exists() && !dir.entryInfoList().isEmpty()) + return dir.path(); + return QString(); } @@ -139,7 +146,7 @@ void HighlighterSettings::fromSettings(const QString &category, QSettings *s) else m_definitionFilesPath = s->value(kDefinitionFilesPath).toString(); if (!s->contains(kFallbackDefinitionFilesPath)) { - m_fallbackDefinitionFilesPath = findDefinitionsLocation(); + m_fallbackDefinitionFilesPath = findFallbackDefinitionsLocation(); if (m_fallbackDefinitionFilesPath.isEmpty()) m_useFallbackLocation = false; else diff --git a/src/plugins/texteditor/generichighlighter/highlightersettings.h b/src/plugins/texteditor/generichighlighter/highlightersettings.h index 0fbbe7e3eda22bffae3b4834dce9adfa7e5055e2..323cf833ac359a133e8875dec86f145ac38b96aa 100644 --- a/src/plugins/texteditor/generichighlighter/highlightersettings.h +++ b/src/plugins/texteditor/generichighlighter/highlightersettings.h @@ -88,7 +88,7 @@ inline bool operator!=(const HighlighterSettings &a, const HighlighterSettings & { return !a.equals(b); } namespace Internal { -QString findDefinitionsLocation(); +QString findFallbackDefinitionsLocation(); } } // namespace TextEditor diff --git a/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp b/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp index 44eddbfc7953fba3eb768f71fa791df495ece7eb..ffa8086225392ded35315987574023bb2241a2a8 100644 --- a/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp +++ b/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp @@ -171,7 +171,7 @@ void HighlighterSettingsPage::settingsToUI() void HighlighterSettingsPage::resetDefinitionsLocation() { - const QString &location = findDefinitionsLocation(); + const QString &location = findFallbackDefinitionsLocation(); if (location.isEmpty()) QMessageBox::information(0, tr("Autodetect Definitions"), tr("No pre-installed definitions could be found.")); diff --git a/src/plugins/texteditor/plaintexteditor.cpp b/src/plugins/texteditor/plaintexteditor.cpp index 2a738b9cfab5c6f47cdd327b8749f8e39d2994d6..c976e85fd3096d4759fbbc96cb5592717a11cb22 100644 --- a/src/plugins/texteditor/plaintexteditor.cpp +++ b/src/plugins/texteditor/plaintexteditor.cpp @@ -164,7 +164,6 @@ void PlainTextEditor::configure(const Core::MimeType &mimeType) baseTextDocument()->setSyntaxHighlighter(highlighter); setCodeFoldingSupported(false); - setCodeFoldingVisible(false); if (!mimeType.isNull()) { m_isMissingSyntaxDefinition = true; @@ -189,7 +188,6 @@ void PlainTextEditor::configure(const Core::MimeType &mimeType) m_commentDefinition.setMultiLineEnd(definition->multiLineCommentEnd()); setCodeFoldingSupported(true); - setCodeFoldingVisible(true); } } else if (file()) { const QString &fileName = file()->fileName(); diff --git a/src/plugins/welcome/communitywelcomepagewidget.cpp b/src/plugins/welcome/communitywelcomepagewidget.cpp index b738d2aeba1adca8e71725085a54443a54978690..6b18c24fa5d04aad97b3da27d3de21354ebf2a64 100644 --- a/src/plugins/welcome/communitywelcomepagewidget.cpp +++ b/src/plugins/welcome/communitywelcomepagewidget.cpp @@ -45,7 +45,7 @@ struct Site { static const Site supportSites[] = { { QT_TRANSLATE_NOOP("Welcome::Internal::CommunityWelcomePageWidget", "<b>Forum Nokia</b><br /><font color='gray'>Mobile application support</font>"), - "http://www.forum.nokia.com/I_Want_To/Develop_Mobile_Applications/Technical_Support/"}, + "http://www.forum.nokia.com/Support/"}, { QT_TRANSLATE_NOOP("Welcome::Internal::CommunityWelcomePageWidget", "<b>Qt LGPL Support</b><br /><font color='gray'>Buy commercial Qt support</font>"), "http://shop.qt.nokia.com/en/support.html"},