Merge remote-tracking branch 'origin/4.0'

Conflicts:
	src/plugins/autotest/testcodeparser.cpp
	src/tools/clangbackend/ipcsource/clangbackendclangipc-source.pri
	tests/unit/unittest/unittest.pro

Change-Id: I9db4fbea6ea7c9fdd0d8e1703735af20c92e754b
This commit is contained in:
Eike Ziller
2016-05-09 16:37:41 +02:00
124 changed files with 12956 additions and 12418 deletions

View File

@@ -46,6 +46,7 @@ QMake Projects
CMake Projects
* Increased minimum CMake version to 3.0
* Changed CMake to run automatically in the background
* Added CMake generator setting per kit
* Added CMake configuration setting per kit and build configuration

View File

@@ -4,7 +4,21 @@ url = http://doc.qt.io/qtcreator
headerdirs =
sourcedirs = $SRCDIR/src
imagedirs = $SRCDIR/images $SRCDIR/templates/images
imagedirs = $SRCDIR/images \
$SRCDIR/templates/images \
$SRCDIR/../src/libs/qmleditorwidgets/images \
$SRCDIR/../src/plugins/android/images \
$SRCDIR/../src/plugins/autotest/images \
$SRCDIR/../src/plugins/classview/images \
$SRCDIR/../src/plugins/coreplugin/images \
$SRCDIR/../src/plugins/debugger/images \
$SRCDIR/../src/plugins/diffeditor/images \
$SRCDIR/../src/plugins/help/images \
$SRCDIR/../src/plugins/projectexplorer/images \
$SRCDIR/../src/plugins/qmldesigner/components/formeditor \
$SRCDIR/../src/plugins/qmldesigner/components/navigator \
$SRCDIR/../src/plugins/texteditor/images
outputdir = $OUTDIR
exampledirs = $SRCDIR/examples
examples.fileextensions += *.qml *.svg

View File

@@ -1,6 +1,7 @@
TARGET = TextFinder
TEMPLATE = app
QT += widgets
SOURCES += main.cpp\
textfinder.cpp

Binary file not shown.

Before

Width:  |  Height:  |  Size: 547 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 672 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 622 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 599 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1001 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 331 B

After

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 500 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 753 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 394 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 616 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 550 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 728 B

After

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 677 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 702 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 830 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 704 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 690 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 725 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 575 B

After

Width:  |  Height:  |  Size: 485 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 804 B

After

Width:  |  Height:  |  Size: 488 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 911 B

After

Width:  |  Height:  |  Size: 97 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 626 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 676 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 604 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 511 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 602 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 500 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 254 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 526 B

After

Width:  |  Height:  |  Size: 591 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 619 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 960 B

After

Width:  |  Height:  |  Size: 443 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 642 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 570 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 273 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 876 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 595 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 425 B

View File

@@ -72,7 +72,7 @@
CPU Usage Analyzer.
\note If data collection does not start automatically, select the
\inlineimage qtcreator-analyzer-button.png
\inlineimage recordfill.png
(\uicontrol {Collect profile data}) button.
\endlist

View File

@@ -52,6 +52,15 @@
diagnostics from it, select \uicontrol {Clang Static Analyzer} in
the \uicontrol Projects mode.
\section1 Supported Project Types and Tool Chains
The Clang Static Analyzer relies on the data (specific macros and include
directories) from the projects and tool chains. Not all projects
and tool chains can provide enough data for reasonable results.
Currently, only Qbs and qmake projects together with the GCC, MinGW, Clang
and Microsoft Visual Studio tool chains are supported.
\section1 Setting Up Clang Static Analyzer
As a tested version of Clang is shipped together with Qt Creator, no manual

View File

@@ -63,8 +63,7 @@
\li Use the application to analyze it.
\li Select the
\inlineimage qtcreator-debug-button-stop.png "Stop button"
\li Select the \inlineimage stop_small.png "Stop button"
button to view the results of the analysis in the
\uicontrol {Analysis} view.
@@ -171,8 +170,7 @@
\li Use the application to analyze it.
\li Select the
\inlineimage qtcreator-debug-button-stop.png "Stop button"
\li Select the \inlineimage stop_small.png "Stop button"
button to view the results of the analysis in the \uicontrol Profile
view.

View File

@@ -92,7 +92,7 @@
QML Profiler.
\note If data collection does not start automatically, select the
\inlineimage qtcreator-analyzer-button.png
\inlineimage recordfill.png
(\uicontrol {Enable Profiling}) button.
\endlist

View File

@@ -140,8 +140,7 @@
\li Select \uicontrol Tools > \uicontrol Options > \uicontrol Android to add paths to the
Android NDK and SDK.
You can use the
\inlineimage qtcreator-options-android-download-button.png
You can use the \inlineimage download.png
(\uicontrol Download) buttons to go to the sites where you can download
the Android NDK and SDK.

View File

@@ -109,12 +109,9 @@
work correctly due to a logic error. To locate this logic error, step
through the code using the following buttons:
\inlineimage qtcreator-debug-button-stop.png
(\uicontrol Stop),
\inlineimage qtcreator-debug-button-step-over.png
(\uicontrol {Step Over}),
\inlineimage qtcreator-debug-button-step-into.png
(\uicontrol {Step Into}),
and \inlineimage qtcreator-debug-button-step-out.png
(\uicontrol {Stop Debugger}), \inlineimage debugger_stepover_small.png
(\uicontrol {Step Over}), \inlineimage debugger_stepinto_small.png
(\uicontrol {Step Into}), and \inlineimage debugger_stepout_small.png
(\uicontrol {Step Out}).
*/

View File

@@ -74,8 +74,7 @@
\image qtquick-example-setting-breakpoint2.png
\li Click the
\inlineimage qtcreator-debug-button-step-into.png
\li Click the \inlineimage debugger_stepinto_small.png
(\uicontrol {Step Into}) button on the toolbar or press \key F11 to step
into the code in the stack. The samegame.js file opens in the code
editor at the function that starts a new game.

View File

@@ -50,8 +50,8 @@
Use the toolbar to navigate between open files and symbols in use. To browse
backward or forward through your location history, click
\inlineimage qtcreator-back.png
(\uicontrol {Go Back}) and \inlineimage qtcreator-forward.png
\inlineimage prev.png
(\uicontrol {Go Back}) and \inlineimage next.png
(\uicontrol {Go Forward}).
To go to any open file, select it from the \uicontrol {Open files} drop-down
@@ -94,7 +94,7 @@
\li To split the editor view into a top and bottom view, select
\uicontrol Window > \uicontrol Split, press \key {Ctrl+E, 2}, or
select the \inlineimage qtcreator-split-button.png
select the \inlineimage splitbutton_horizontal.png
(\uicontrol Split) button and then select \uicontrol Split.
Split command creates views below the currently active editor view.
@@ -122,8 +122,7 @@
To remove a split view, place the cursor within the view you want to
remove and select \uicontrol Window > \uicontrol {Remove Current Split},
press \key {Ctrl+E, 0}, or select the
\inlineimage qtcreator-remove-split-button.png
press \key {Ctrl+E, 0}, or select the \inlineimage splitbutton_closetop.png
(\uicontrol {Remove Split}) button. To remove all but the currently selected
split view, select \uicontrol Window > \uicontrol {Remove All Splits} or
press \key {Ctrl+E, 1}.

View File

@@ -63,12 +63,11 @@
removed text and then select \uicontrol {Apply Chunk}.
To view the differences in a unified view where changed rows are placed
below each other, select
\inlineimage qtcreator-switchto-unified-diffeditor.png
below each other, select \inlineimage unifieddiff.png
(\uicontrol {Switch to Unified Diff Editor}).
To switch back to the side-by-side view, select
\inlineimage qtcreator-switchto-sidebyside-diffeditor.png
\inlineimage sidebysidediff.png
(\uicontrol {Switch to Side by Side Diff Editor}).
To change the default colors, select \uicontrol Tools > \uicontrol Options >
@@ -105,11 +104,10 @@
By default, the horizontal scroll bars in the left and right pane are
synchronized. To use them independently of each other, select the
\inlineimage qtcreator-synchronizefocus.png
\inlineimage linkicon.png
(\uicontrol {Synchronize Horizontal Scroll Bars}) button.
If the files change outside \QC, select
\inlineimage qtcreator-regenerate-index.png
If the files change outside \QC, select \inlineimage reload_gray.png
(\uicontrol {Reload Editor}) to compare them again and to show the results.
To send a chunk of changes to a \l{Pasting and Fetching Code Snippets}

View File

