Merge remote branch 'origin/2.1'
@@ -27,22 +27,22 @@ cd $BUILD_DIRECTORY
|
||||
qmake $SOURCE_DIRECTORY/qtcreator.pro
|
||||
make (or mingw32-make or nmake or jom, depending on your platform)
|
||||
|
||||
QmlDesigner, QmlInspector require private headers
|
||||
-------------------------------------------------
|
||||
QmlDesigner requires private headers from Qt 4.7.1
|
||||
--------------------------------------------------
|
||||
|
||||
The QmlDesigner and QmlInspector plugins depend on "private" Qt headers,
|
||||
specifically from the QtDeclarative module. These private headers always end
|
||||
with an "_p.h", and Nokia does not make any promises to keep the files or API's
|
||||
binary or source compatible between releases. This means that when compiled,
|
||||
the two plugins have a dependency to the exact Qt version they were compiled
|
||||
with. Running Qt Creator with the plugins against updated Qt libraries (also for
|
||||
patch releases) might lead to link time failures, or even crashes.
|
||||
The QmlDesigner plugin depends on "private" headers from Qt 4.7.1, specifically from
|
||||
the QtDeclarative module. These private headers always end with an "_p.h", and Nokia
|
||||
does not make any promises to keep the files or API's binary or source compatible
|
||||
between releases. This means that when compiled, the plugin has a dependency to the
|
||||
exact Qt version it was compiled with. Running Qt Creator with the plugin against
|
||||
updated Qt libraries (also for patch releases) might lead to link time failures,
|
||||
or even crashes.
|
||||
|
||||
If you want to disable the plugins, you can pass "QT_PRIVATE_HEADERS=" to qmake:
|
||||
If you want to disable the plugin, you can pass "QT_PRIVATE_HEADERS=" to qmake:
|
||||
|
||||
qmake "QT_PRIVATE_HEADERS=" $SOURCE_DIRECTORY/qtcreator.pro
|
||||
|
||||
Anyhow, the plugins will not be compiled when the private header files needed
|
||||
Anyhow, the plugin will not be compiled when the private header files needed
|
||||
are not found. This might be the case when you are using a Qt version from your
|
||||
distribution, or when you installed your self-compiled Qt to a separate
|
||||
directory via 'make install'. You can fix this by either re-building your Qt
|
||||
|
||||
@@ -49,3 +49,9 @@ QMAKE_EXTRA_TARGETS += html_docs html_docs_online qch_docs docs docs_online
|
||||
OTHER_FILES = $$HELP_DEP_FILES \
|
||||
$$PWD/api/qtcreator-api.qdoc \
|
||||
$$PWD/api/qtcreator-api.qdocconf
|
||||
|
||||
fixnavi.commands = \
|
||||
cd $$targetPath($$PWD) && \
|
||||
perl fixnavi.pl -Dqcmanual -Dqtquick \
|
||||
qtcreator.qdoc maemodev.qdoc symbiandev.qdoc
|
||||
QMAKE_EXTRA_TARGETS += fixnavi
|
||||
|
||||
@@ -2,37 +2,82 @@
|
||||
|
||||
use strict;
|
||||
|
||||
@ARGV == 1 or die "usage: $0 <qdoc-file>\n";
|
||||
my $file = $ARGV[0];
|
||||
open FILE, $file or die "File $file cannot be opened.\n";
|
||||
my @files = ();
|
||||
my %defines = ();
|
||||
for (@ARGV) {
|
||||
if (/^-D(.*)$/) {
|
||||
$defines{$1} = 1;
|
||||
} elsif (/^-/) {
|
||||
printf STDERR "Unknown option '".$_."'\n";
|
||||
exit 1;
|
||||
} else {
|
||||
push @files, $_;
|
||||
}
|
||||
}
|
||||
|
||||
int(@files) or die "usage: $0 [-D<define>]... <qdoc-file>\n";
|
||||
|
||||
my @toc = ();
|
||||
my %title2page = ();
|
||||
my $doctitle = "";
|
||||
my $curpage = "";
|
||||
my $intoc = 0;
|
||||
while (<FILE>) {
|
||||
if (keys(%title2page) == 1 && /^\h*\\list/) {
|
||||
$intoc++;
|
||||
} elsif (!$intoc) {
|
||||
if (/^\h*\\page\h+(\H+)/) {
|
||||
$curpage = $1;
|
||||
} elsif (/^\h*\\title\h+(.+)$/) {
|
||||
if ($curpage eq "") {
|
||||
die "Title '$1' appears in no \\page.\n";
|
||||
my %prev_skips = ();
|
||||
my %next_skips = ();
|
||||
my %define_skips = ();
|
||||
my %polarity_skips = ();
|
||||
my $prev_skip = "";
|
||||
my $next_skip = "";
|
||||
my $define_skip = "";
|
||||
my $polarity_skip = 0;
|
||||
for my $file (@files) {
|
||||
my $skipping = 0; # no nested ifs!
|
||||
open FILE, $file or die "File $file cannot be opened.\n";
|
||||
while (<FILE>) {
|
||||
if (/^\h*\\if\h+defined\h*\(\h*(\H+)\h*\)/) {
|
||||
$skipping = !defined($defines{$1});
|
||||
if (!$intoc) {
|
||||
$define_skip = $1;
|
||||
$polarity_skip = $skipping;
|
||||
}
|
||||
} elsif (/^\h*\\else/) {
|
||||
$skipping = 1 - $skipping;
|
||||
} elsif (/^\h*\\endif/) {
|
||||
$skipping = 0;
|
||||
} elsif (keys(%title2page) == 1 && /^\h*\\list/) {
|
||||
$intoc++;
|
||||
} elsif (!$intoc) {
|
||||
if ($skipping && /^\h*\\previouspage\h+(\H+)/) {
|
||||
$prev_skip = $1;
|
||||
} elsif ($skipping && /^\h*\\nextpage\h+(\H+)/) {
|
||||
$next_skip = $1;
|
||||
} elsif (/^\h*\\page\h+(\H+)/) {
|
||||
$curpage = $1;
|
||||
} elsif (/^\h*\\title\h+(.+)$/) {
|
||||
if ($curpage eq "") {
|
||||
die "Title '$1' appears in no \\page.\n";
|
||||
}
|
||||
if (length($define_skip)) {
|
||||
$define_skips{$1} = $define_skip;
|
||||
$polarity_skips{$1} = $polarity_skip;
|
||||
$prev_skips{$1} = $prev_skip;
|
||||
$next_skips{$1} = $next_skip;
|
||||
$define_skip = $prev_skip = $next_skip = "";
|
||||
}
|
||||
$title2page{$1} = $curpage;
|
||||
$doctitle = $1 if (!$doctitle);
|
||||
$curpage = "";
|
||||
}
|
||||
} else {
|
||||
if (/^\h*\\endlist/) {
|
||||
$intoc--;
|
||||
} elsif (!$skipping && /^\h*\\o\h+\\l\h*{(.*)}$/) {
|
||||
push @toc, $1;
|
||||
}
|
||||
$title2page{$1} = $curpage;
|
||||
$doctitle = $1 if (!$doctitle);
|
||||
$curpage = "";
|
||||
}
|
||||
} else {
|
||||
if (/^\h*\\endlist/) {
|
||||
$intoc--;
|
||||
} elsif (/^\h*\\o\h+\\l\h*{(.*)}$/) {
|
||||
push @toc, $1;
|
||||
}
|
||||
}
|
||||
close FILE;
|
||||
}
|
||||
close FILE;
|
||||
|
||||
my %prev = ();
|
||||
my %next = ();
|
||||
@@ -43,28 +88,57 @@ for my $title (@toc) {
|
||||
$last = $title;
|
||||
}
|
||||
|
||||
open IN, $file or die "File $file cannot be opened a second time?!\n";
|
||||
open OUT, '>'.$file.".out" or die "File $file.out cannot be created.\n";
|
||||
my $cutting = 0;
|
||||
while (<IN>) {
|
||||
if (!$cutting) {
|
||||
if (/^\h*\\contentspage/) {
|
||||
$cutting = 1;
|
||||
}
|
||||
} else {
|
||||
if (/^\h*\\title\h+(.+)$/) {
|
||||
print OUT " \\previouspage ".$prev{$1} if ($prev{$1});
|
||||
print OUT " \\page ".$title2page{$1};
|
||||
print OUT " \\nextpage ".$next{$1} if ($next{$1});
|
||||
print OUT "\n";
|
||||
$cutting = 0;
|
||||
for my $file (@files) {
|
||||
open IN, $file or die "File $file cannot be opened a second time?!\n";
|
||||
open OUT, '>'.$file.".out" or die "File $file.out cannot be created.\n";
|
||||
my $cutting = 0;
|
||||
while (<IN>) {
|
||||
if (!$cutting) {
|
||||
if (/^\h*\\contentspage/) {
|
||||
$cutting = 1;
|
||||
}
|
||||
} else {
|
||||
next;
|
||||
if (/^\h*\\title\h+(.+)$/) {
|
||||
if (defined($define_skips{$1})) {
|
||||
print OUT " \\if defined(".$define_skips{$1}.")\n";
|
||||
if ($polarity_skips{$1}) {
|
||||
print OUT " \\previouspage ".$prev_skips{$1} if ($prev_skips{$1});
|
||||
print OUT " \\else\n";
|
||||
}
|
||||
}
|
||||
print OUT " \\previouspage ".$prev{$1} if ($prev{$1});
|
||||
if (defined($define_skips{$1})) {
|
||||
if (!$polarity_skips{$1}) {
|
||||
print OUT " \\else\n";
|
||||
print OUT " \\previouspage ".$prev_skips{$1} if ($prev_skips{$1});
|
||||
}
|
||||
print OUT " \\endif\n";
|
||||
}
|
||||
print OUT " \\page ".$title2page{$1};
|
||||
if (defined($define_skips{$1})) {
|
||||
print OUT " \\if defined(".$define_skips{$1}.")\n";
|
||||
if ($polarity_skips{$1}) {
|
||||
print OUT " \\nextpage ".$next_skips{$1} if ($next_skips{$1});
|
||||
print OUT " \\else\n";
|
||||
}
|
||||
}
|
||||
print OUT " \\nextpage ".$next{$1} if ($next{$1});
|
||||
if (defined($define_skips{$1})) {
|
||||
if (!$polarity_skips{$1}) {
|
||||
print OUT " \\else\n";
|
||||
print OUT " \\nextpage ".$next_skips{$1} if ($next_skips{$1});
|
||||
}
|
||||
print OUT " \\endif\n";
|
||||
}
|
||||
print OUT "\n";
|
||||
$cutting = 0;
|
||||
} else {
|
||||
next;
|
||||
}
|
||||
}
|
||||
print OUT $_;
|
||||
}
|
||||
print OUT $_;
|
||||
close OUT;
|
||||
close IN;
|
||||
rename($file.".out", $file) or die "Cannot replace $file with new version.\n";
|
||||
}
|
||||
close OUT;
|
||||
close IN;
|
||||
|
||||
rename($file.".out", $file) or die "Cannot replace $file with new version.\n";
|
||||
|
||||
|
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 85 KiB |
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 58 KiB |
@@ -73,6 +73,7 @@
|
||||
\o \l{Managing Projects}
|
||||
\list
|
||||
\o \l{Creating a Project}
|
||||
\o \l{Opening a Project}
|
||||
\o \l{Setting Up a qmake Project}
|
||||
\o \l{Adding Libraries to qmake Projects}
|
||||
\o \l{Setting Up a CMake Project}
|
||||
@@ -104,6 +105,8 @@
|
||||
\o \l {Creating Qt Quick Projects}
|
||||
\o \l {Using Qt Quick Designer}
|
||||
\o \l {Creating Components}
|
||||
\o \l {Creating Buttons}
|
||||
\o \l {Creating Scalable Buttons and Borders}
|
||||
\o \l {Creating Screens}
|
||||
\o \l {Animating Screens}
|
||||
\o \l {Adding User Interaction Methods}
|
||||
@@ -779,7 +782,7 @@
|
||||
|
||||
/*!
|
||||
\contentspage index.html
|
||||
\previouspage creator-task-lists.html
|
||||
\previouspage creator-cli.html
|
||||
\page creator-help.html
|
||||
\nextpage creator-tips.html
|
||||
|
||||
@@ -1968,6 +1971,7 @@
|
||||
|
||||
\list
|
||||
\o \l{Creating a Project}
|
||||
\o \l{Opening a Project}
|
||||
\o \l{Setting Up a qmake Project}
|
||||
\o \l{Adding Libraries to qmake Projects}
|
||||
\o \l{Setting Up a CMake Project}
|
||||
@@ -1985,7 +1989,7 @@
|
||||
\contentspage index.html
|
||||
\previouspage creator-project-managing.html
|
||||
\page creator-project-creating.html
|
||||
\nextpage creator-project-qmake.html
|
||||
\nextpage creator-project-opening.html
|
||||
|
||||
\title Creating a Project
|
||||
|
||||
@@ -2131,6 +2135,69 @@
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\contentspage index.html
|
||||
\previouspage creator-project-creating.html
|
||||
\page creator-project-opening.html
|
||||
\nextpage creator-project-qmake.html
|
||||
|
||||
\title Opening a Project
|
||||
|
||||
Qt Creator stores information that it needs to build projects in a .user file.
|
||||
If Qt Creator cannot find the file when you open an existing project, it prompts you
|
||||
to enter the information. If you created the project by using another Qt Creator
|
||||
instance, Qt Creator asks whether you want to use the old settings. The settings
|
||||
are specific to the development environment, and should not be copied from one
|
||||
environment to another. Therefore, we recommend that you click \gui No and enter
|
||||
the information again in the \gui {Project Setup} dialog.
|
||||
|
||||
The \gui {Project Setup} dialog displays a list of development environments for
|
||||
target platforms (such as desktop, Maemo devices, and Symbian devices) that are
|
||||
installed on the development PC. Select the Qt versions that you want to use to build
|
||||
the project for each target.
|
||||
|
||||
\image qtcreator-open-project-targets.png "Qt Versions dialog"
|
||||
|
||||
The status \gui New indicates that Qt Creator did not find an existing build
|
||||
for a particular development environment (Qt version) and target. Therefore,
|
||||
Qt Creator starts out from a clean slate, and creates a new build in the directory
|
||||
listed in the \gui {Build Directory} field.
|
||||
By default, Qt Creator does a \l{glossary-shadow-build}{shadow build} and also
|
||||
creates the directory. However, shadow building is not supported for the Symbian
|
||||
target.
|
||||
|
||||
If you have built the project before, Qt Creator can use the existing build
|
||||
configuration to make the exact same build as found in the directory available to
|
||||
Qt Creator. The \gui Status column displays the status \gui Import if Qt creator
|
||||
found an existing build of the project. The status is displayed for each
|
||||
available development environment.
|
||||
|
||||
If you know you have a build, but it is not listed, click \gui {Import Existing
|
||||
Shadow Build} to locate it. Select a directory, and Qt Creator scans it (including
|
||||
subdirectories) for additional builds of the project. Qt Creator adds the found
|
||||
builds to the target list with \gui Import status.
|
||||
|
||||
You can edit the build configuration later. For more information, see
|
||||
\l{Editing Build Configurations}.
|
||||
|
||||
To open a project:
|
||||
|
||||
\list 1
|
||||
|
||||
\o Select \gui File > \gui{Open File or Project} and select the project
|
||||
to open.
|
||||
|
||||
\o In the \gui {Project Setup} dialog, select the Qt versions to use as
|
||||
build targets for your project, and click \gui{Next}.
|
||||
|
||||
\note If you have only one development environment installed, this dialog
|
||||
is skipped.
|
||||
|
||||
\endlist
|
||||
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\contentspage index.html
|
||||
\previouspage creator-project-managing-sessions.html
|
||||
@@ -2593,7 +2660,7 @@
|
||||
|
||||
/*!
|
||||
\contentspage index.html
|
||||
\previouspage creator-project-creating.html
|
||||
\previouspage creator-project-opening.html
|
||||
\page creator-project-qmake.html
|
||||
\nextpage creator-project-qmake-libraries.html
|
||||
|
||||
@@ -4293,8 +4360,9 @@
|
||||
|
||||
\list 1
|
||||
|
||||
\o On the \gui Welcome page, select \gui {Choose an Example... >
|
||||
Animation Framework > Animated Tiles}.
|
||||
\o On the \gui Welcome page, select \gui {Choose an Example...}
|
||||
in the \gui {Explore Qt Quick Examples} field, and then select
|
||||
\gui {Toys > Clocks}.
|
||||
|
||||
\image qtcreator-gs-build-example-open.png "Selecting an example"
|
||||
|
||||
@@ -4324,18 +4392,18 @@
|
||||
\image {qt-simulator.png} "Qt Simulator"
|
||||
|
||||
\o Change the settings in the
|
||||
\gui View pane, for example, to toggle the orientation by clicking
|
||||
\gui {Rotate Device}, or choose from the various Symbian and Maemo
|
||||
configurations by clicking \gui {Device}. You can also simulate various
|
||||
\gui View pane. For example, rotate the device by clicking the
|
||||
\gui {Orientation} buttons or choose from the various Symbian and Maemo
|
||||
configurations in the \gui {Device} field. You can also simulate various
|
||||
mobile functions and create your own scripts.
|
||||
|
||||
\o To test the application on a Symbian device install Qt libraries
|
||||
\o To test the application on a Symbian device, install Qt libraries
|
||||
and the TRK debugging application on the device. For more information,
|
||||
see \l{Setting Up Development Environment for Symbian}.
|
||||
|
||||
\o Click the \gui {Target Selector} and select \gui {Symbian Device}.
|
||||
|
||||
\o Click \gui Run to build the application for the Symbian device.
|
||||
\o Click \gui Run to build the application and run it on the Symbian device.
|
||||
|
||||
\endlist
|
||||
|
||||
@@ -6604,7 +6672,7 @@
|
||||
|
||||
/*!
|
||||
\contentspage index.html
|
||||
\previouspage creator-project-qmake.html
|
||||
\previouspage creator-project-qmake-libraries.html
|
||||
\page creator-project-cmake.html
|
||||
\nextpage creator-project-generic.html
|
||||
|
||||
@@ -6970,6 +7038,8 @@
|
||||
\o \l {Creating Qt Quick Projects}
|
||||
\o \l {Using Qt Quick Designer}
|
||||
\o \l {Creating Components}
|
||||
\o \l {Creating Buttons}
|
||||
\o \l {Creating Scalable Buttons and Borders}
|
||||
\o \l {Creating Screens}
|
||||
\o \l {Animating Screens}
|
||||
\o \l {Adding User Interaction Methods}
|
||||
@@ -7490,7 +7560,7 @@
|
||||
/*!
|
||||
|
||||
\contentspage index.html
|
||||
\previouspage quick-components.html
|
||||
\previouspage quick-scalable-image.html
|
||||
\page quick-screens.html
|
||||
\nextpage quick-animations.html
|
||||
|
||||
|
||||
@@ -24,14 +24,20 @@ symbian {
|
||||
contains(DEFINES, ORIENTATIONLOCK):LIBS += -lavkon -leikcore -lcone
|
||||
contains(DEFINES, NETWORKACCESS):TARGET.CAPABILITY += NetworkServices
|
||||
} else:win32 {
|
||||
!isEqual(PWD,$$OUT_PWD) {
|
||||
copyCommand = @echo Copying application data...
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$eval($${deploymentfolder}.source)
|
||||
pathSegments = $$split(source, /)
|
||||
sourceAndTarget = $$MAINPROFILEPWD/$$source $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(pathSegments)
|
||||
copyCommand += && $(COPY_DIR) $$replace(sourceAndTarget, /, \\)
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
@@ -41,21 +47,30 @@ symbian {
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
installPrefix = /opt/usr
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
} else {
|
||||
installPrefix = /usr
|
||||
desktopfile.path = /usr/share/applications
|
||||
!isEqual(PWD,$$OUT_PWD) {
|
||||
copyCommand = @echo Copying application data...
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
copyCommand += && $(MKDIR) $$target
|
||||
copyCommand += && $(COPY_DIR) $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source) $$target
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
|
||||
@@ -2550,6 +2550,10 @@ Dodaj, zmodyfikuj lub usuń filtry dokumentów, które determinują zestaw dokum
|
||||
<source>Debugging helpers:</source>
|
||||
<translation>Asystenci debuggera:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>SBS v2 directory:</source>
|
||||
<translation>Katalog SBS v2:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ShowBuildLog</name>
|
||||
@@ -3628,7 +3632,7 @@ Przyczyna: %3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Choose File</source>
|
||||
<translation></translation>
|
||||
<translation>Wybierz plik</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source><not valid></source>
|
||||
@@ -5196,7 +5200,7 @@ Zwróć uwagę że spowoduje to usunięcie lokalnego pliku.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Commit "%1"</source>
|
||||
<translation>Commit "%1"</translation>
|
||||
<translation type="unfinished">Commit "%1"</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Alt+C,Alt+C</source>
|
||||
@@ -10907,7 +10911,7 @@ S60 emulator run configuration default display name, %1 is base pro-File name</e
|
||||
<message>
|
||||
<source>Desktop</source>
|
||||
<comment>Qt Version is meant for the desktop</comment>
|
||||
<translation></translation>
|
||||
<translation>Desktop</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Symbian</source>
|
||||
@@ -17264,11 +17268,11 @@ should a repository require SSH-authentication (see documentation on SSH and the
|
||||
</message>
|
||||
<message>
|
||||
<source>Set anchors</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>Ustaw kotwice</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Setting anchors in states is not supported.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>Ustawianie kotwic w stanach nie jest obsługiwane.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Target</source>
|
||||
@@ -17377,10 +17381,6 @@ should a repository require SSH-authentication (see documentation on SSH and the
|
||||
<source>Smooth</source>
|
||||
<translation>Gładki</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Switches</name>
|
||||
@@ -19235,7 +19235,7 @@ Lista serwera: %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>
|
||||
<translation>Silnik CDB jest wciąż uruchomiony, nie można uruchomić kolejnego.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Version: %1</source>
|
||||
@@ -19564,7 +19564,7 @@ Lista serwera: %2.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Taking notice of pid %1</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation type="unfinished">Odnotowano pid %1</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@@ -20806,7 +20806,7 @@ Adds the library and include paths to the .pro file.</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Installation to sysroot failed, continuing anyway.</source>
|
||||
<translation type="unfinished">Instalacja w sysroot nieudana, </translation>
|
||||
<translation>Instalacja w sysroot nieudana, proces jest kontynuowany.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copying files to sysroot ...</source>
|
||||
@@ -20814,7 +20814,7 @@ Adds the library and include paths to the .pro file.</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sysroot installation failed: Could not copy '%1' to '%2'. Continuing anyway.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>Instalacja w sysroot nieudana. Nie można skopiować "%1" do "%2". Proces jest kontynuowany.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Connecting to device...</source>
|
||||
@@ -20974,7 +20974,7 @@ stderr was: '%1'</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Could not upload UTFS client (%1), continuing anyway.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>Nie można przesłać klienta UTFS (%1). Proces jest kontynuowany.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Starting remote UTFS clients...</source>
|
||||
@@ -21024,6 +21024,10 @@ stderr był: %1</translation>
|
||||
<source>No device configuration set for run configuration.</source>
|
||||
<translation>Brak konfiguracji urządzenia dla konfiguracji uruchamiania.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Run configuration no longer available.</source>
|
||||
<translation>Konfiguracja budowania nie jest już dostępna.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Starting remote process ...</source>
|
||||
<translation>Uruchamianie zdalnego procesu...</translation>
|
||||
@@ -21077,11 +21081,11 @@ stderr był: %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unmounting left-over host directory mounts...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>Usuwanie pozostałości po zamontowanym katalogu hosta...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Potentially unmounting left-over host directory mounts...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>Potencjalne usuwanie pozostałości po zamontowanym katalogu hosta...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unmounting host directories...</source>
|
||||
|
||||
@@ -20186,7 +20186,7 @@ Please check the directory's access rights.</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Comment</source>
|
||||
<translation>Примечание</translation>
|
||||
<translation>Комментарий</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Doxygen Comment</source>
|
||||
|
||||
@@ -50,6 +50,15 @@ using Core::FileIconProvider;
|
||||
namespace {
|
||||
|
||||
// sorting helper function
|
||||
|
||||
int fileNameCompare(const QString &a, const QString &b)
|
||||
{
|
||||
int result = a.compare(b, Qt::CaseInsensitive);
|
||||
if (result != 0)
|
||||
return result;
|
||||
return a.compare(b, Qt::CaseSensitive);
|
||||
}
|
||||
|
||||
bool sortNodes(Node *n1, Node *n2)
|
||||
{
|
||||
// Ordering is: project files, project, folder, file
|
||||
@@ -65,8 +74,9 @@ bool sortNodes(Node *n1, Node *n2)
|
||||
const QString fileName1 = QFileInfo(file1->path()).fileName();
|
||||
const QString fileName2 = QFileInfo(file2->path()).fileName();
|
||||
|
||||
if (fileName1 != fileName2)
|
||||
return fileName1.compare(fileName2, Qt::CaseInsensitive) < 0;
|
||||
int result = fileNameCompare(fileName1, fileName2);
|
||||
if (result != 0)
|
||||
return result < 0;
|
||||
else
|
||||
return file1 < file2;
|
||||
} else {
|
||||
@@ -84,8 +94,9 @@ bool sortNodes(Node *n1, Node *n2)
|
||||
ProjectNode *project1 = static_cast<ProjectNode*>(n1);
|
||||
ProjectNode *project2 = static_cast<ProjectNode*>(n2);
|
||||
|
||||
if (project1->displayName() != project2->displayName())
|
||||
return project1->displayName().compare(project2->displayName(), Qt::CaseInsensitive) < 0; // sort by name
|
||||
int result = fileNameCompare(project1->displayName(), project2->displayName());
|
||||
if (result != 0)
|
||||
return result < 0;
|
||||
else
|
||||
return project1 < project2; // sort by pointer value
|
||||
} else {
|
||||
@@ -100,8 +111,9 @@ bool sortNodes(Node *n1, Node *n2)
|
||||
FolderNode *folder1 = static_cast<FolderNode*>(n1);
|
||||
FolderNode *folder2 = static_cast<FolderNode*>(n2);
|
||||
|
||||
if (folder1->path() != folder2->path())
|
||||
return folder1->path().compare(folder2->path(), Qt::CaseInsensitive) < 0;
|
||||
int result = fileNameCompare(folder1->path(), folder2->path());
|
||||
if (result != 0)
|
||||
return result < 0;
|
||||
else
|
||||
return folder1 < folder2;
|
||||
} else {
|
||||
@@ -119,11 +131,13 @@ bool sortNodes(Node *n1, Node *n2)
|
||||
const QString fileName1 = QFileInfo(filePath1).fileName();
|
||||
const QString fileName2 = QFileInfo(filePath2).fileName();
|
||||
|
||||
if (fileName1 != fileName2) {
|
||||
return fileName1.compare(fileName2, Qt::CaseInsensitive) < 0; // sort by file names
|
||||
int result = fileNameCompare(fileName1, fileName2);
|
||||
if (result != 0) {
|
||||
return result < 0; // sort by filename
|
||||
} else {
|
||||
if (filePath1 != filePath2) {
|
||||
return filePath1.compare(filePath2, Qt::CaseInsensitive) < 0; // sort by path names
|
||||
result = fileNameCompare(filePath1, filePath2);
|
||||
if (result != 0) {
|
||||
return result < 0; // sort by filepath
|
||||
} else {
|
||||
return n1 < n2; // sort by pointer value
|
||||
}
|
||||
|
||||