@@ -1416,10 +1416,9 @@
If the text is found, all occurrences are highlighted as you type.
\li To go to the next occurrence, click \inlineimage qtcreator-next.png
\li To go to the next occurrence, click \inlineimage next.png
(\uicontrol {Find Next}), or press \key F3. To go to the previous
occurrence click
\inlineimage qtcreator-previous.png
occurrence click \inlineimage prev.png
(\uicontrol {Find Previous}), or press \key {Shift+F3}.
\endlist
@@ -1641,17 +1640,18 @@
\li To go directly to an instance, double-click the instance in the
\uicontrol {Search Results} pane.
\li To move between instances, click \inlineimage qtcreator-forward.png
and \inlineimage qtcreator-back.png
in the \uicontrol {Search Results} pane.
\li To move between instances, click the \inlineimage next.png
(\uicontrol {Next Item}) button and \inlineimage prev.png
(\uicontrol {Previous Item}) button in the
\uicontrol {Search Results} pane.
\li To expand and collapse the list of all instances, click
\li To expand and collapse the list of all instances, click the
\inlineimage qtcreator-expand.png
.
(\uicontrol {Expand All}) button.
\li To clear the search results, click
\inlineimage qtcreator-clear.png
.
\li To clear the search results, click the
\inlineimage clean_pane_small.png
(\uicontrol Clear) button.
\endlist
@@ -2110,7 +2110,7 @@
edit a function signature and by applying the changes to the
matching code.
\li Function signature. When this action is available, a light bulb
icon appears: \inlineimage qml-toolbar-indicator.png
icon appears: \inlineimage refactormarker.png
\row
\li Add #include for undeclared or forward declared identifier
\li Adds an \c {#include} directive to the current file to make the
@@ -2558,7 +2558,7 @@
\list 1
\li In the locator, click \inlineimage qtcreator-locator-magnify.png
\li In the locator, click \inlineimage magnifier.png
(\uicontrol Options) and select \uicontrol Configure to open the
\uicontrol Locator options.

View File

@@ -87,6 +87,9 @@
the editor to copy all elements to the clipboard by using 300 dpi. Then
paste the diagram to an application that can print images.
If you copy a selection of elements in the editor, only those elements and
their relations will be copied to the clipboard as an image.
To save diagrams as images, select \uicontrol Tools >
\uicontrol {Model Editor} > \uicontrol {Export Diagram}.
@@ -179,12 +182,21 @@
\endlist
\li To move the end of a relation to a different element, grab the
end point and drop it over another element that accepts relations
of that type. For example, only classes accept inheritances and
associations.
\li To create \e {sampling points} that divide a relation into two
connected lines, select a relation and press \key Shift+Click.
If possible, the end point of a relation is moved automatically to
draw the line to the next sampling point either vertically or
horizontally. To remove the selected sampling point, press
\key Ctrl+Click.
connected lines, select a relation and press \key Shift and click
on the relation line.
If possible, the end point of a relation is moved automatically
to draw the line to the next sampling point either vertically or
horizontally.
\li To remove a sampling point, press \key Ctrl and click the sampling
point.
\li To group elements, drag and drop a \uicontrol Boundary element to
the editor and resize it to enclose the elements in the group.
@@ -240,14 +252,7 @@
\endlist
\li In the \uicontrol Members field, specify members for the
class. Enter each member on a separate line using a C++
like syntax. For example, the following lines define the
method \c m that is private, virtual, and constant:
\code
private:
virtual int m(string a) const;
\endcode
class, as described in \l {Specifying Members}.
\li Select \uicontrol {Clean Up} to format the contents of
the \uicontrol Members field depending on their visibility
@@ -273,13 +278,60 @@
and relationship.
To create self-relations, start creating a new association and press
\key Shift to create a new \e {intermediate point} while dragging the
association. Create another intermediate point and drop the association
\key Shift to create a new \e {sampling point} while dragging the
association. Create another sampling point and drop the association
at the same class.
To add more points, press \key Shift and click a relation. To delete a
point, press \key Ctrl and click a point.
\section2 Specifying Members
To specify members for the class, enter each member on a separate line
using a C++ like syntax. For example, the following lines define the
method \c m that is private, virtual, and constant:
\code
private:
virtual int m(string a) const;
\endcode
You may group members:
\code
[Geometry]
QPointF position;
QSizeF size;
\endcode
You may add stereotypes to members:
\code
<<setter>> setPosition(const QPointF &pos);
\endcode
There are some limitations of the parser:
\list
\li Multi-line declarations work only if lines are wrapped
within nested brackets:
\code
void setSize(int width,
int height);
\endcode
\li Preprocessor macros will not be translated. Some Qt
keywords are recognized (for example Q_SLOT).
\li Function pointer declarations are interpreted as methods.
\li \c throw() and \c noexpect() specifiers are not ignored
but will make the declaration a method.
\endlist
\section1 Creating Component Diagrams
You can add source code components, such as libraries, databases, programs,
@@ -314,17 +366,19 @@
adds the \c UseCase custom element:
\code
Icon UseCase
Title: "Use-Case"
Elements: item
Stereotype: 'usecase'
Display: icon
Width: 40
Height: 20
BaseColor: #5fb4f0
Begin
Ellipse 20, 10, 20, 10
End
Icon {
id: UseCase
title: "Use-Case"
elements: item
stereotype: 'usecase'
display: icon
width: 40
height: 20
baseColor: #5fb4f0
Shape {
Ellipse { x: 20, y: 10, radiusX: 20, radiusY: 10 }
}
}
\endcode
For more information about the available options, see \e standard.def
@@ -333,5 +387,9 @@
You can add your own definition file and save it with the file extension
\e .def to add custom colors and icons for stereotypes, elements, or tool
bars.
bars. Either store this file in the the same directory as the
\e standard.def file or select the root element of a model and apply your
\e .def file to the property \uicontrol {Config path}.
*/

View File

@@ -156,7 +156,7 @@
\li Open a project that contains tests.
\li In the \uicontrol {Test Results} output pane, select
\inlineimage qtcreator-run.png
\inlineimage run_small.png
(\uicontrol {Run All Tests}) to run all test or
\inlineimage qtcreator-run-selected-tests.png
(\uicontrol {Run Selected Tests}) to run the selected tests.
@@ -233,7 +233,7 @@
\endtable
To view only messages of a particular type, select
\inlineimage qtcreator-filter.png
\inlineimage filtericon.png
(\uicontrol {Filter Test Results}), and then select the types of messages to
show.

View File

@@ -113,8 +113,7 @@
\list 1
\li Click the
\inlineimage qtcreator-help-add-bookmark.png
\li Click the \inlineimage bookmark.png
(\uicontrol {Add Bookmark}) button on the toolbar.
\li In the \uicontrol {Add Bookmark} dialog, click \uicontrol OK to save the
@@ -166,7 +165,7 @@
If you cannot find words that you know are there, indexing might not have
been completed for some reason. To regenerate the index, click
\inlineimage qtcreator-regenerate-index.png
\inlineimage reload_gray.png
(\uicontrol {Regenerate Index}).
Punctuation is not included in indexed terms. To find terms that contain

View File

@@ -135,7 +135,7 @@
\section1 Showing and Hiding the Sidebar
To toggle the sidebar in the \uicontrol Edit and \uicontrol Debug modes, click
\inlineimage qtcreator-togglebutton.png
\inlineimage sidebaricon.png
or press \key Alt+0 (\key Cmd+0 on OS X).
For more information on using the sidebar, see

View File

@@ -155,15 +155,14 @@
\list
\li To toggle the sidebar, click \inlineimage qtcreator-togglebutton.png
\li To toggle the sidebar, click \inlineimage sidebaricon.png
(\uicontrol {Hide Sidebar/Show Sidebar}) or press \key Alt+0
(\key Cmd+0 on OS X).
\li To split the sidebar, click \inlineimage qtcreator-splitbar.png
\li To split the sidebar, click \inlineimage splitbutton_horizontal.png
(\uicontrol {Split}). Select new content to view in the split view.
\li To close a sidebar view, click
\inlineimage qtcreator-remove-split-button.png
\li To close a sidebar view, click \inlineimage splitbutton_closetop.png
(\uicontrol {Close}).
\endlist
@@ -199,15 +198,14 @@
build, re-build, clean and run the project.
\li To hide the categories and sort project files alphabetically, click
\inlineimage qtcreator-filter.png
\inlineimage filtericon.png
(\uicontrol {Filter Tree}) and select \uicontrol{Simplify Tree}.
\li To hide source files which are automatically generated by the build
system, select \uicontrol {Filter Tree > Hide Generated Files}.
\li To keep the position in the project tree synchronized with the file
currently opened in the editor, click
\inlineimage qtcreator-synchronizefocus.png
currently opened in the editor, click \inlineimage linkicon.png
(\uicontrol {Synchronize with Editor}).
\li To see the absolute path of a file, move the mouse pointer over the
@@ -307,8 +305,7 @@
to open its source code in the code editor.
The test cases are listed in alphabetic order. To list them in the order in
which they are defined in the source code, select
\inlineimage qtcreator-autotests-sort-naturally.png
which they are defined in the source code, select \inlineimage leafsort.png
(\uicontrol {Sort Naturally}).
To run tests, select \uicontrol {Run All Tests} or

View File

@@ -77,8 +77,7 @@
automatically detected the installed kit. If no kits are available,
see \l{Adding Kits}.
\li Click
\inlineimage qtcreator-run.png
\li Click \inlineimage run_small.png
(\uicontrol Run) to build and run the application.
\li To see the compilation progress, press \key{Alt+4} to open the

View File

@@ -162,7 +162,7 @@
\li Select \uicontrol Build > \uicontrol {Build Project} to build the application.
\li Click the
\inlineimage qtcreator-run.png
\inlineimage run_small.png
(\uicontrol Run) button to deploy and run the application.
\endlist

View File

@@ -104,8 +104,7 @@
You can use \QC variables in arguments, executable paths, and working
directories. The variables take care of quoting their expansions, so you do
not need to put them in quotes. Select the
\inlineimage qtcreator-variables-button.png
not need to put them in quotes. Select the \inlineimage replace.png
(\uicontrol {Variables}) button in a field to select from a list of variables that
are available in a particular context.
@@ -143,7 +142,7 @@
Custom Process Step}.
By default, custom steps are enabled. To disable a custom step, select
the \inlineimage qtcreator-disable-steps.png
the \inlineimage buildstepdisable.png
(\uicontrol Disable) button.
\image qtcreator-build-steps-custom.png "Custom Process Step"
@@ -174,9 +173,9 @@
\li To remove a clean step, click \uicontrol{Remove Item}.
\li To change the order of steps, click
\inlineimage qtcreator-movestep.png
(\uicontrol {Move Up} and \uicontrol {Move Down}).
\li To change the order of steps, click \inlineimage arrowup.png
(\uicontrol {Move Up}) and \inlineimage arrowdown.png
(\uicontrol {Move Down}).
\endlist
\note For more information about the cleaning steps when using Qbs, see

View File

@@ -98,7 +98,7 @@
to reference the rectangle from other places.
\li Select the \uicontrol Layout tab, and then click
the \inlineimage qmldesigner-anchor-fill-screen.png
the \inlineimage anchor-fill-normal.png
(\uicontrol {Fill to Parent}) button to anchor the rectangle
to the item.
@@ -110,7 +110,7 @@
\li In the \uicontrol Properties pane, \uicontrol Id field, enter
\e bubble to be able to reference the image from other places.
\li Select the \inlineimage qmldesigner-export-item-button.png
\li Select the \inlineimage export_unchecked.png
(\uicontrol Export) button in the navigator to export the
\e mainWindow and \e bubble as properties.

View File

@@ -109,7 +109,7 @@
size.
\li In the \uicontrol Color field, click the
\inlineimage qmldesigner-transparent-button.png
\inlineimage button_color_none_normal.png
(\uicontrol Transparent) button to make the rectangle
transparent.
@@ -131,7 +131,7 @@
\uicontrol Library to \e topLeftRect in the navigator.
\li Click \uicontrol {Layout}, and then click the
\inlineimage qmldesigner-anchor-fill-screen.png
\inlineimage anchor-fill-normal.png
(\uicontrol {Fill to Parent}) button to anchor the mouse area to the
rectangle.
@@ -170,7 +170,7 @@
\endlist
\li In the \uicontrol Navigator, select the
\inlineimage qmldesigner-export-item-button.png
\inlineimage export_unchecked.png
(\uicontrol Export) button for each type to export all types as
properties. This enables you to use the properties in the
\e main.qml file.
@@ -270,7 +270,7 @@
\list a
\li Click \uicontrol NumberAnimation in the code editor to display the
\inlineimage qml-toolbar-indicator.png
\inlineimage refactormarker.png
icon, and then click the icon to open the toolbar:
\image qmldesigner-tutorial-quick-toolbar.png "Qt Quick toolbar for animation"

View File

@@ -71,7 +71,7 @@
the rectangle and produce rounded corners for the button.
\li Select \uicontrol {Layout}, and then select the
\inlineimage qmldesigner-anchor-fill-screen.png
\inlineimage anchor-fill-normal.png
(\uicontrol {Fill to Parent}) button to anchor the rectangle to
the item.
@@ -198,7 +198,7 @@
for example button_up.png.
\li Click \uicontrol {Layout}, and then click the
\inlineimage qmldesigner-anchor-fill-screen.png
\inlineimage anchor-fill-normal.png
(\uicontrol {Fill to Parent}) button to anchor the border image to the
\uicontrol Item.
@@ -248,8 +248,10 @@
\endlist
\li Click \uicontrol {Layout}, and then click the
\inlineimage qmldesigner-center-in.png "Anchor buttons"
(\uicontrol {Set Vertical Anchor} and \uicontrol {Set Horizontal Anchor})
\inlineimage anchor-vertical-normal.png
(\uicontrol {Set Vertical Anchor}) and
\inlineimage anchor-horizontal-normal.png
(\uicontrol {Set Horizontal Anchor})
buttons to inherit the vertical and horizontal centering from
the parent.

View File

@@ -113,9 +113,9 @@
you remove an item, the child items are also removed.
You can show and hide items to focus on specific parts of the application.
Click the
\inlineimage qmldesigner-show-hide-icon.png
icon to change the visibility of an item on the canvas. To change the
Click the \inlineimage button_color_none_normal.png
(\uicontrol Transparent) button to change the visibility of an item on the
canvas. To change the
visibility of an item in the application, select the \uicontrol Visibility
check box in the \uicontrol Properties pane or select \uicontrol Edit >
\uicontrol Visibility in the context menu.
@@ -133,8 +133,8 @@
To view lists of files or projects, instead, select \uicontrol {File System},
\uicontrol {Open Documents}, or \uicontrol Projects in the menu.
To view several types of content at a time, split the sidebar by clicking
\inlineimage qtcreator-splitbar.png
.
the \inlineimage splitbutton_horizontal.png
(\uicontrol Split) button.
\section2 Setting the Stacking Order
@@ -445,11 +445,10 @@
\section2 Snapping to Parent and Sibling Items
When you are working on a design, you can use snapping to align
items on the canvas. Click the
\inlineimage qmldesigner-snap-to-guides-button.png
items on the canvas. Click the \inlineimage snapping.png
button to have the items snap to their parent or sibling items. Snapping
lines automatically appear to help you position the items.
Click the \inlineimage qmldesigner-snap-to-anchors-button.png
Click the \inlineimage snapping_and_anchoring.png
button to anchor the item to the items that you snap to.
Choose \uicontrol {Tools > Options > Qt Quick > Qt Quick Designer} to specify
@@ -466,8 +465,7 @@
\section2 Hiding Item Boundaries
\QMLD displays the boundaries of items on the canvas. To hide
the boundaries, click the
\inlineimage qmldesigner-show-bounding-rectangles-button.png
the boundaries, click the \inlineimage boundingrect.png
button.
\section2 Selecting Items
@@ -511,8 +509,8 @@
the position of an item within a column or a row, the new position might
not be displayed correctly on the canvas.
To refresh the image on the canvas, press \key R or select
To refresh the image on the canvas, press \key R or select the
\inlineimage qmldesigner-reset-view.png
(\uicontrol {Reset View}).
(\uicontrol {Reset View}) button.
*/

View File

@@ -307,7 +307,7 @@
\li In the base state, add all items you will need in the
application (1).
While you work on one screen, you can click the
\inlineimage qmldesigner-show-hide-icon.png
\inlineimage eye_open.png
icon to hide items on the canvas that are not part of a screen.
\li In the \uicontrol States pane, click the empty slot to create a new state

View File

@@ -38,8 +38,7 @@
\title Using Qt Quick Toolbars
When you select a QML type in the code and a toolbar is available,
a light bulb icon appears:
\inlineimage qml-toolbar-indicator.png
a light bulb icon appears: \inlineimage refactormarker.png
. Select the icon to open the toolbar.
To open toolbars immediately when you select a QML type, select

View File

@@ -91,7 +91,7 @@
The property alias exports the button to the QML code that uses the form.
You can use the
\inlineimage qmldesigner-export-item-button.png
\inlineimage export_checked.png
(\uicontrol Export) button in the \uicontrol Navigator to export an item as
a property:

View File

@@ -73,14 +73,14 @@
\li Select the split view in the navigator, then select the
\uicontrol Layout tab in \uicontrol Properties (4), and then click
the \inlineimage qmldesigner-anchor-fill-screen.png
the \inlineimage anchor-fill-normal.png
(\uicontrol {Fill to Parent}) button to anchor the split view to the
item.
\li Drag and drop a \uicontrol TableView and a \uicontrol {Tab View}
from the library to the split view in the navigator.
\li Select the \inlineimage qmldesigner-export-item-button.png
\li Select the \inlineimage export_unchecked.png
(\uicontrol Export) button in the navigator to export the table view
as a property.

View File

@@ -319,7 +319,7 @@
\section1 Compiling and Running Your Program
Now that you have all the necessary files, click the
\inlineimage qtcreator-run.png
\inlineimage run_small.png
button to compile and run your program.
*/

View File

@@ -143,10 +143,10 @@ def qdump_X_QAbstractItemModel(d, value):
#d.putType(mi.type)
#gdb.execute("call free($ri)")
def qform__QModelIndex():
def qform_X_QModelIndex():
return [SimpleFormat, EnhancedFormat]
def qdump__QModelIndex(d, value):
def qdump_X_QModelIndex(d, value):
displayFormat = d.currentItemFormat()
if displayFormat == SimpleFormat:
d.putPlainChildren(value)
@@ -1956,7 +1956,8 @@ def qdump__QUrl(d, value):
def qdump__QUuid(d, value):
v = value["data4"]
d.putValue("{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}"
% (value["data1"], value["data2"], value["data3"],
% (toInteger(value["data1"]) & 0xfffffffff,
value["data2"], value["data3"],
v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7]))
d.putNumChild(1)
d.putPlainChildren(value)

View File

@@ -43,6 +43,14 @@
"index": 2,
"items":
[
{
"trKey": "Qt 5.7",
"value":
"{
'qtQuickVersion': '2.7',
'qtQuickWindowVersion': '2.2'
}"
},
{
"trKey": "Qt 5.6",
"value":

View File

@@ -45,6 +45,16 @@
"index": 2,
"items":
[
{
"trKey": "Qt 5.7",
"value":
"{
'qtQuickVersion': '2.7',
'qtQuickControlsVersion': '1.5',
'qtQuickDialogsVersion': '1.2',
'qtQuickLayoutsVersion': '1.3'
}"
},
{
"trKey": "Qt 5.6",
"value":

View File

@@ -918,18 +918,10 @@ Trotzdem fortfahren?</translation>
<source>Recent &amp;Files</source>
<translation>Zu&amp;letzt bearbeitete Dateien</translation>
</message>
<message>
<source>&amp;Save</source>
<translation>&amp;Speichern</translation>
</message>
<message>
<source>Save</source>
<translation>Speichern</translation>
</message>
<message>
<source>Save &amp;As...</source>
<translation>Speichern &amp;unter...</translation>
</message>
<message>
<source>Ctrl+Shift+S</source>
<translation>Ctrl+Shift+S</translation>
@@ -2036,10 +2028,6 @@ Weiterführende Informationen befinden sich in /etc/sysctl.d/10-ptrace.conf
</context>
<context>
<name>Debugger::Internal::DebuggerSettings</name>
<message>
<source>Verbose Log</source>
<translation>Ausführliches Logging</translation>
</message>
<message>
<source>Use Alternating Row Colors</source>
<translation>Alternierende Farben für Zeilen benutzen</translation>
@@ -2614,14 +2602,6 @@ Versuchen Sie: %2</translation>
<source>Adjust breakpoint locations</source>
<translation>Positionen der Haltepunkte korrigieren</translation>
</message>
<message>
<source>GDB allows setting breakpoints on source lines for which no code
was generated. In such situations the breakpoint is shifted to the
next source code line for which code was actually generated.
This option reflects such temporary change by moving the breakpoint
markers in the source code editor.</source>
<translation>Nicht alle Quellcode-Zeilen bewirken die Erzeugung von ausführbarem Code. Wenn man auf solche Zeilen einen Haltepunkt setzt, verhält er sich so, als ob er auf die nächste Zeile gesetzt worden wäre. Das Aktivieren der Einstellung &apos;Positionen der Haltepunkte korrigieren&apos; bewirkt, dass der Haltepunkt-Marker in so einem Fall auf die Stelle des resultierenden Haltepunkts verschoben wird.</translation>
</message>
<message>
<source>Use dynamic object type for display</source>
<translation>Dynamischen Objekttyp in Anzeige verwenden</translation>
@@ -2654,6 +2634,14 @@ emission ends up directly in the slot connected to it.</source>
receives a signal like SIGSEGV during debugging.</source>
<translation>Zeigt ein Benachrichtigungsfenster an, wenn die Anwendung während des Debuggens ein Signal wie SIGSEGV erhält.</translation>
</message>
<message>
<source>GDB allows setting breakpoints on source lines for which no code
was generated. In such situations the breakpoint is shifted to the
next source code line for which code was actually generated.
This option reflects such temporary change by moving the breakpoint
markers in the source code editor.</source>
<translation>Nicht alle Quellcode-Zeilen bewirken die Erzeugung von ausführbarem Code. Wenn man auf solche Zeilen einen Haltepunkt setzt, verhält er sich so, als ob er auf die nächste Zeile gesetzt worden wäre. Das Aktivieren der Einstellung &apos;Positionen der Haltepunkte korrigieren&apos; bewirkt, dass der Haltepunkt-Marker in so einem Fall auf die Stelle des resultierenden Haltepunkts verschoben wird.</translation>
</message>
<message>
<source>Allows or inhibits reading the user&apos;s default
.gdbinit file on debugger startup.</source>
@@ -3741,6 +3729,10 @@ Grund: %3</translation>
</context>
<context>
<name>Git::Internal::BranchDialog</name>
<message>
<source>Include branches and tags that have not been active for %1 days.</source>
<translation>Branches und Tags einschließen, die seit %1 Tagen nicht benutzt wurden.</translation>
</message>
<message>
<source>Checkout</source>
<translation>Auschecken</translation>
@@ -3849,6 +3841,10 @@ Grund: %3</translation>
<source>Set current branch to track the selected one.</source>
<translation>Richtet den aktuellen Branch so ein, dass er dem ausgewählten Branch folgt.</translation>
</message>
<message>
<source>&amp;Include old entries</source>
<translation>&amp;Alte Einträge einschließen</translation>
</message>
</context>
<context>
<name>Git::Internal::ChangeSelectionDialog</name>
@@ -5264,6 +5260,10 @@ Add, modify, and remove document filters, which determine the documentation set
<source>C header</source>
<translation>C Header-Datei</translation>
</message>
<message>
<source>Qt documentation file</source>
<translation>Qt-Dokumentationsdatei</translation>
</message>
<message>
<source>Qt MOC file</source>
<translation>Qt MOC Datei</translation>
@@ -6963,10 +6963,6 @@ konnte dem Projekt &quot;%2&quot; nicht hinzugefügt werden.</translation>
<source>Run</source>
<translation>Ausführen</translation>
</message>
<message>
<source>Sessions</source>
<translation>Sitzungen</translation>
</message>
<message>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
@@ -7109,6 +7105,10 @@ Möchten Sie sie ignorieren?</translation>
<source>Delete File...</source>
<translation>Datei löschen...</translation>
</message>
<message>
<source>S&amp;essions</source>
<translation>Sitzung&amp;en</translation>
</message>
<message>
<source>New Subproject...</source>
<translation>Neues Teilprojekt...</translation>
@@ -7129,6 +7129,10 @@ Möchten Sie sie ignorieren?</translation>
<source>The ID of the currently active kit.</source>
<translation>Die ID des aktiven Kits.</translation>
</message>
<message>
<source>The currently active run configuration&apos;s name.</source>
<translation>Der Name der aktiven Ausführungskonfiguration.</translation>
</message>
<message>
<source>Load Project</source>
<translation>Projekt laden</translation>
@@ -9626,17 +9630,17 @@ Sie können die Änderungen in einem Stash ablegen oder zurücksetzen.</translat
<source>Show property editor warnings</source>
<translation>Zeige Warnungen des Eigenschafteneditors</translation>
</message>
<message>
<source>Forward puppet output:</source>
<translation>Puppet-Ausgabe weiterleiten:</translation>
</message>
<message>
<source>Show warn exceptions</source>
<translation>Zeige Warnungsausnahmen</translation>
</message>
<message>
<source>Debug puppet:</source>
<translation>Debug-Puppet:</translation>
<source>Forward QML emulation layer output:</source>
<translation>Ausgabe der QML-Emulationsschicht weiterleiten:</translation>
</message>
<message>
<source>Debug QML emulation layer:</source>
<translation>Debug-QML-Emulationsschicht:</translation>
</message>
</context>
<context>
@@ -10217,10 +10221,6 @@ Sie können die Änderungen in einem Stash ablegen oder zurücksetzen.</translat
<source>Open Project in &quot;%1&quot;</source>
<translation>Projekt in &quot;%1&quot; öffnen</translation>
</message>
<message>
<source>Open With</source>
<translation>Öffnen mit</translation>
</message>
<message>
<source>Choose Folder...</source>
<translation>Ordner auswählen...</translation>
@@ -10358,6 +10358,10 @@ Sie können die Änderungen in einem Stash ablegen oder zurücksetzen.</translat
<source>Type of current build</source>
<translation>Typ der gegenwärtigen Build-Konfiguration</translation>
</message>
<message>
<source>The currently active run configuration&apos;s name.</source>
<translation>Der Name der aktiven Ausführungskonfiguration.</translation>
</message>
</context>
<context>
<name>ProjectExplorer::Internal::TargetSettingsPanelWidget</name>
@@ -12187,6 +12191,10 @@ IDs müssen außerdem mit einem Kleinbuchstaben beginnen.</translation>
<source>Original Size</source>
<translation>Originalgröße</translation>
</message>
<message>
<source>Export as Image</source>
<translation>Als Bild exportieren</translation>
</message>
</context>
<context>
<name>QmlJSEditor::Internal::QuickToolBarSettingsPage</name>
@@ -12616,65 +12624,6 @@ wenn es außerhalb von git bash aufgerufen wird.</translation>
<translation>Web-Suche</translation>
</message>
</context>
<context>
<name>ImageViewer::Internal::ImageViewerActionHandler</name>
<message>
<source>Zoom In</source>
<translation>Vergrößern</translation>
</message>
<message>
<source>Ctrl++</source>
<translation>Ctrl++</translation>
</message>
<message>
<source>Zoom Out</source>
<translation>Verkleinern</translation>
</message>
<message>
<source>Ctrl+-</source>
<translation>Ctrl+-</translation>
</message>
<message>
<source>Original Size</source>
<translation>Originalgröße</translation>
</message>
<message>
<source>Ctrl+0</source>
<translation>Ctrl+0</translation>
</message>
<message>
<source>Meta+0</source>
<translation>Meta+0</translation>
</message>
<message>
<source>Fit To Screen</source>
<translation>An Bildschirm anpassen</translation>
</message>
<message>
<source>Ctrl+=</source>
<translation>Ctrl+=</translation>
</message>
<message>
<source>Switch Background</source>
<translation>Hintergrund umschalten</translation>
</message>
<message>
<source>Switch Outline</source>
<translation>Umriss umschalten</translation>
</message>
<message>
<source>Toggle Animation</source>
<translation>Animation umschalten</translation>
</message>
<message>
<source>Ctrl+[</source>
<translation>Ctrl+[</translation>
</message>
<message>
<source>Ctrl+]</source>
<translation>Ctrl+]</translation>
</message>
</context>
<context>
<name>ProjectExplorer::Internal::BuildStepListWidget</name>
<message>
@@ -13928,10 +13877,6 @@ konnte nicht unter Versionsverwaltung (%2) gestellt werden
<source>Select</source>
<translation>Auswählen</translation>
</message>
<message>
<source>Zoom</source>
<translation>Vergrößern</translation>
</message>
<message>
<source>Start Debugging</source>
<translation>Debuggen</translation>
@@ -14220,10 +14165,6 @@ Soll es noch einmal versucht werden?</translation>
<source>QML Debugger disconnected.</source>
<translation>QML-Debugger getrennt.</translation>
</message>
<message>
<source>Context:</source>
<translation>Kontext:</translation>
</message>
</context>
<context>
<name>Git::Internal::BaseGitDiffArgumentsWidget</name>
@@ -15039,6 +14980,10 @@ Lokale Pull-Operationen werden nicht auf den Master-Branch angewandt.</translati
<source>Run CMake</source>
<translation>CMake ausführen</translation>
</message>
<message>
<source>Clear CMake Configuration</source>
<translation>CMake-Konfiguration bereinigen</translation>
</message>
<message>
<source>Failed opening project &quot;%1&quot;: Project is not a file</source>
<translation>Das Projekt &quot;%1&quot; konnte nicht geöffnet werden: Die angegebene Projektdatei ist keine Datei</translation>
@@ -16876,12 +16821,20 @@ Bei vollständiger Cache-Simulation werden weitere Ereigniszähler aktiviert:
<translation>QML-Profiler (extern)</translation>
</message>
<message>
<source>A Qml Profiler analysis is still in progress.</source>
<translation>Eine QML-Profiler Analyse läuft noch.</translation>
<source>A QML Profiler analysis is still in progress.</source>
<translation>Eine QML-Profiler-Analyse läuft noch.</translation>
</message>
<message>
<source>Start Qml Profiler.</source>
<translation>Starte QML-Profiler.</translation>
<source>Start QML Profiler analysis.</source>
<translation>Starte QML-Profiler-Analyse.</translation>
</message>
<message>
<source>Disable Profiling</source>
<translation>Profiling deaktivieren</translation>
</message>
<message>
<source>Enable Profiling</source>
<translation>Profiling aktivieren</translation>
</message>
<message>
<source>%1 s</source>
@@ -16923,14 +16876,6 @@ Wollen Sie die Daten vorher speichern?</translation>
<source>Hide or show event categories.</source>
<translation>Ereigniskategorien verstecken oder anzeigen.</translation>
</message>
<message>
<source>Disable profiling</source>
<translation>Profiling deaktivieren</translation>
</message>
<message>
<source>Enable profiling</source>
<translation>Profiling aktivieren</translation>
</message>
</context>
<context>
<name>BaseQtVersion</name>
@@ -18234,6 +18179,10 @@ Zusätzlich wird die Verbindung zum Gerät getestet.</translation>
</context>
<context>
<name>RemoteLinux::Internal::RemoteLinuxEnvironmentReader</name>
<message>
<source>Error: No device</source>
<translation>Fehler: Kein Gerät</translation>
</message>
<message>
<source>Error: %1</source>
<translation>Fehler: %1</translation>
@@ -18524,13 +18473,6 @@ Filter: %2
<translation>Das entfernte Kommando wurde erfolgreich ausgeführt.</translation>
</message>
</context>
<context>
<name>LinksBar</name>
<message>
<source>Qt Creator</source>
<translation>Qt Creator</translation>
</message>
</context>
<context>
<name>Debugger::Internal::CdbBreakEventWidget</name>
<message>
@@ -22297,12 +22239,12 @@ gehören nicht zu den verifizierten Remotes in %3. Anderen Ordner angeben?</tran
<translation>Der zur Erstellung zu verwendende Compiler.&lt;br&gt;Stellen Sie sicher, dass dieser Compiler Binärdateien erstellt, die mit dem Zielgerät, der Qt-Version und anderen verwendeten Bibliotheken kompatibel sind.</translation>
</message>
<message>
<source>Compiler:</source>
<translation>Compiler:</translation>
<source>&lt;No compiler&gt;</source>
<translation>&lt;Kein Compiler&gt;</translation>
</message>
<message>
<source>&lt;No compiler available&gt;</source>
<translation>&lt;Kein Compiler verfügbar&gt;</translation>
<source>Compiler:</source>
<translation>Compiler:</translation>
</message>
</context>
<context>
@@ -23673,10 +23615,6 @@ Qt Creator know about a likely URI.</source>
<source>Debugger</source>
<translation>Debugger</translation>
</message>
<message>
<source>No kit found.</source>
<translation>Es wurde kein Kit gefunden.</translation>
</message>
</context>
<context>
<name>Perforce::Internal::PerforceVersionControl</name>
@@ -23753,6 +23691,10 @@ Qt Creator know about a likely URI.</source>
<source>None</source>
<translation>Keine</translation>
</message>
<message>
<source>Path to the compiler executable</source>
<translation>Pfad zur ausführbaren Datei des Compilers</translation>
</message>
<message>
<source>No compiler set in kit.</source>
<translation>Im Kit ist kein Compiler eingerichtet.</translation>
@@ -23993,6 +23935,10 @@ Qt Creator know about a likely URI.</source>
<source>unknown</source>
<translation>unbekannt</translation>
</message>
<message>
<source>Path to the qmake executable</source>
<translation>Pfad zur ausführbaren Datei von qmake</translation>
</message>
</context>
<context>
<name>ProjectExplorer::RunConfiguration</name>
@@ -26669,6 +26615,10 @@ Teilnamen können verwendet werden, sofern sie eindeutig sind.</translation>
<source>Parsing of .qbs files has failed.</source>
<translation>Die Auswertung der .qbs-Dateien schlug fehl.</translation>
</message>
<message>
<source>Error retrieving run environment: %1</source>
<translation>Fehler beim Abfragen der Ausführungsumgebung: %1</translation>
</message>
<message>
<source>Qbs Run Configuration</source>
<translation>Qbs-Ausführungskonfiguration</translation>
@@ -27053,6 +27003,10 @@ Teilnamen können verwendet werden, sofern sie eindeutig sind.</translation>
</context>
<context>
<name>ProjectExplorer::SshDeviceProcess</name>
<message>
<source>Internal error</source>
<translation>Interner Fehler</translation>
</message>
<message>
<source>Failed to kill remote process: %1</source>
<translation>Fehlschlag beim Beenden des entfernten Prozesses: %1</translation>
@@ -28295,10 +28249,6 @@ Wollen Sie das bestehende Paket entfernen?</translation>
<source>Qt Account</source>
<translation>Qt Account</translation>
</message>
<message>
<source>Qt Cloud Services</source>
<translation>Qt Cloud Services</translation>
</message>
<message>
<source>Online Community</source>
<translation>Online-Community</translation>
@@ -29472,7 +29422,7 @@ Wählt eine für Desktop-Entwicklung geeignete Qt-Version aus, sofern sie verfü
<translation>Formulardateien</translation>
</message>
<message>
<source>StateCharts</source>
<source>State charts</source>
<translation>Statusdiagramme</translation>
</message>
<message>
@@ -35597,8 +35547,8 @@ und gestoppt werden.</translation>
<translation>Entfernen</translation>
</message>
<message>
<source>To-Do Settings</source>
<translation>To-do-Einstellungen</translation>
<source>To-Do</source>
<translation>To-do</translation>
</message>
</context>
<context>
@@ -35802,15 +35752,15 @@ Vielleicht sollten Sie die Zeit erhöhen?</translation>
<translation>Erwartete ein Integerelement.</translation>
</message>
<message>
<source>An error occurred with the clang static analyzer process.</source>
<source>An error occurred with the Clang Static Analyzer process.</source>
<translation>Im Clang Static Analyzer Prozess trat ein Fehler auf.</translation>
</message>
<message>
<source>Clang static analyzer crashed.</source>
<source>Clang Static Analyzer crashed.</source>
<translation>Der Clang Static Analyser ist abgestürzt.</translation>
</message>
<message>
<source>Clang static analyzer finished with exit code: %1.</source>
<source>Clang Static Analyzer finished with exit code: %1.</source>
<translation>Der Clang Static Analyser lieferte den Fehlercode: %1.</translation>
</message>
<message>
@@ -36603,6 +36553,18 @@ Ausgabe:
<source>Exception Triggered</source>
<translation>Ausnahme ausgelöst</translation>
</message>
<message>
<source>The inferior is in the Portable Executable format.
Selecting CDB as debugger would improve the debugging experience for this binary format.</source>
<translation>Der zu debuggende Prozess hat das Portable Executable-Format.
Für dieses Binärformat wäre CDB besser als Debugger geeignet.</translation>
</message>
<message>
<source>The inferior is in the ELF format.
Selecting GDB or LLDB as debugger would improve the debugging experience for this binary format.</source>
<translation>Der zu debuggende Prozess hat das ELF-Format.
Für dieses Binärformat wären GDB oder LLDB besser als Debugger geeignet.</translation>
</message>
<message>
<source>Found.</source>
<translation>Gefunden.</translation>
@@ -36619,6 +36581,14 @@ Ausgabe:
<source>Warning</source>
<translation>Warnung</translation>
</message>
<message>
<source>The selected debugger may be inappropiate for the inferior.
Examining symbols and setting breakpoints by file name and line number may fail.
</source>
<translation>Der gewählte Debugger könnte ungeeignet für den zu debuggenden Prozess sein.
Vielleicht können Symbole nicht untersucht werden oder Haltepunkte nicht anhand von Dateiname und Zeilennummer gesetzt werden.
</translation>
</message>
<message>
<source>This does not seem to be a &quot;Debug&quot; build.
Setting breakpoints by file name and line number may fail.</source>
@@ -38409,10 +38379,6 @@ Das Setzen von Haltepunkten anhand von Dateinamen und Zeilennummern könnte fehl
<source>Form</source>
<translation>Formular</translation>
</message>
<message>
<source>Suppressed Diagnostics:</source>
<translation>Unterdrückte Diagnosemeldungen:</translation>
</message>
<message>
<source>Remove Selected</source>
<translation>Ausgewählte entfernen</translation>
@@ -38421,6 +38387,10 @@ Das Setzen von Haltepunkten anhand von Dateinamen und Zeilennummern könnte fehl
<source>Remove All</source>
<translation>Alle entfernen</translation>
</message>
<message>
<source>Suppressed diagnostics:</source>
<translation>Unterdrückte Diagnosemeldungen:</translation>
</message>
</context>
<context>
<name>MainWindow</name>
@@ -38536,6 +38506,10 @@ Das Setzen von Haltepunkten anhand von Dateinamen und Zeilennummern könnte fehl
<source>In Percent</source>
<translation>In Prozent</translation>
</message>
<message>
<source>Location</source>
<translation>Ort</translation>
</message>
<message>
<source>No data available</source>
<translation>Keine Daten verfügbar</translation>
@@ -39365,7 +39339,7 @@ Nur Desktopkits sind erlaubt. Stellen Sie sicher, dass das aktive Kit ein Deskto
<translation>Meldung:</translation>
</message>
<message>
<source>Extended Message:</source>
<source>Extended message:</source>
<translation>Erweiterte Meldung:</translation>
</message>
<message>
@@ -39376,7 +39350,7 @@ Nur Desktopkits sind erlaubt. Stellen Sie sicher, dass das aktive Kit ein Deskto
<context>
<name>ClangStaticAnalyzer::Internal::ClangStaticAnalyzerDiagnosticView</name>
<message>
<source>Suppress this diagnostic</source>
<source>Suppress This Diagnostic</source>
<translation>Unterdrücke diese Diagnose</translation>
</message>
</context>
@@ -39390,8 +39364,8 @@ Nur Desktopkits sind erlaubt. Stellen Sie sicher, dass das aktive Kit ein Deskto
<context>
<name>ClangStaticAnalyzer::Internal::ClangStaticAnalyzerPlugin</name>
<message>
<source>Clang Static Analyzer Settings</source>
<translation>Clang Static Analyser Konfiguration</translation>
<source>Clang Static Analyzer</source>
<translation>Clang Static Analyzer</translation>
</message>
</context>
<context>
@@ -39415,6 +39389,10 @@ Nur Desktopkits sind erlaubt. Stellen Sie sicher, dass das aktive Kit ein Deskto
</context>
<context>
<name>ClangStaticAnalyzer::Internal::ClangStaticAnalyzerRunControl</name>
<message>
<source>Clang Static Analyzer</source>
<translation>Clang Static Analyzer</translation>
</message>
<message>
<source>Running Clang Static Analyzer on %1</source>
<translation>Starte Clang Static Analyzer mit %1</translation>
@@ -39474,7 +39452,7 @@ Nur Desktopkits sind erlaubt. Stellen Sie sicher, dass das aktive Kit ein Deskto
<translation>Gehe zu nächstem Fehler.</translation>
</message>
<message>
<source>Clang Static Analyzer uses the analyzer from the clang project to find bugs.</source>
<source>Clang Static Analyzer uses the analyzer from the Clang project to find bugs.</source>
<translation>Der Clang Static Analyzer benutzt den Analysierer des Clang Projekts um Fehler zu finden.</translation>
</message>
<message>
@@ -39494,15 +39472,15 @@ Nur Desktopkits sind erlaubt. Stellen Sie sicher, dass das aktive Kit ein Deskto
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Sie versuchen das Werkzeug &quot;%1&quot; auf eine Applikation im %2 Modus anzuwenden. Das Werkzeug sollte aber im Debugmodus benutzt werden, da eingeschaltete Assertions die Zahl der False-Positives verringern können.&lt;/p&gt;&lt;p&gt;Wollen Sie fortfahren und das Werkzeug im %2 Modus benutzen?&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
<source>A Clang analysis is still in progress.</source>
<translation>Eine Clang Analyse läuft noch.</translation>
<source>Clang Static Analyzer is still running.</source>
<translation>Clang Static Analyzer läuft noch.</translation>
</message>
<message>
<source>Start Qml Profiler.</source>
<translation>Starte den QML-Profiler.</translation>
<source>Start Clang Static Analyzer.</source>
<translation>Clang Static Analyzer starten.</translation>
</message>
<message>
<source>Clang Static Analyzer running.</source>
<source>Clang Static Analyzer is running.</source>
<translation>Clang Static Analyzer läuft.</translation>
</message>
<message>
@@ -39525,7 +39503,7 @@ Nur Desktopkits sind erlaubt. Stellen Sie sicher, dass das aktive Kit ein Deskto
<name>ClangStaticAnalyzer</name>
<message>
<source>The chosen file &quot;%1&quot; seems to point to an icecc binary not suitable for analyzing.
Please set a real clang executable.</source>
Please set a real Clang executable.</source>
<translation>Die gewählte Datei &quot;%1&quot; scheint auf ein für die Analyse ungeeignetes icecc-Binary zu verweisen.
Bitte wählen Sie eine korrekte ausführbare Clang-Datei.</translation>
</message>
@@ -39533,8 +39511,12 @@ Bitte wählen Sie eine korrekte ausführbare Clang-Datei.</translation>
<context>
<name>CMakeProjectManager::Internal::BuildDirManager</name>
<message>
<source>Running &apos;%1 %2&apos; in %3.</source>
<translation>Führe &apos;%1 %2&apos; in %3 aus.</translation>
<source>The build directory is not for %1</source>
<translation>Das Erstellungsverzeichnis gehört nicht zu %1</translation>
</message>
<message>
<source>Running &quot;%1 %2&quot; in %3.</source>
<translation>Führe &quot;%1 %2&quot; in %3 aus.</translation>
</message>
<message>
<source>Configuring &quot;%1&quot;</source>
@@ -39552,10 +39534,6 @@ Bitte wählen Sie eine korrekte ausführbare Clang-Datei.</translation>
<source>Failed to open %1 for reading.</source>
<translation>Die Datei %1 konnte nicht zum Lesen geöffnet werden.</translation>
</message>
<message>
<source>Build directory contains a build of the wrong project (%1).</source>
<translation>Das Erstellungsverzeichnis enthält ein falsches Projekt (%1).</translation>
</message>
</context>
<context>
<name>CMakeProjectManager::Internal::CMakeBuildStep</name>
@@ -39572,8 +39550,8 @@ Bitte wählen Sie eine korrekte ausführbare Clang-Datei.</translation>
<context>
<name>CMakeProjectManager::CMakeBuildStep</name>
<message>
<source>Qt Creator needs a cmake tool set up to build. Configure a cmake tool in the kit options.</source>
<translation>Qt Creator benötigt ein CMake Tool zum Erstellen. Die Konfiguration erfolgt in den Kit Eiunstellungen.</translation>
<source>Qt Creator needs a CMake Tool set up to build. Configure a CMake Tool in the kit options.</source>
<translation>Qt Creator benötigt ein CMake Tool zum Erstellen. Die Konfiguration erfolgt in den Kit Einstellungen.</translation>
</message>
</context>
<context>
@@ -40049,8 +40027,8 @@ Leer lassen, um das Dateisystem zu durchsuchen.</translation>
<translation>Starte %1...</translation>
</message>
<message>
<source>%1 crashed</source>
<translation>%1 ist abgestürzt</translation>
<source>%1 crashed.</source>
<translation>%1 ist abgestürzt.</translation>
</message>
<message>
<source>%1 exited with code %2</source>
@@ -40493,12 +40471,12 @@ Referenzen zu Elementen in anderen Dateien, Schleifen, o.ä.)</translation>
<context>
<name>QmlProfilerExtension::Internal::QmlProfilerExtensionPlugin</name>
<message>
<source>Action triggered</source>
<source>Action Triggered</source>
<translation>Aktion ausgelöst</translation>
</message>
<message>
<source>This is an action from QmlProfilerExtension.</source>
<translation>Dies ist eine Aktion der QmlProfilerExtension.</translation>
<source>This is an action from QML Profiler Extension.</source>
<translation>Dies ist eine Aktion der Qml Profiler Extension.</translation>
</message>
</context>
<context>
@@ -40519,7 +40497,7 @@ Referenzen zu Elementen in anderen Dateien, Schleifen, o.ä.)</translation>
<context>
<name>Valgrind::Internal::CallgrindTool</name>
<message>
<source>Valgrind Function Profile uses the Callgrind tool to record function calls when a program runs.</source>
<source>Valgrind Function Profiler uses the Callgrind tool to record function calls when a program runs.</source>
<translation>Das Profiling von Funktionen mit Valgrind verwendet das Programm &quot;callgrind&quot;, um Funktionsaufrufe während der Programmausführung aufzuzeichnen.</translation>
</message>
<message>
@@ -40599,9 +40577,17 @@ Referenzen zu Elementen in anderen Dateien, Schleifen, o.ä.)</translation>
<translation>Kosten relativ zu übergeordnetem Element</translation>
</message>
<message>
<source>Show costs relative to parent functions inclusive cost.</source>
<source>Show costs relative to parent function&apos;s inclusive cost.</source>
<translation>Zeige Kosten relativ zu den einschließlichen Kosten der rufenden Funktion.</translation>
</message>
<message>
<source>Remove template parameter lists when displaying function names.</source>
<translation>Beim Anzeigen von Funktionsnamen Template-Parameterlisten entfernen.</translation>
</message>
<message>
<source>Select This Function in the Analyzer Output</source>
<translation>Diese Funktion in der Analyseausgabe auswählen</translation>
</message>
<message>
<source>Cost Format</source>
<translation>Kostenformat</translation>
@@ -40610,10 +40596,6 @@ Referenzen zu Elementen in anderen Dateien, Schleifen, o.ä.)</translation>
<source>Enable cycle detection to properly handle recursive or circular function calls.</source>
<translation>Aktivieren Sie die Schleifenerkennung, um rekursive oder zyklische Funktionsaufrufe richtig zu behandeln.</translation>
</message>
<message>
<source>This removes template parameter lists when displaying function names.</source>
<translation>Entfernt Template-Parameterlisten bei der Anzeige von Funktionsnamen.</translation>
</message>
<message>
<source>Show Project Costs Only</source>
<translation>Nur Projektkosten anzeigen</translation>
@@ -40654,10 +40636,6 @@ Referenzen zu Elementen in anderen Dateien, Schleifen, o.ä.)</translation>
<source>Parsing failed.</source>
<translation>Die Auswertung schlug fehl.</translation>
</message>
<message>
<source>Select this Function in the Analyzer Output</source>
<translation>Diese Funktion in der Analyseausgabe auswählen</translation>
</message>
<message>
<source>Populating...</source>
<translation>Erstelle Ansicht...</translation>
@@ -40686,7 +40664,7 @@ Referenzen zu Elementen in anderen Dateien, Schleifen, o.ä.)</translation>
<translation>Konfigurationsverzeichnis auswählen</translation>
</message>
<message>
<source>Config Path:</source>
<source>Config path:</source>
<translation>Konfigurationspfad:</translation>
</message>
<message>
@@ -40753,4 +40731,122 @@ Referenzen zu Elementen in anderen Dateien, Schleifen, o.ä.)</translation>
<translation>Gleiche Größe</translation>
</message>
</context>
<context>
<name>SessionActionLabel</name>
<message>
<source>Clone</source>
<translation>Klonen</translation>
</message>
</context>
<context>
<name>ClangStaticAnalyzer::Internal::DummyRunConfiguration</name>
<message>
<source>Clang Static Analyzer</source>
<translation>Clang Static Analyzer</translation>
</message>
</context>
<context>
<name>ImageViewer::Internal::ExportDialog</name>
<message>
<source>File:</source>
<translation>Datei:</translation>
</message>
<message>
<source>x</source>
<extracomment>Multiplication, as in 32x32</extracomment>
<translation>x</translation>
</message>
<message>
<source>Size:</source>
<translation>Größe:</translation>
</message>
<message>
<source>%1 already exists.
Would you like to overwrite it?</source>
<translation>%1 existiert bereits.
Möchten Sie sie überschreiben?</translation>
</message>
</context>
<context>
<name>ImageViewer::Internal::ImageView</name>
<message>
<source>Export %1</source>
<translation>%1 exportieren</translation>
</message>
<message>
<source>Exported &quot;%1&quot;, %2x%3, %4 bytes</source>
<translation>&quot;%1&quot; exportiert, %2x%3, %4 Bytes</translation>
</message>
<message>
<source>Export Image</source>
<translation>Bild exportieren</translation>
</message>
<message>
<source>Could not write file &quot;%1&quot;.</source>
<translation>Die Datei &quot;%1&quot; konnte nicht geschrieben werden.</translation>
</message>
</context>
<context>
<name>ImageViewer::Internal::ImageViewerPlugin</name>
<message>
<source>Zoom In</source>
<translation>Vergrößern</translation>
</message>
<message>
<source>Ctrl++</source>
<translation>Ctrl++</translation>
</message>
<message>
<source>Zoom Out</source>
<translation>Verkleinern</translation>
</message>
<message>
<source>Ctrl+-</source>
<translation>Ctrl+-</translation>
</message>
<message>
<source>Original Size</source>
<translation>Originalgröße</translation>
</message>
<message>
<source>Meta+0</source>
<translation>Meta+0</translation>
</message>
<message>
<source>Ctrl+0</source>
<translation>Ctrl+0</translation>
</message>
<message>
<source>Fit to Screen</source>
<translation>An Bildschirm anpassen</translation>
</message>
<message>
<source>Ctrl+=</source>
<translation>Ctrl+=</translation>
</message>
<message>
<source>Switch Background</source>
<translation>Hintergrund umschalten</translation>
</message>
<message>
<source>Ctrl+[</source>
<translation>Ctrl+[</translation>
</message>
<message>
<source>Switch Outline</source>
<translation>Umriss umschalten</translation>
</message>
<message>
<source>Ctrl+]</source>
<translation>Ctrl+]</translation>
</message>
<message>
<source>Toggle Animation</source>
<translation>Animation umschalten</translation>
</message>
<message>
<source>Export Image</source>
<translation>Bild exportieren</translation>
</message>
</context>
</TS>

File diff suppressed because it is too large Load Diff

View File

@@ -2,8 +2,198 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeIconFile</key>
<string>profile.icns</string>
<key>UTTypeDescription</key>
<string>Qt Creator Makefile Based Project File</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.plain-text</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.qtcreator-genericproject</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>creator</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeIconFile</key>
<string>profile.icns</string>
<key>UTTypeDescription</key>
<string>Quick Project File</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.plain-text</string>
<string>org.qt-project.qml</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.qtcreator-qmlproject</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>qmlproject</string>
</array>
</dict>
</dict>
</array>
<key>UTImportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeIconFile</key>
<string>profile.icns</string>
<key>UTTypeDescription</key>
<string>Qt Project File</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.pro</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>pro</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeIconFile</key>
<string>prifile.icns</string>
<key>UTTypeDescription</key>
<string>Qt Project Include File</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.pri</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>pri</string>
<string>prf</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeIconFile</key>
<string>profile.icns</string>
<key>UTTypeDescription</key>
<string>Qbs Project File</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.qbs</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>qbs</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeDescription</key>
<string>Qt Resource File</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
<string>public.xml</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.qrc</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>qrc</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeDescription</key>
<string>Qt UI File</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
<string>public.xml</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.ui</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>ui</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeDescription</key>
<string>Qt Markup Language</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.qml</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>qml</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeDescription</key>
<string>Qt Documentation</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.qdoc</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>qdoc</string>
</array>
</dict>
</dict>
<dict>
<key>UTTypeDescription</key>
<string>Qt Documentation Configuration</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.source-code</string>
</array>
<key>UTTypeIdentifier</key>
<string>org.qt-project.qdocconf</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>qdocconf</string>
</array>
</dict>
</dict>
</array>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSSupportsAutomaticGraphicsSwitching</key>
<true/>
<key>CFBundleDocumentTypes</key>
@@ -11,229 +201,43 @@
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleTypeIconFile</key>
<string>profile.icns</string>
<key>CFBundleTypeExtensions</key>
<array>
<string>pro</string>
</array>
<key>CFBundleTypeName</key>
<string>Qt Project File</string>
<key>LSHandlerRank</key>
<string>Default</string>
<key>LSItemContentTypes</key>
<array>
<string>org.qt-project.pro</string>
<string>org.qt-project.pri</string>
<string>org.qt-project.qbs</string>
<string>org.qt-project.qrc</string>
<string>org.qt-project.ui</string>
<string>org.qt-project.qml</string>
<string>org.qt-project.qdoc</string>
<string>org.qt-project.qdocconf</string>
<string>org.qt-project.qtcreator-genericproject</string>
<string>org.qt-project.qtcreator-qmlproject</string>
</array>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleTypeIconFile</key>
<string>prifile.icns</string>
<key>CFBundleTypeExtensions</key>
<key>LSItemContentTypes</key>
<array>
<string>pri</string>
<string>public.c-source</string>
<string>public.objective-c-source</string>
<string>public.c-plus-plus-source</string>
<string>public.objective-c-plus-plus-source</string>
<string>public.c-header</string>
<string>public.c-plus-plus-header</string>
<string>com.sun.java-source</string>
<string>com.netscape.javascript-source</string>
<string>public.python-script</string>
<string>public.plain-text</string>
<string>com.apple.nspboard-type</string>
</array>
<key>CFBundleTypeName</key>
<string>Qt Project Include File</string>
<key>LSHandlerRank</key>
<string>Default</string>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleTypeIconFile</key>
<string>profile.icns</string>
<key>CFBundleTypeExtensions</key>
<array>
<string>qbs</string>
</array>
<key>CFBundleTypeName</key>
<string>Qbs Project File</string>
<key>LSHandlerRank</key>
<string>Default</string>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleTypeIconFile</key>
<string>profile.icns</string>
<key>CFBundleTypeExtensions</key>
<array>
<string>creator</string>
</array>
<key>CFBundleTypeName</key>
<string>Qt Creator Makefile Based Project File</string>
<key>LSHandlerRank</key>
<string>Default</string>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleTypeIconFile</key>
<string>profile.icns</string>
<key>CFBundleTypeExtensions</key>
<array>
<string>qmlproject</string>
</array>
<key>CFBundleTypeName</key>
<string>Quick Project File</string>
<key>LSHandlerRank</key>
<string>Default</string>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleTypeExtensions</key>
<array>
<string>qrc</string>
</array>
<key>CFBundleTypeName</key>
<string>Qt Resource File</string>
<key>LSHandlerRank</key>
<string>Default</string>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleTypeExtensions</key>
<array>
<string>ui</string>
</array>
<key>CFBundleTypeName</key>
<string>Qt UI File</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>qml</string>
</array>
<key>CFBundleTypeName</key>
<string>QML File</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
<string>utxt</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>h</string>
<string>hpp</string>
</array>
<key>CFBundleTypeName</key>
<string>Header File</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
<string>utxt</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>cc</string>
<string>CC</string>
<string>cp</string>
<string>CP</string>
<string>cpp</string>
<string>CPP</string>
<string>cxx</string>
<string>CXX</string>
<string>c++</string>
<string>C++</string>
</array>
<key>CFBundleTypeName</key>
<string>C++ Source File</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
<string>utxt</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>mm</string>
<string>MM</string>
</array>
<key>CFBundleTypeName</key>
<string>Objective-C++ Source File</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
<string>utxt</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>m</string>
</array>
<key>CFBundleTypeName</key>
<string>Objective-C Source File</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
<string>utxt</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>c</string>
<string>C</string>
</array>
<key>CFBundleTypeName</key>
<string>C Source File</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
<string>utxt</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>txt</string>
<string>text</string>
</array>
<key>CFBundleTypeName</key>
<string>Text File</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>*</string>
</array>
<key>CFBundleTypeName</key>
<string>NSStringPboardType</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>****</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
</dict>
</array>
<key>NSHumanReadableCopyright</key>
<string>(C) 2016 The Qt Company Ltd</string>
<key>NSHumanReadableCopyright</key>
<string>(C) 2016 The Qt Company Ltd</string>
<key>CFBundleIconFile</key>
<string>qtcreator</string>
<key>CFBundlePackageType</key>

View File

@@ -833,6 +833,7 @@ void PluginManagerPrivate::nextDelayedInitialize()
break; // do next delayedInitialize after a delay
}
if (delayedInitializeQueue.isEmpty()) {
m_isInitializationDone = true;
delete delayedInitializeTimer;
delayedInitializeTimer = 0;
profilingSummary();
@@ -1673,6 +1674,11 @@ QString PluginManager::platformName()
return result;
}
bool PluginManager::isInitializationDone()
{
return d->m_isInitializationDone;
}
/*!
Retrieves one object with \a name from the object pool.
\sa addObject()

View File

@@ -146,6 +146,8 @@ public:
static QString platformName();
static bool isInitializationDone();
signals:
void objectAdded(QObject *obj);
void aboutToRemoveObject(QObject *obj);

View File

@@ -131,6 +131,8 @@ public:
mutable QReadWriteLock m_lock;
bool m_isInitializationDone = false;
private slots:
void nextDelayedInitialize();
void asyncShutdownFinished();

View File

@@ -29,6 +29,7 @@
#include <QSharedPointer>
#include <QObject>
#include <QPointer>
#include <QTimer>
#include <QRect>
@@ -106,7 +107,7 @@ private:
void showTip();
void hideTipWithDelay();
Internal::QTipLabel *m_tip;
QPointer<Internal::QTipLabel> m_tip;
QWidget *m_widget;
QRect m_rect;
QTimer m_showTimer;

View File

@@ -713,9 +713,21 @@ void TreeItem::removeChildren()
void TreeItem::sortChildren(const std::function<bool(const TreeItem *, const TreeItem *)> &cmp)
{
if (m_model) {
m_model->layoutAboutToBeChanged();
std::sort(m_children.begin(), m_children.end(), cmp);
m_model->layoutChanged();
if (const int n = rowCount()) {
QVector<TreeItem *> tmp = m_children;
std::sort(tmp.begin(), tmp.end(), cmp);
if (tmp == m_children) {
// Nothing changed.
} else {
QModelIndex idx = index();
m_model->beginRemoveRows(idx, 0, n - 1);
m_children.clear();
m_model->endRemoveRows();
m_model->beginInsertRows(idx, 0, n - 1);
tmp.swap(m_children);
m_model->endInsertRows();
}
}
} else {
std::sort(m_children.begin(), m_children.end(), cmp);
}

View File

@@ -588,8 +588,11 @@ QVector<AndroidDeviceInfo> AndroidConfig::connectedDevices(const QString &adbToo
else
dev.state = AndroidDeviceInfo::OkState;
if (dev.type == AndroidDeviceInfo::Emulator)
if (dev.type == AndroidDeviceInfo::Emulator) {
dev.avdname = getAvdName(dev.serialNumber);
if (dev.avdname.isEmpty())
dev.avdname = serialNo;
}
devices.push_back(dev);
}
@@ -921,9 +924,11 @@ QString AndroidConfig::getAvdName(const QString &serialnumber)
QTcpSocket tcpSocket;
tcpSocket.connectToHost(QHostAddress(QHostAddress::LocalHost), port);
tcpSocket.waitForConnected();
if (!tcpSocket.waitForConnected(100)) // Don't wait more than 100ms for a local connection
return QString{};
tcpSocket.write(avdName + "exit\n");
tcpSocket.waitForDisconnected();
tcpSocket.waitForDisconnected(500);
QByteArray name;
const QByteArrayList response = tcpSocket.readAll().split('\n');

View File

@@ -42,6 +42,8 @@
#include <qtsupport/qtkitinformation.h>
#include <utils/hostosinfo.h>
#include <QDirIterator>
#include <QTcpServer>
@@ -93,6 +95,8 @@ RunControl *AndroidDebugSupport::createDebugRunControl(AndroidRunConfiguration *
params.displayName = AndroidManager::packageName(target);
params.remoteSetupNeeded = true;
params.useContinueInsteadOfRun = true;
if (!Utils::HostOsInfo::isWindowsHost()) // Workaround for NDK 11c(b?)
params.useTargetAsync = true;
auto aspect = runConfig->extraAspect<DebuggerRunConfigurationAspect>();
if (aspect->useCppDebugger()) {

View File

@@ -177,20 +177,21 @@ static QByteArray getFileContent(QString filePath)
static bool includesQtTest(const CPlusPlus::Document::Ptr &doc,
const CppTools::CppModelManager *cppMM)
{
static QString expectedHeaderPrefix
static QStringList expectedHeaderPrefixes
= Utils::HostOsInfo::isMacHost()
? QLatin1String("QtTest.framework/Headers")
: QLatin1String("QtTest");
? QStringList({ QLatin1String("QtTest.framework/Headers"), QLatin1String("QtTest") })
: QStringList({ QLatin1String("QtTest") });
const QList<CPlusPlus::Document::Include> includes = doc->resolvedIncludes();
foreach (const CPlusPlus::Document::Include &inc, includes) {
// TODO this short cut works only for #include <QtTest>
// bad, as there could be much more different approaches
if (inc.unresolvedFileName() == QLatin1String("QtTest")
&& inc.resolvedFileName().endsWith(
QString::fromLatin1("%1/QtTest").arg(expectedHeaderPrefix))) {
return true;
if (inc.unresolvedFileName() == QLatin1String("QtTest")) {
foreach (const QString &prefix, expectedHeaderPrefixes) {
if (inc.resolvedFileName().endsWith(QString::fromLatin1("%1/QtTest").arg(prefix)))
return true;
}
}
}
@@ -198,9 +199,9 @@ static bool includesQtTest(const CPlusPlus::Document::Ptr &doc,
CPlusPlus::Snapshot snapshot = cppMM->snapshot();
const QSet<QString> allIncludes = snapshot.allIncludesForDocument(doc->fileName());
foreach (const QString &include, allIncludes) {
if (include.endsWith(QString::fromLatin1("%1/qtest.h").arg(expectedHeaderPrefix))) {
return true;
foreach (const QString &prefix, expectedHeaderPrefixes) {
if (include.endsWith(QString::fromLatin1("%1/qtest.h").arg(prefix)))
return true;
}
}
}
@@ -210,25 +211,31 @@ static bool includesQtTest(const CPlusPlus::Document::Ptr &doc,
static bool includesQtQuickTest(const CPlusPlus::Document::Ptr &doc,
const CppTools::CppModelManager *cppMM)
{
static QString expectedHeaderPrefix
static QStringList expectedHeaderPrefixes
= Utils::HostOsInfo::isMacHost()
? QLatin1String("QtQuickTest.framework/Headers")
: QLatin1String("QtQuickTest");
? QStringList({ QLatin1String("QtQuickTest.framework/Headers"),
QLatin1String("QtQuickTest") })
: QStringList({ QLatin1String("QtQuickTest") });
const QList<CPlusPlus::Document::Include> includes = doc->resolvedIncludes();
foreach (const CPlusPlus::Document::Include &inc, includes) {
if (inc.unresolvedFileName() == QLatin1String("QtQuickTest/quicktest.h")
&& inc.resolvedFileName().endsWith(
QString::fromLatin1("%1/quicktest.h").arg(expectedHeaderPrefix))) {
return true;
if (inc.unresolvedFileName() == QLatin1String("QtQuickTest/quicktest.h")) {
foreach (const QString &prefix, expectedHeaderPrefixes) {
if (inc.resolvedFileName().endsWith(
QString::fromLatin1("%1/quicktest.h").arg(prefix))) {
return true;
}
}
}
}
if (cppMM) {
foreach (const QString &include, cppMM->snapshot().allIncludesForDocument(doc->fileName())) {
if (include.endsWith(QString::fromLatin1("%1/quicktest.h").arg(expectedHeaderPrefix)))
return true;
foreach (const QString &prefix, expectedHeaderPrefixes) {
if (include.endsWith(QString::fromLatin1("%1/quicktest.h").arg(prefix)))
return true;
}
}
}
return false;
@@ -404,31 +411,31 @@ static CPlusPlus::Document::Ptr declaringDocument(CPlusPlus::Document::Ptr doc,
return declaringDoc;
}
static bool hasFunctionWithDataTagUsage(const QMap<QString, TestCodeLocationAndType> &testFunctions)
{
foreach (const QString &functionName, testFunctions.keys()) {
if (functionName.endsWith(QLatin1String("_data")) &&
testFunctions.contains(functionName.left(functionName.size() - 5))) {
return true;
}
}
return false;
}
static QMap<QString, TestCodeLocationList> checkForDataTags(const QString &fileName,
static QSet<QString> filesWithDataFunctionDefinitions(
const QMap<QString, TestCodeLocationAndType> &testFunctions)
{
if (hasFunctionWithDataTagUsage(testFunctions)) {
const CPlusPlus::Snapshot snapshot = CPlusPlus::CppModelManagerBase::instance()->snapshot();
const QByteArray fileContent = getFileContent(fileName);
CPlusPlus::Document::Ptr document = snapshot.preprocessedDocument(fileContent, fileName);
document->check();
CPlusPlus::AST *ast = document->translationUnit()->ast();
TestDataFunctionVisitor visitor(document);
visitor.accept(ast);
return visitor.dataTags();
QSet<QString> result;
QMap<QString, TestCodeLocationAndType>::ConstIterator it = testFunctions.begin();
const QMap<QString, TestCodeLocationAndType>::ConstIterator end = testFunctions.end();
for ( ; it != end; ++it) {
const QString &key = it.key();
if (key.endsWith(QLatin1String("_data")) && testFunctions.contains(key.left(key.size() - 5)))
result.insert(it.value().m_name);
}
return QMap<QString, TestCodeLocationList>();
return result;
}
static QMap<QString, TestCodeLocationList> checkForDataTags(const QString &fileName)
{
const CPlusPlus::Snapshot snapshot = CPlusPlus::CppModelManagerBase::instance()->snapshot();
const QByteArray fileContent = getFileContent(fileName);
CPlusPlus::Document::Ptr document = snapshot.preprocessedDocument(fileContent, fileName);
document->check();
CPlusPlus::AST *ast = document->translationUnit()->ast();
TestDataFunctionVisitor visitor(document);
visitor.accept(ast);
return visitor.dataTags();
}
/****** end of helpers ******/
@@ -484,12 +491,11 @@ static bool handleQtTest(QFutureInterface<TestParseResult> futureInterface,
return false;
const QMap<QString, TestCodeLocationAndType> testFunctions = visitor.privateSlots();
const QSet<QString> &files = filesWithDataFunctionDefinitions(testFunctions);
QMap<QString, TestCodeLocationList> dataTags =
checkForDataTags(declaringDoc->fileName(), testFunctions);
if (declaringDoc->fileName() != fileName)
dataTags.unite(checkForDataTags(fileName, testFunctions));
QMap<QString, TestCodeLocationList> dataTags;
foreach (const QString &file, files)
dataTags.unite(checkForDataTags(file));
TestParseResult parseResult(TestTreeModel::AutoTest);
parseResult.fileName = declaringDoc->fileName();

View File

@@ -70,10 +70,6 @@ bool ClangStaticAnalyzerRunControlFactory::canRun(RunConfiguration *runConfigura
Project *project = runConfiguration->target()->project();
QTC_ASSERT(project, return false);
if (project->id() != "Qt4ProjectManager.Qt4Project" && project->id() != "Qbs.QbsProject")
return false;
const Core::Context context = project->projectLanguages();
if (!context.contains(ProjectExplorer::Constants::LANG_CXX))
return false;
@@ -83,10 +79,7 @@ bool ClangStaticAnalyzerRunControlFactory::canRun(RunConfiguration *runConfigura
Kit *kit = target->kit();
QTC_ASSERT(kit, return false);
ToolChain *toolChain = ToolChainKitInformation::toolChain(kit);
return toolChain && (toolChain->typeId() == ProjectExplorer::Constants::CLANG_TOOLCHAIN_TYPEID
|| toolChain->typeId() == ProjectExplorer::Constants::GCC_TOOLCHAIN_TYPEID
|| toolChain->typeId() == ProjectExplorer::Constants::MINGW_TOOLCHAIN_TYPEID
|| toolChain->typeId() == ProjectExplorer::Constants::MSVC_TOOLCHAIN_TYPEID);
return toolChain;
}
RunControl *ClangStaticAnalyzerRunControlFactory::create(RunConfiguration *runConfiguration,

View File

@@ -238,6 +238,13 @@ QObject *CorePlugin::remoteCommand(const QStringList & /* options */,
const QString &workingDirectory,
const QStringList &args)
{
if (!ExtensionSystem::PluginManager::isInitializationDone()) {
connect(ExtensionSystem::PluginManager::instance(), &ExtensionSystem::PluginManager::initializationDone,
this, [this, workingDirectory, args]() {
remoteCommand(QStringList(), workingDirectory, args);
});
return nullptr;
}
IDocument *res = m_mainWindow->openFiles(
args, ICore::OpenFilesFlags(ICore::SwitchMode | ICore::CanContainLineAndColumnNumbers),
workingDirectory);

View File

@@ -559,6 +559,14 @@ public:
{
if (!(mode == DebugRunMode || mode == DebugRunModeWithBreakOnMain))
return false;
Runnable runnable = runConfig->runnable();
if (runnable.is<StandardRunnable>()) {
IDevice::ConstPtr device = runnable.as<StandardRunnable>().device;
if (device && device->type() == ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE)
return true;
}
return DeviceTypeKitInformation::deviceTypeId(runConfig->target()->kit())
== ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE
|| isDebuggableScript(runConfig);

View File

@@ -97,6 +97,7 @@ public:
// Used by Android to avoid false positives on warnOnRelease
bool skipExecutableValidation = false;
bool useTargetAsync = false;
QStringList additionalSearchDirectories;
// Used by iOS.

View File

@@ -4436,7 +4436,12 @@ bool GdbEngine::usesExecInterrupt() const
{
DebuggerStartMode mode = runParameters().startMode;
return (mode == AttachToRemoteServer || mode == AttachToRemoteProcess)
&& boolSetting(TargetAsync);
&& usesTargetAsync();
}
bool GdbEngine::usesTargetAsync() const
{
return runParameters().useTargetAsync || boolSetting(TargetAsync);
}
void GdbEngine::scheduleTestResponse(int testCase, const QByteArray &response)

View File

@@ -422,6 +422,7 @@ protected:
bool m_terminalTrap;
bool m_temporaryStopPending;
bool usesExecInterrupt() const;
bool usesTargetAsync() const;
QHash<int, QByteArray> m_scheduledTestResponses;
QSet<int> m_testCases;

View File

@@ -205,7 +205,7 @@ void GdbRemoteServerEngine::setupInferior()
// gdb/mi/mi-main.c:1958: internal-error:
// mi_execute_async_cli_command: Assertion `is_running (inferior_ptid)'
// failed.\nA problem internal to GDB has been detected,[...]
if (boolSetting(TargetAsync))
if (usesTargetAsync())
runCommand({"set target-async on", NoFlags, CB(handleSetTargetAsync)});
if (symbolFile.isEmpty()) {
@@ -429,7 +429,7 @@ void GdbRemoteServerEngine::handleExecRun(const DebuggerResponse &response)
void GdbRemoteServerEngine::interruptInferior2()
{
QTC_ASSERT(state() == InferiorStopRequested, qDebug() << state());
if (boolSetting(TargetAsync)) {
if (usesTargetAsync()) {
runCommand({"-exec-interrupt", NoFlags, CB(handleInterruptInferior)});
} else if (m_isQnxGdb && HostOsInfo::isWindowsHost()) {
m_gdbProc.interrupt();

Some files were not shown because too many files have changed in this diff Show More