summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSami Lempinen <sami.lempinen@nokia.com>2011-10-14 06:18:15 (GMT)
committerSami Lempinen <sami.lempinen@nokia.com>2011-10-14 06:18:15 (GMT)
commit01057867c3e5e97fc8b58601e3cee6dfef0df205 (patch)
tree96125e444f32691c73bc87f0bc938993b7737899
parent138b9d7349d5daa1808d8bd891c5ecf817f98c52 (diff)
parent77563a2e63562e4e010e53dd79a707d9d7ed3f3d (diff)
downloadQt-01057867c3e5e97fc8b58601e3cee6dfef0df205.zip
Qt-01057867c3e5e97fc8b58601e3cee6dfef0df205.tar.gz
Qt-01057867c3e5e97fc8b58601e3cee6dfef0df205.tar.bz2
Merge remote-tracking branch 'qt/4.8'
-rw-r--r--dist/changes-4.8.011
-rw-r--r--doc/src/declarative/declarativeui.qdoc1
-rw-r--r--doc/src/declarative/elements.qdoc1
-rw-r--r--doc/src/getting-started/demos.qdoc7
-rw-r--r--doc/src/getting-started/installation.qdoc10
-rw-r--r--doc/src/internationalization/i18n.qdoc57
-rw-r--r--doc/src/snippets/code/doc_src_unix-signal-handlers.cpp6
-rw-r--r--doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp4
-rw-r--r--doc/src/snippets/code/src_corelib_io_qsettings.cpp2
-rw-r--r--examples/dialogs/extension/finddialog.cpp2
-rw-r--r--examples/examples.pro2
-rw-r--r--qmake/generators/integrity/gbuild.cpp8
-rw-r--r--qmake/qmake.pri2
-rw-r--r--src/3rdparty/libpng/pngconf.h5
-rw-r--r--src/3rdparty/phonon/mmf/environmentalreverb.cpp4
-rw-r--r--src/3rdparty/phonon/phonon/volumeslider.cpp6
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp2
-rw-r--r--src/corelib/global/qconfig-minimal.h3
-rw-r--r--src/corelib/global/qconfig-nacl.h3
-rw-r--r--src/corelib/global/qfeatures.h3
-rw-r--r--src/corelib/global/qfeatures.txt7
-rw-r--r--src/corelib/io/qfilesystemengine_win.cpp1
-rw-r--r--src/corelib/io/qprocess.cpp2
-rw-r--r--src/corelib/kernel/qcoreevent.h4
-rw-r--r--src/corelib/kernel/qobject.cpp2
-rw-r--r--src/corelib/statemachine/qfinalstate.cpp2
-rw-r--r--src/corelib/tools/qchar.cpp18
-rw-r--r--src/corelib/tools/qstring.cpp2
-rw-r--r--src/declarative/debugger/debugger.pri11
-rw-r--r--src/declarative/debugger/qdeclarativedebug.h67
-rw-r--r--src/declarative/debugger/qdeclarativedebugserver.cpp10
-rw-r--r--src/declarative/debugger/qdeclarativeenginedebug.cpp (renamed from src/declarative/debugger/qdeclarativedebug.cpp)18
-rw-r--r--src/declarative/debugger/qdeclarativeenginedebug_p.h (renamed from src/declarative/debugger/qdeclarativedebug_p.h)6
-rw-r--r--src/declarative/debugger/qdeclarativeenginedebugservice.cpp (renamed from src/declarative/qml/qdeclarativeenginedebug.cpp)60
-rw-r--r--src/declarative/debugger/qdeclarativeenginedebugservice_p.h (renamed from src/declarative/qml/qdeclarativeenginedebug_p.h)20
-rw-r--r--src/declarative/qml/qdeclarative.h11
-rw-r--r--src/declarative/qml/qdeclarativecomponent.cpp4
-rw-r--r--src/declarative/qml/qdeclarativeengine.cpp8
-rw-r--r--src/declarative/qml/qdeclarativeengine.h1
-rw-r--r--src/declarative/qml/qdeclarativeimport.cpp10
-rw-r--r--src/declarative/qml/qdeclarativenotifier_p.h27
-rw-r--r--src/declarative/qml/qdeclarativepropertycache_p.h2
-rw-r--r--src/declarative/qml/qml.pri2
-rw-r--r--src/declarative/util/qdeclarativeview.h1
-rw-r--r--src/gui/dialogs/qfiledialog_win.cpp4
-rw-r--r--src/gui/dialogs/qmessagebox.cpp4
-rw-r--r--src/gui/dialogs/qwizard.cpp3
-rw-r--r--src/gui/egl/qegl.cpp32
-rw-r--r--src/gui/image/qnativeimage.cpp12
-rw-r--r--src/gui/image/qpixmap_x11.cpp18
-rw-r--r--src/gui/kernel/qapplication_win.cpp13
-rw-r--r--src/gui/kernel/qapplication_x11.cpp6
-rw-r--r--src/gui/kernel/qcursor_win.cpp2
-rw-r--r--src/gui/kernel/qguiplatformplugin.cpp4
-rw-r--r--src/gui/kernel/qsoftkeymanager.cpp2
-rw-r--r--src/gui/kernel/qt_x11_p.h2
-rw-r--r--src/gui/kernel/qwhatsthis.cpp4
-rw-r--r--src/gui/kernel/qwidget.cpp24
-rw-r--r--src/gui/kernel/qwidget_p.h1
-rw-r--r--src/gui/kernel/qwidget_s60.cpp58
-rw-r--r--src/gui/painting/qgraphicssystemex_symbian.cpp107
-rw-r--r--src/gui/painting/qwindowsurface_raster.cpp5
-rw-r--r--src/gui/styles/qstylefactory.cpp4
-rw-r--r--src/gui/styles/qwindowsstyle.cpp8
-rw-r--r--src/gui/styles/qwindowsvistastyle.cpp2
-rw-r--r--src/gui/styles/qwindowsxpstyle.cpp2
-rw-r--r--src/gui/text/qfontengine_ft.cpp2
-rw-r--r--src/gui/widgets/qdialogbuttonbox.cpp1
-rw-r--r--src/gui/widgets/qlinecontrol.cpp4
-rw-r--r--src/gui/widgets/qtoolbar.cpp2
-rw-r--r--src/network/access/qnetworkaccessbackend_p.h2
-rw-r--r--src/network/access/qnetworkcookie.cpp18
-rw-r--r--src/network/access/qnetworkreplyimpl.cpp23
-rw-r--r--src/network/access/qnetworkreplyimpl_p.h2
-rw-r--r--src/network/kernel/qhostinfo_win.cpp5
-rw-r--r--src/opengl/qgl.cpp20
-rw-r--r--src/sql/drivers/symsql/qsql_symsql.cpp6
-rw-r--r--src/xmlpatterns/parser/qquerytransformparser.cpp2
-rw-r--r--src/xmlpatterns/schema/qxsdschemaresolver.cpp2
-rw-r--r--src/xmlpatterns/schema/qxsdvalidatinginstancereader.cpp2
-rw-r--r--tests/auto/declarative/declarative.pro1
-rw-r--r--tests/auto/declarative/qdeclarativedebug/qdeclarativedebug.pro2
-rw-r--r--tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp5
-rw-r--r--tests/auto/declarative/qdeclarativedebugclient/qdeclarativedebugclient.pro2
-rw-r--r--tests/auto/declarative/qdeclarativedebugclient/tst_qdeclarativedebugclient.cpp7
-rw-r--r--tests/auto/declarative/qdeclarativedebugjs/app/app.pro1
-rw-r--r--tests/auto/declarative/qdeclarativedebugjs/app/main.cpp3
-rw-r--r--tests/auto/declarative/qdeclarativedebugjs/tst_qdeclarativedebugjs.cpp7
-rw-r--r--tests/auto/declarative/qdeclarativedebugservice/qdeclarativedebugservice.pro2
-rw-r--r--tests/auto/declarative/qdeclarativedebugservice/tst_qdeclarativedebugservice.cpp6
-rw-r--r--tests/auto/declarative/qdeclarativemoduleplugin/tst_qdeclarativemoduleplugin.cpp25
-rw-r--r--tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp115
-rw-r--r--tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp117
-rw-r--r--tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp54
-rw-r--r--tests/auto/qnetworkrequest/tst_qnetworkrequest.cpp2
-rw-r--r--tests/auto/qstyle/tst_qstyle.cpp4
-rw-r--r--tests/auto/qwidget/tst_qwidget.cpp45
-rw-r--r--tools/linguist/lupdate/main.cpp3
-rw-r--r--tools/linguist/shared/numerus.cpp30
-rw-r--r--tools/linguist/shared/translator.h2
-rw-r--r--tools/porting/src/qt3headers0.resourcebin548362 -> 548304 bytes
-rw-r--r--translations/assistant_pl.ts159
-rw-r--r--translations/assistant_uk.ts191
-rw-r--r--translations/designer_pl.ts109
-rw-r--r--translations/designer_ru.ts6
-rw-r--r--translations/designer_uk.ts109
-rw-r--r--translations/qt_ko.ts8
-rw-r--r--translations/qt_pl.ts499
-rw-r--r--translations/qt_ru.ts170
-rw-r--r--translations/qt_uk.ts457
-rw-r--r--translations/qtconfig_pl.ts798
-rw-r--r--translations/qtconfig_ru.ts8
-rw-r--r--translations/qtconfig_uk.ts160
-rw-r--r--translations/qvfb_pl.ts46
114 files changed, 3130 insertions, 866 deletions
diff --git a/dist/changes-4.8.0 b/dist/changes-4.8.0
index 5dd1d8a..08600c9 100644
--- a/dist/changes-4.8.0
+++ b/dist/changes-4.8.0
@@ -82,6 +82,7 @@ that the changes lead to a leaner API and the change applies to all platforms.
- QProcessEnvironment: major optimizations, especially on Unix
- Add branch prediction macros Q_LIKELY and Q_UNLIKELY
- QSettings: don't assume XDG_CONFIG_HOME is latin1-encoded
+ - QDateTime: Fix generation of ISO8601 strings to include proper timezone information [QTBUG-18290]
QtGui
-----
@@ -142,6 +143,7 @@ QtNetwork
- HTTP cache: do not load resources from cache that must be revalidated [QTBUG-18983]
- HTTP cache: change file organization (MR-2505)
- SOCKS5: write errors are propagated to the outer socket [QTBUG-18713]
+ - Cookies: Commas are no longer used to support multiple cookies in a single Set-Cookie header [QTBUG-21456]
- QNetworkReply: errorString() returns translated messages now [QTBUG-18382]
QtOpenGL
@@ -184,6 +186,11 @@ QtDBus
- QDBusConnection: Add methods disconnectFromPeer and connectToPeer
- Make the DBus timeout configurable in QDBusAbstractInterface.
+QtTest
+------
+ - Added -random and -seed options to tests, making the test cases within
+ a test execute in arbitrary order.
+
****************************************************************************
* Database Drivers *
****************************************************************************
@@ -368,6 +375,10 @@ Qt for Windows CE
- syncqt
* Fix to allow $QTDIR to contain any valid pathname characters.
+- qdoc3
+ * Add support for documenting QML using module identifiers.
+ * Change the format of qdocconf files.
+
****************************************************************************
* Plugins *
****************************************************************************
diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc
index cecccf6..668f3b4 100644
--- a/doc/src/declarative/declarativeui.qdoc
+++ b/doc/src/declarative/declarativeui.qdoc
@@ -84,6 +84,7 @@ Qt applications.
\list
\o \l{QtWebKit QML Module}
\o \l{http://doc.qt.nokia.com/qtmobility-1.1.0/qml-plugins.html}{Mobility QML Plugins}
+\o \l {http://doc.qt.nokia.com/qt-components-symbian-1.1/index.html}{Qt Quick Components}
\endlist
\section1 Qt Quick Tools
diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc
index 6b7a5fc..fd74ee3 100644
--- a/doc/src/declarative/elements.qdoc
+++ b/doc/src/declarative/elements.qdoc
@@ -185,6 +185,7 @@ should first be obtained and installed.
\list
\o \l{WebView}{QtWebKit QML Module - WebView Element} - For displaying Web contents
\o \l{http://doc.qt.nokia.com/qtmobility-1.1.0/qml-plugins.html}{Mobility QML Plugins}
+\o \l {http://doc.qt.nokia.com/qt-components-symbian-1.1/index.html}{Qt Quick Components}
\endlist
*/
diff --git a/doc/src/getting-started/demos.qdoc b/doc/src/getting-started/demos.qdoc
index 5c0652c..201b5c7 100644
--- a/doc/src/getting-started/demos.qdoc
+++ b/doc/src/getting-started/demos.qdoc
@@ -149,13 +149,6 @@
implement a small Web browser.
\endlist
- \section1 Multimedia
-
- \list
- \o \l{demos/spectrum}{Spectrum Analyser} shows how the \l{QtMultimedia}
- module can be used to manipulate audio as it is played.
- \endlist
-
\section1 Phonon
\list
diff --git a/doc/src/getting-started/installation.qdoc b/doc/src/getting-started/installation.qdoc
index 2936d60..6c4e90c 100644
--- a/doc/src/getting-started/installation.qdoc
+++ b/doc/src/getting-started/installation.qdoc
@@ -559,20 +559,22 @@ Symbian platform,
*/
/*! \page install-Symbian.html
-\title Installing Qt for the Symbian platform
+\title Installing Qt for the Symbian Platform
\ingroup installation
\ingroup qtsymbian
\brief How to install Qt for the Symbian platform.
\previouspage Installation
\tableofcontents
+ \l {http://qt.nokia.com/downloads}{Qt SDK} provides all the necessary tools
+ and libraries for developing Qt applications. However, if you want to build
+ Qt itself for Symbian, follow the instructions below.
+
Qt for the Symbian platform has some requirements that are given in more detail
in the \l{Qt for the Symbian platform Requirements} document.
This document describes how to install and configure Qt for
-the Symbian platform from scratch. If you are using pre-built binaries, follow
-the instructions given in the \l{Installing Qt for the Symbian platform from a
-Binary Package} document.
+the Symbian platform from scratch.
\section1 Step 1: Set Up the Development Environment
diff --git a/doc/src/internationalization/i18n.qdoc b/doc/src/internationalization/i18n.qdoc
index 2abc286..f706623 100644
--- a/doc/src/internationalization/i18n.qdoc
+++ b/doc/src/internationalization/i18n.qdoc
@@ -514,7 +514,6 @@
\ingroup internationalization
\previouspage Internationalization with Qt
\contentspage Internationalization with Qt
- \nextpage Translation Rules for Plurals
\brief How to write source code in a way that makes it possible for user-visible text to be translated.
\tableofcontents
@@ -700,8 +699,8 @@
set using QLocale::setDefault(). (If no default locale was
specified, the "C" locale is used.)
- A summary of the rules used to translate strings containing plurals can be
- found in the \l{Translation Rules for Plurals} document.
+ A summary of supported languages and the rules used to translate strings
+ containing plurals can be obtained by running \tt{lupdate -list-languages}.
\section1 Enabling Translation
@@ -717,55 +716,5 @@
\section1 Further Reading
- \l{Qt Linguist Manual}, \l{Hello tr() Example}, \l{Translation Rules for Plurals}
-*/
-
-/*!
- \page i18n-plural-rules.html
- \title Translation Rules for Plurals
- \ingroup internationalization
- \previouspage Writing Source Code for Translation
- \contentspage Internationalization with Qt
- \brief A summary of the translation rules for plurals produced by Qt's i18n tools.
-
- The table below shows the specific rules that are produced by Qt Linguist
- and \c lrelease for a selection of languages. Cells marked \e otherwise
- indicate the form used when none of the other rules are appropriate for a
- specific language.
-
- \table 80%
- \header \o Language \o Rule 1 \o Rule 2 \o Rule 3
- \row \o English \o \c{n == 1}
- \o \e{otherwise} \o N/A
- \row \o French \o \c{n < 2}
- \o \e{otherwise} \o N/A
- \row \o Czech \o \c{n % 100 == 1}
- \o \c{n % 100 >= 2 && n % 100 <= 4}
- \o \e{otherwise}
- \row \o Irish \o \c{n == 1}
- \o \c{n == 2} \o \e{otherwise}
- \row \o Latvian \o \c{n % 10 == 1&& n % 100 != 11}
- \o \c{n != 0} \o \e{otherwise}
- \row \o Lithuanian \o \c{n % 10 == 1&& n % 100 != 11}
- \o \c{n % 100 != 12 && n % 10 == 2}
- \o \e{otherwise}
- \row \o Macedonian \o \c{n % 10 == 1}
- \o \c{n % 10 == 2} \o \e{otherwise}
- \row \o Polish \o \c{n == 1}
- \o \c{n % 10 >= 2 && n % 10 <= 4
- && (n % 100 < 10 || n % 100 > 20)}
- \o \e{otherwise}
- \row \o Romanian \o \c{n == 1}
- \o \c{n == 0|| (n % 100 >= 1 && n % 100 <= 20)}
- \o \e{otherwise}
- \row \o Russian \o \c{n % 10 == 1&& n % 100 != 11}
- \o \c{n % 10 >= 2 && n % 10 <= 4
- && (n % 100 < 10 || n % 100 > 20)}
- \o \e{otherwise}
- \row \o Slovak \o \c{n == 1} \o \c{n >= 2 && n <= 4}
- \o \e{otherwise}
- \row \o Japanese \o \e{otherwise} \o N/A \o N/A
- \endtable
-
- The rules themselves are not documented and are internal to Qt Linguist and \c lrelease.
+ \l{Qt Linguist Manual}, \l{Hello tr() Example}
*/
diff --git a/doc/src/snippets/code/doc_src_unix-signal-handlers.cpp b/doc/src/snippets/code/doc_src_unix-signal-handlers.cpp
index fd5f386..a5f3ed1 100644
--- a/doc/src/snippets/code/doc_src_unix-signal-handlers.cpp
+++ b/doc/src/snippets/code/doc_src_unix-signal-handlers.cpp
@@ -44,7 +44,7 @@ class MyDaemon : public QObject
Q_OBJECT
public:
- MyDaemon(QObject *parent = 0, const char *name = 0);
+ MyDaemon(QObject *parent = 0);
~MyDaemon();
// Unix signal handlers.
@@ -67,8 +67,8 @@ class MyDaemon : public QObject
//! [1]
-MyDaemon::MyDaemon(QObject *parent, const char *name)
- : QObject(parent,name)
+MyDaemon::MyDaemon(QObject *parent)
+ : QObject(parent)
{
if (::socketpair(AF_UNIX, SOCK_STREAM, 0, sighupFd))
qFatal("Couldn't create HUP socketpair");
diff --git a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp
index 11f5163..e695572 100644
--- a/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp
+++ b/doc/src/snippets/code/src_corelib_concurrent_qtconcurrentrun.cpp
@@ -76,7 +76,7 @@ QString result = future.result();
//! [4]
// call 'QList<QByteArray> QByteArray::split(char sep) const' in a separate thread
QByteArray bytearray = "hello world";
-QFuture<QList<QByteArray> > future = QtConcurrent::run(bytearray, &QByteArray::split), ',');
+QFuture<QList<QByteArray> > future = QtConcurrent::run(bytearray, &QByteArray::split, ',');
...
QList<QByteArray> result = future.result();
//! [4]
@@ -84,7 +84,7 @@ QList<QByteArray> result = future.result();
//! [5]
// call 'void QImage::invertPixels(InvertMode mode)' in a separate thread
QImage image = ...;
-QFuture<void> future = QtConcurrent::run(image, &QImage::invertPixels, QImage::InvertRgba);
+QFuture<void> future = QtConcurrent::run(&image, &QImage::invertPixels, QImage::InvertRgba);
...
future.waitForFinished();
// At this point, the pixels in 'image' have been inverted
diff --git a/doc/src/snippets/code/src_corelib_io_qsettings.cpp b/doc/src/snippets/code/src_corelib_io_qsettings.cpp
index 269aa44..91c5401 100644
--- a/doc/src/snippets/code/src_corelib_io_qsettings.cpp
+++ b/doc/src/snippets/code/src_corelib_io_qsettings.cpp
@@ -230,7 +230,7 @@ settings.setValue("sofa", true);
settings.setValue("tv", false);
QStringList groups = settings.childGroups();
-// group: ["fridge"]
+// groups: ["fridge"]
//! [21]
diff --git a/examples/dialogs/extension/finddialog.cpp b/examples/dialogs/extension/finddialog.cpp
index 2ce0391..2457a5b 100644
--- a/examples/dialogs/extension/finddialog.cpp
+++ b/examples/dialogs/extension/finddialog.cpp
@@ -104,9 +104,11 @@ FindDialog::FindDialog(QWidget *parent)
connect(backSoftKeyAction, SIGNAL(triggered()), qApp, SLOT(quit()));
addAction(backSoftKeyAction);
#else
+//! [6]
buttonBox = new QDialogButtonBox(Qt::Vertical);
buttonBox->addButton(findButton, QDialogButtonBox::ActionRole);
buttonBox->addButton(moreButton, QDialogButtonBox::ActionRole);
+//! [6]
connect(moreButton, SIGNAL(toggled(bool)), extension, SLOT(setVisible(bool)));
#endif
diff --git a/examples/examples.pro b/examples/examples.pro
index cf12dd6..0c4c9cb 100644
--- a/examples/examples.pro
+++ b/examples/examples.pro
@@ -63,7 +63,7 @@ contains(QT_CONFIG, opengl): SUBDIRS += opengl
contains(QT_CONFIG, openvg): SUBDIRS += openvg
contains(QT_CONFIG, dbus): SUBDIRS += dbus
contains(QT_CONFIG, declarative): SUBDIRS += declarative
-win32: SUBDIRS += activeqt
+win32:!win32-g++*: SUBDIRS += activeqt
contains(QT_CONFIG, xmlpatterns):!contains(QT_CONFIG, no-gui): SUBDIRS += xmlpatterns
contains(DEFINES, QT_NO_CURSOR): SUBDIRS -= mainwindows
contains(QT_CONFIG, concurrent): SUBDIRS += qtconcurrent
diff --git a/qmake/generators/integrity/gbuild.cpp b/qmake/generators/integrity/gbuild.cpp
index f273237..f9fdb38 100644
--- a/qmake/generators/integrity/gbuild.cpp
+++ b/qmake/generators/integrity/gbuild.cpp
@@ -392,19 +392,13 @@ QString GBuildMakefileGenerator::writeOne(QString filename, QString pathtoremove
s += "\n";
} else if (filename.endsWith(Option::cpp_ext.first())) {
QString tmpstr(filename.section("/", -1));
-// QString moctool(project->values("QMAKE_MOC").first());
QString filepath(pathtoremove);
if (!project->values("QT_SOURCE_TREE").isEmpty()) {
filepath.remove(project->values("QT_SOURCE_TREE").first());
filepath.remove(0, 1);
}
-// if (!project->values("QT_BUILD_TREE").isEmpty()) {
-// moctool.remove(project->values("QT_BUILD_TREE").first());
-// moctool.remove(0, 1);
-// }
s += "\n\t:preexecShellSafe='${QT_BUILD_DIR}/bin/moc ";
-// s += moctool;
-// s += " ";
+ s += "-nn ";
s += varGlue("DEFINES", "-D", " -D", " ");
s += varGlue("INCLUDEPATH", "-I", " -I", " ");
s += filepath;
diff --git a/qmake/qmake.pri b/qmake/qmake.pri
index 87735d6..c2fc1d5 100644
--- a/qmake/qmake.pri
+++ b/qmake/qmake.pri
@@ -20,6 +20,7 @@ SOURCES += project.cpp property.cpp main.cpp generators/makefile.cpp \
generators/symbian/symmake_abld.cpp \
generators/symbian/symmake_sbsv2.cpp \
generators/symbian/initprojectdeploy_symbian.cpp \
+ generators/integrity/gbuild.cpp \
windows/registry.cpp \
symbian/epocroot.cpp
@@ -36,6 +37,7 @@ HEADERS += project.h property.h generators/makefile.h \
generators/symbian/symmake_abld.h \
generators/symbian/symmake_sbsv2.h \
generators/symbian/initprojectdeploy_symbian.h \
+ generators/integrity/gbuild.h \
windows/registry_p.h \
symbian/epocroot_p.h
diff --git a/src/3rdparty/libpng/pngconf.h b/src/3rdparty/libpng/pngconf.h
index 2a41a29..b02f2a0 100644
--- a/src/3rdparty/libpng/pngconf.h
+++ b/src/3rdparty/libpng/pngconf.h
@@ -286,6 +286,11 @@
# endif
# endif
+/* Avoid exporting libpng symbols from Qt DLL on Windows */
+# if defined (_MSC_VER) && defined(PNG_IMPEXP)
+# undef PNG_IMPEXP
+# endif
+
# ifndef PNG_IMPEXP
# define PNG_IMPEXP
# endif
diff --git a/src/3rdparty/phonon/mmf/environmentalreverb.cpp b/src/3rdparty/phonon/mmf/environmentalreverb.cpp
index d4f5223..cdce6eb 100644
--- a/src/3rdparty/phonon/mmf/environmentalreverb.cpp
+++ b/src/3rdparty/phonon/mmf/environmentalreverb.cpp
@@ -164,7 +164,7 @@ bool EnvironmentalReverb::getParameters(CMdaAudioOutputStream *stream,
parameters.append(createParameter(
Diffusion, tr("Diffusion (%)"), effect->Diffusion(), 0, 100));
- //: ReflectionsDelay: Amount of delay between the arrival the direct
+ //: ReflectionsDelay: Amount of delay between the arrival of the direct
//: path from the source and the arrival of the first reflection.
parameters.append(createParameter(
ReflectionsDelay, tr("Reflections delay (ms)"),
@@ -185,7 +185,7 @@ bool EnvironmentalReverb::getParameters(CMdaAudioOutputStream *stream,
0, effect->ReverbDelayMax()));
effect->ReverbLevelRange(min, max);
- //: ReverbLevel Amplitude of reverberations. This value is
+ //: ReverbLevel: Amplitude of reverberations. This value is
//: corrected by the RoomLevel to give the final reverberation
//: amplitude.
parameters.append(createParameter(
diff --git a/src/3rdparty/phonon/phonon/volumeslider.cpp b/src/3rdparty/phonon/phonon/volumeslider.cpp
index 00970c1..5b38bae 100644
--- a/src/3rdparty/phonon/phonon/volumeslider.cpp
+++ b/src/3rdparty/phonon/phonon/volumeslider.cpp
@@ -42,7 +42,7 @@ VolumeSlider::VolumeSlider(QWidget *parent)
setToolTip(tr("Volume: %1%").arg(100));
#endif
#ifndef QT_NO_WHATSTHIS
- setWhatsThis(tr("Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%").arg(100));
+ setWhatsThis(tr("Use this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%").arg(100));
#endif
connect(&d->slider, SIGNAL(valueChanged(int)), SLOT(_k_sliderChanged(int)));
@@ -60,7 +60,7 @@ VolumeSlider::VolumeSlider(AudioOutput *output, QWidget *parent)
setToolTip(tr("Volume: %1%").arg(100));
#endif
#ifndef QT_NO_WHATSTHIS
- setWhatsThis(tr("Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%").arg(100));
+ setWhatsThis(tr("Use this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%").arg(100));
#endif
connect(&d->slider, SIGNAL(valueChanged(int)), SLOT(_k_sliderChanged(int)));
@@ -114,7 +114,7 @@ void VolumeSlider::setMaximumVolume(qreal volume)
int max = static_cast<int>(volume * 100);
k_ptr->slider.setMaximum(max);
#ifndef QT_NO_WHATSTHIS
- setWhatsThis(tr("Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%")
+ setWhatsThis(tr("Use this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%")
.arg(max));
#endif
}
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp b/src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp
index 5e0a2e6..fc9bd04 100644
--- a/src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp
+++ b/src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp
@@ -918,7 +918,7 @@ void FrameLoaderClientQt::committedLoad(WebCore::DocumentLoader* loader, const c
WebCore::ResourceError FrameLoaderClientQt::cancelledError(const WebCore::ResourceRequest& request)
{
ResourceError error = ResourceError("QtNetwork", QNetworkReply::OperationCanceledError, request.url().prettyURL(),
- QCoreApplication::translate("QWebFrame", "Request cancelled", 0, QCoreApplication::UnicodeUTF8));
+ QCoreApplication::translate("QWebFrame", "Request canceled", 0, QCoreApplication::UnicodeUTF8));
error.setIsCancellation(true);
return error;
}
diff --git a/src/corelib/global/qconfig-minimal.h b/src/corelib/global/qconfig-minimal.h
index ace1eea..1035631 100644
--- a/src/corelib/global/qconfig-minimal.h
+++ b/src/corelib/global/qconfig-minimal.h
@@ -324,9 +324,6 @@
#ifndef QT_NO_QWSEMBEDWIDGET
# define QT_NO_QWSEMBEDWIDGET
#endif
-#ifndef QT_NO_QWS_ALPHA_CURSOR
-# define QT_NO_QWS_ALPHA_CURSOR
-#endif
#ifndef QT_NO_QWS_CURSOR
# define QT_NO_QWS_CURSOR
#endif
diff --git a/src/corelib/global/qconfig-nacl.h b/src/corelib/global/qconfig-nacl.h
index 18ae261..5aefdfe 100644
--- a/src/corelib/global/qconfig-nacl.h
+++ b/src/corelib/global/qconfig-nacl.h
@@ -247,9 +247,6 @@
#ifndef QT_NO_QWSEMBEDWIDGET
# define QT_NO_QWSEMBEDWIDGET
#endif
-#ifndef QT_NO_QWS_ALPHA_CURSOR
-# define QT_NO_QWS_ALPHA_CURSOR
-#endif
#ifndef QT_NO_QWS_CURSOR
# define QT_NO_QWS_CURSOR
#endif
diff --git a/src/corelib/global/qfeatures.h b/src/corelib/global/qfeatures.h
index e0b8a8f..64d5f08 100644
--- a/src/corelib/global/qfeatures.h
+++ b/src/corelib/global/qfeatures.h
@@ -178,9 +178,6 @@
// QWSEmbedWidget
//#define QT_NO_QWSEMBEDWIDGET
-// Alpha Cursor
-//#define QT_NO_QWS_ALPHA_CURSOR
-
// Decoration
//#define QT_NO_QWS_DECORATION_DEFAULT
diff --git a/src/corelib/global/qfeatures.txt b/src/corelib/global/qfeatures.txt
index 6b861d4..dea05e0 100644
--- a/src/corelib/global/qfeatures.txt
+++ b/src/corelib/global/qfeatures.txt
@@ -1268,13 +1268,6 @@ Requires: CURSOR
Name: Cursor
SeeAlso: ???
-Feature: QWS_ALPHA_CURSOR
-Description: Supports alpha-blended cursors.
-Section: Qt for Embedded Linux
-Requires:
-Name: Alpha Cursor
-SeeAlso: ???
-
Feature: QWS_MANAGER
Description: Supports the window manager.
Section: Qt for Embedded Linux
diff --git a/src/corelib/io/qfilesystemengine_win.cpp b/src/corelib/io/qfilesystemengine_win.cpp
index 3296bab..28a7267 100644
--- a/src/corelib/io/qfilesystemengine_win.cpp
+++ b/src/corelib/io/qfilesystemengine_win.cpp
@@ -1094,7 +1094,6 @@ QFileSystemEntry QFileSystemEngine::currentPath()
if (ret.length() >= 2 && ret[1] == QLatin1Char(':'))
ret[0] = ret.at(0).toUpper(); // Force uppercase drive letters.
#else
- Q_UNUSED(fileName);
//TODO - a race condition exists when using currentPath / setCurrentPath from multiple threads
if (qfsPrivateCurrentDir.isEmpty())
qfsPrivateCurrentDir = QCoreApplication::applicationDirPath();
diff --git a/src/corelib/io/qprocess.cpp b/src/corelib/io/qprocess.cpp
index e900663..d70811c 100644
--- a/src/corelib/io/qprocess.cpp
+++ b/src/corelib/io/qprocess.cpp
@@ -2281,7 +2281,7 @@ QT_END_INCLUDE_NAMESPACE
However, note that repeated calls to this function will recreate the
list of environment variables, which is a non-trivial operation.
- \note For new code, it is recommended to use QProcessEvironment::systemEnvironment()
+ \note For new code, it is recommended to use QProcessEnvironment::systemEnvironment()
\sa QProcessEnvironment::systemEnvironment(), environment(), setEnvironment()
*/
diff --git a/src/corelib/kernel/qcoreevent.h b/src/corelib/kernel/qcoreevent.h
index 281367b..f1a0407 100644
--- a/src/corelib/kernel/qcoreevent.h
+++ b/src/corelib/kernel/qcoreevent.h
@@ -209,8 +209,8 @@ public:
// last event id used = 132
#ifdef QT_KEYPAD_NAVIGATION
- EnterEditFocus = 150, // enter edit mode in keypad navigation
- LeaveEditFocus = 151, // enter edit mode in keypad navigation
+ EnterEditFocus = 150, // enter edit mode in keypad navigation (Defined only with QT_KEYPAD_NAVIGATION)
+ LeaveEditFocus = 151, // leave edit mode in keypad navigation (Defined only with QT_KEYPAD_NAVIGATION)
#endif
AcceptDropsChange = 152,
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp
index 67dbadb..5d6e4d7 100644
--- a/src/corelib/kernel/qobject.cpp
+++ b/src/corelib/kernel/qobject.cpp
@@ -3002,7 +3002,7 @@ bool QObject::disconnect(const QObject *sender, const QMetaMethod &signal,
}
const void *cbdata[] = { sender, signal.mobj ? signalSignature.constData() : 0,
receiver, method.mobj ? methodSignature.constData() : 0 };
- if (QInternal::activateCallbacks(QInternal::ConnectCallback, (void **) cbdata))
+ if (QInternal::activateCallbacks(QInternal::DisconnectCallback, (void **) cbdata))
return true;
}
diff --git a/src/corelib/statemachine/qfinalstate.cpp b/src/corelib/statemachine/qfinalstate.cpp
index c583c32..7d65984 100644
--- a/src/corelib/statemachine/qfinalstate.cpp
+++ b/src/corelib/statemachine/qfinalstate.cpp
@@ -80,7 +80,7 @@ QT_BEGIN_NAMESPACE
machine.start();
\endcode
- \sa QStateMachine::finished(), QState::finished()
+ \sa QState::finished()
*/
class QFinalStatePrivate : public QAbstractStatePrivate
diff --git a/src/corelib/tools/qchar.cpp b/src/corelib/tools/qchar.cpp
index 9db7d1a..b296129 100644
--- a/src/corelib/tools/qchar.cpp
+++ b/src/corelib/tools/qchar.cpp
@@ -1481,7 +1481,8 @@ static void decomposeHelper(QString *str, bool canonical, QChar::UnicodeVersion
ucs4 = QChar::surrogateToUcs4(high, ucs4);
}
}
- if (QChar::unicodeVersion(ucs4) > version)
+ QChar::UnicodeVersion v = QChar::unicodeVersion(ucs4);
+ if (v == QChar::Unicode_Unassigned || v > version)
continue;
int length;
int tag;
@@ -1541,7 +1542,7 @@ static ushort ligatureHelper(ushort u1, ushort u2)
return 0;
}
-static void composeHelper(QString *str, int from)
+static void composeHelper(QString *str, QChar::UnicodeVersion version, int from)
{
QString &s = *str;
@@ -1561,7 +1562,14 @@ static void composeHelper(QString *str, int from)
++pos;
}
}
- int combining = QChar::combiningClass(uc);
+ const QUnicodeTables::Properties *p = qGetProp(uc);
+ if (p->unicodeVersion == QChar::Unicode_Unassigned || p->unicodeVersion > version) {
+ starter = -1; // to prevent starter == pos - 1
+ lastCombining = 0;
+ ++pos;
+ continue;
+ }
+ int combining = p->combiningClass;
if (starter == pos - 1 || combining > lastCombining) {
// allowed to form ligature with S
QChar ligature = ligatureHelper(s.at(starter).unicode(), uc);
@@ -1608,7 +1616,7 @@ static void canonicalOrderHelper(QString *str, QChar::UnicodeVersion version, in
ushort c2 = 0;
{
const QUnicodeTables::Properties *p = qGetProp(u2);
- if ((QChar::UnicodeVersion)p->unicodeVersion <= version)
+ if (p->unicodeVersion != QChar::Unicode_Unassigned && p->unicodeVersion <= version)
c2 = p->combiningClass;
}
if (c2 == 0) {
@@ -1619,7 +1627,7 @@ static void canonicalOrderHelper(QString *str, QChar::UnicodeVersion version, in
ushort c1 = 0;
{
const QUnicodeTables::Properties *p = qGetProp(u1);
- if ((QChar::UnicodeVersion)p->unicodeVersion <= version)
+ if (p->unicodeVersion != QChar::Unicode_Unassigned && p->unicodeVersion <= version)
c1 = p->combiningClass;
}
diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp
index f5efe55..934b6ad 100644
--- a/src/corelib/tools/qstring.cpp
+++ b/src/corelib/tools/qstring.cpp
@@ -6367,7 +6367,7 @@ void qt_string_normalize(QString *data, QString::NormalizationForm mode, QChar::
if (mode == QString::NormalizationForm_D || mode == QString::NormalizationForm_KD)
return;
- composeHelper(data, from);
+ composeHelper(data, version, from);
}
diff --git a/src/declarative/debugger/debugger.pri b/src/declarative/debugger/debugger.pri
index 3134c79..c81968e 100644
--- a/src/declarative/debugger/debugger.pri
+++ b/src/declarative/debugger/debugger.pri
@@ -5,13 +5,14 @@ SOURCES += \
$$PWD/qpacketprotocol.cpp \
$$PWD/qdeclarativedebugservice.cpp \
$$PWD/qdeclarativedebugclient.cpp \
- $$PWD/qdeclarativedebug.cpp \
+ $$PWD/qdeclarativeenginedebug.cpp \
$$PWD/qdeclarativedebugtrace.cpp \
$$PWD/qdeclarativedebughelper.cpp \
$$PWD/qdeclarativedebugserver.cpp \
$$PWD/qdeclarativeinspectorservice.cpp \
$$PWD/qjsdebuggeragent.cpp \
- $$PWD/qjsdebugservice.cpp
+ $$PWD/qjsdebugservice.cpp \
+ $$PWD/qdeclarativeenginedebugservice.cpp
HEADERS += \
$$PWD/qdeclarativedebuggerstatus_p.h \
@@ -19,7 +20,7 @@ HEADERS += \
$$PWD/qdeclarativedebugservice_p.h \
$$PWD/qdeclarativedebugservice_p_p.h \
$$PWD/qdeclarativedebugclient_p.h \
- $$PWD/qdeclarativedebug_p.h \
+ $$PWD/qdeclarativeenginedebug_p.h \
$$PWD/qdeclarativedebugtrace_p.h \
$$PWD/qdeclarativedebughelper_p.h \
$$PWD/qdeclarativedebugserver_p.h \
@@ -27,4 +28,6 @@ HEADERS += \
$$PWD/qdeclarativeinspectorservice_p.h \
$$PWD/qdeclarativeinspectorinterface_p.h \
$$PWD/qjsdebuggeragent_p.h \
- $$PWD/qjsdebugservice_p.h
+ $$PWD/qjsdebugservice_p.h \
+ $$PWD/qdeclarativedebug.h \
+ $$PWD/qdeclarativeenginedebugservice_p.h
diff --git a/src/declarative/debugger/qdeclarativedebug.h b/src/declarative/debugger/qdeclarativedebug.h
new file mode 100644
index 0000000..b7930b2
--- /dev/null
+++ b/src/declarative/debugger/qdeclarativedebug.h
@@ -0,0 +1,67 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtDeclarative module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser General Public
+** License version 2.1 as published by the Free Software Foundation and
+** appearing in the file LICENSE.LGPL included in the packaging of this
+** file. Please review the following information to ensure the GNU Lesser
+** General Public License version 2.1 requirements will be met:
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU General
+** Public License version 3.0 as published by the Free Software Foundation
+** and appearing in the file LICENSE.GPL included in the packaging of this
+** file. Please review the following information to ensure the GNU General
+** Public License version 3.0 requirements will be met:
+** http://www.gnu.org/copyleft/gpl.html.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms and
+** conditions contained in a signed written agreement between you and Nokia.
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QDECLARATIVEDEBUG_H
+#define QDECLARATIVEDEBUG_H
+
+#include <QtCore/qglobal.h>
+
+QT_BEGIN_HEADER
+
+QT_BEGIN_NAMESPACE
+
+QT_MODULE(Declarative)
+
+struct Q_DECLARATIVE_EXPORT QDeclarativeDebuggingEnabler
+{
+ QDeclarativeDebuggingEnabler();
+};
+
+// Execute code in constructor before first QDeclarativeEngine is instantiated
+#if defined(QT_DECLARATIVE_DEBUG)
+static QDeclarativeDebuggingEnabler qmlEnableDebuggingHelper;
+#endif
+
+QT_END_NAMESPACE
+
+QT_END_HEADER
+
+#endif // QDECLARATIVEDEBUG_H
diff --git a/src/declarative/debugger/qdeclarativedebugserver.cpp b/src/declarative/debugger/qdeclarativedebugserver.cpp
index 12691b2..3e0c326 100644
--- a/src/declarative/debugger/qdeclarativedebugserver.cpp
+++ b/src/declarative/debugger/qdeclarativedebugserver.cpp
@@ -91,6 +91,7 @@ public:
QStringList clientPlugins;
bool gotHello;
QString waitingForMsgFromService;
+ bool waitingForMsgSucceeded;
private:
// private slot
@@ -100,7 +101,8 @@ private:
QDeclarativeDebugServerPrivate::QDeclarativeDebugServerPrivate() :
connection(0),
- gotHello(false)
+ gotHello(false),
+ waitingForMsgSucceeded(false)
{
}
@@ -315,7 +317,7 @@ void QDeclarativeDebugServer::receiveMessage(const QByteArray &message)
if (d->waitingForMsgFromService == name) {
// deliver directly so that it is delivered before waitForMessage is returning.
d->_q_deliverMessage(name, message);
- d->waitingForMsgFromService.clear();
+ d->waitingForMsgSucceeded = true;
} else {
// deliver message in next event loop run.
// Fixes the case that the service does start it's own event loop ...,
@@ -409,7 +411,9 @@ bool QDeclarativeDebugServer::waitForMessage(QDeclarativeDebugService *service)
do {
d->connection->waitForMessage();
- } while (!d->waitingForMsgFromService.isEmpty());
+ } while (!d->waitingForMsgSucceeded);
+ d->waitingForMsgSucceeded = false;
+ d->waitingForMsgFromService.clear();
return true;
}
diff --git a/src/declarative/debugger/qdeclarativedebug.cpp b/src/declarative/debugger/qdeclarativeenginedebug.cpp
index 620ee1d..85ce710 100644
--- a/src/declarative/debugger/qdeclarativedebug.cpp
+++ b/src/declarative/debugger/qdeclarativeenginedebug.cpp
@@ -39,11 +39,11 @@
**
****************************************************************************/
-#include "private/qdeclarativedebug_p.h"
+#include "private/qdeclarativeenginedebug_p.h"
#include "private/qdeclarativedebugclient_p.h"
-#include <qdeclarativeenginedebug_p.h>
+#include <qdeclarativeenginedebugservice_p.h>
#include <private/qobject_p.h>
@@ -207,7 +207,7 @@ void QDeclarativeEngineDebugPrivate::remove(QDeclarativeEngineDebug *c, QDeclara
void QDeclarativeEngineDebugPrivate::decode(QDataStream &ds, QDeclarativeDebugObjectReference &o,
bool simple)
{
- QDeclarativeEngineDebugServer::QDeclarativeObjectData data;
+ QDeclarativeEngineDebugService::QDeclarativeObjectData data;
ds >> data;
o.m_debugId = data.objectId;
o.m_class = data.objectType;
@@ -234,7 +234,7 @@ void QDeclarativeEngineDebugPrivate::decode(QDataStream &ds, QDeclarativeDebugOb
ds >> propCount;
for (int ii = 0; ii < propCount; ++ii) {
- QDeclarativeEngineDebugServer::QDeclarativeObjectProperty data;
+ QDeclarativeEngineDebugService::QDeclarativeObjectProperty data;
ds >> data;
QDeclarativeDebugPropertyReference prop;
prop.m_objectDebugId = o.m_debugId;
@@ -243,21 +243,21 @@ void QDeclarativeEngineDebugPrivate::decode(QDataStream &ds, QDeclarativeDebugOb
prop.m_hasNotifySignal = data.hasNotifySignal;
prop.m_valueTypeName = data.valueTypeName;
switch (data.type) {
- case QDeclarativeEngineDebugServer::QDeclarativeObjectProperty::Basic:
- case QDeclarativeEngineDebugServer::QDeclarativeObjectProperty::List:
- case QDeclarativeEngineDebugServer::QDeclarativeObjectProperty::SignalProperty:
+ case QDeclarativeEngineDebugService::QDeclarativeObjectProperty::Basic:
+ case QDeclarativeEngineDebugService::QDeclarativeObjectProperty::List:
+ case QDeclarativeEngineDebugService::QDeclarativeObjectProperty::SignalProperty:
{
prop.m_value = data.value;
break;
}
- case QDeclarativeEngineDebugServer::QDeclarativeObjectProperty::Object:
+ case QDeclarativeEngineDebugService::QDeclarativeObjectProperty::Object:
{
QDeclarativeDebugObjectReference obj;
obj.m_debugId = prop.m_value.toInt();
prop.m_value = QVariant::fromValue(obj);
break;
}
- case QDeclarativeEngineDebugServer::QDeclarativeObjectProperty::Unknown:
+ case QDeclarativeEngineDebugService::QDeclarativeObjectProperty::Unknown:
break;
}
o.m_properties << prop;
diff --git a/src/declarative/debugger/qdeclarativedebug_p.h b/src/declarative/debugger/qdeclarativeenginedebug_p.h
index f822637..9b70e1c 100644
--- a/src/declarative/debugger/qdeclarativedebug_p.h
+++ b/src/declarative/debugger/qdeclarativeenginedebug_p.h
@@ -38,8 +38,8 @@
** $QT_END_LICENSE$
**
****************************************************************************/
-#ifndef QDECLARATIVEDEBUG_H
-#define QDECLARATIVEDEBUG_H
+#ifndef QDECLARATIVEENGINEDEBUG_H
+#define QDECLARATIVEENGINEDEBUG_H
#include <QtCore/qobject.h>
#include <QtCore/qurl.h>
@@ -384,4 +384,4 @@ Q_DECLARE_METATYPE(QDeclarativeDebugPropertyReference)
QT_END_HEADER
-#endif // QDECLARATIVEDEBUG_H
+#endif // QDECLARATIVEENGINEDEBUG_H
diff --git a/src/declarative/qml/qdeclarativeenginedebug.cpp b/src/declarative/debugger/qdeclarativeenginedebugservice.cpp
index 8707a7f..7683733 100644
--- a/src/declarative/qml/qdeclarativeenginedebug.cpp
+++ b/src/declarative/debugger/qdeclarativeenginedebugservice.cpp
@@ -39,7 +39,7 @@
**
****************************************************************************/
-#include "private/qdeclarativeenginedebug_p.h"
+#include "private/qdeclarativeenginedebugservice_p.h"
#include "private/qdeclarativeboundsignal_p.h"
#include "qdeclarativeengine.h"
@@ -59,14 +59,14 @@
QT_BEGIN_NAMESPACE
-Q_GLOBAL_STATIC(QDeclarativeEngineDebugServer, qmlEngineDebugServer);
+Q_GLOBAL_STATIC(QDeclarativeEngineDebugService, qmlEngineDebugService);
-QDeclarativeEngineDebugServer *QDeclarativeEngineDebugServer::instance()
+QDeclarativeEngineDebugService *QDeclarativeEngineDebugService::instance()
{
- return qmlEngineDebugServer();
+ return qmlEngineDebugService();
}
-QDeclarativeEngineDebugServer::QDeclarativeEngineDebugServer(QObject *parent)
+QDeclarativeEngineDebugService::QDeclarativeEngineDebugService(QObject *parent)
: QDeclarativeDebugService(QLatin1String("QDeclarativeEngine"), parent),
m_watch(new QDeclarativeWatcher(this))
{
@@ -75,7 +75,7 @@ QDeclarativeEngineDebugServer::QDeclarativeEngineDebugServer(QObject *parent)
}
QDataStream &operator<<(QDataStream &ds,
- const QDeclarativeEngineDebugServer::QDeclarativeObjectData &data)
+ const QDeclarativeEngineDebugService::QDeclarativeObjectData &data)
{
ds << data.url << data.lineNumber << data.columnNumber << data.idString
<< data.objectName << data.objectType << data.objectId << data.contextId;
@@ -83,7 +83,7 @@ QDataStream &operator<<(QDataStream &ds,
}
QDataStream &operator>>(QDataStream &ds,
- QDeclarativeEngineDebugServer::QDeclarativeObjectData &data)
+ QDeclarativeEngineDebugService::QDeclarativeObjectData &data)
{
ds >> data.url >> data.lineNumber >> data.columnNumber >> data.idString
>> data.objectName >> data.objectType >> data.objectId >> data.contextId;
@@ -91,7 +91,7 @@ QDataStream &operator>>(QDataStream &ds,
}
QDataStream &operator<<(QDataStream &ds,
- const QDeclarativeEngineDebugServer::QDeclarativeObjectProperty &data)
+ const QDeclarativeEngineDebugService::QDeclarativeObjectProperty &data)
{
ds << (int)data.type << data.name << data.value << data.valueTypeName
<< data.binding << data.hasNotifySignal;
@@ -99,12 +99,12 @@ QDataStream &operator<<(QDataStream &ds,
}
QDataStream &operator>>(QDataStream &ds,
- QDeclarativeEngineDebugServer::QDeclarativeObjectProperty &data)
+ QDeclarativeEngineDebugService::QDeclarativeObjectProperty &data)
{
int type;
ds >> type >> data.name >> data.value >> data.valueTypeName
>> data.binding >> data.hasNotifySignal;
- data.type = (QDeclarativeEngineDebugServer::QDeclarativeObjectProperty::Type)type;
+ data.type = (QDeclarativeEngineDebugService::QDeclarativeObjectProperty::Type)type;
return ds;
}
@@ -131,8 +131,8 @@ static bool hasValidSignal(QObject *object, const QString &propertyName)
return true;
}
-QDeclarativeEngineDebugServer::QDeclarativeObjectProperty
-QDeclarativeEngineDebugServer::propertyData(QObject *obj, int propIdx)
+QDeclarativeEngineDebugService::QDeclarativeObjectProperty
+QDeclarativeEngineDebugService::propertyData(QObject *obj, int propIdx)
{
QDeclarativeObjectProperty rv;
@@ -164,7 +164,7 @@ QDeclarativeEngineDebugServer::propertyData(QObject *obj, int propIdx)
return rv;
}
-QVariant QDeclarativeEngineDebugServer::valueContents(const QVariant &value) const
+QVariant QDeclarativeEngineDebugService::valueContents(const QVariant &value) const
{
int userType = value.userType();
@@ -193,7 +193,7 @@ QVariant QDeclarativeEngineDebugServer::valueContents(const QVariant &value) con
return QLatin1String("<unknown value>");
}
-void QDeclarativeEngineDebugServer::buildObjectDump(QDataStream &message,
+void QDeclarativeEngineDebugService::buildObjectDump(QDataStream &message,
QObject *object, bool recur, bool dumpProperties)
{
message << objectData(object);
@@ -264,7 +264,7 @@ void QDeclarativeEngineDebugServer::buildObjectDump(QDataStream &message,
message << fakeProperties[ii];
}
-void QDeclarativeEngineDebugServer::prepareDeferredObjects(QObject *obj)
+void QDeclarativeEngineDebugService::prepareDeferredObjects(QObject *obj)
{
qmlExecuteDeferred(obj);
@@ -276,7 +276,7 @@ void QDeclarativeEngineDebugServer::prepareDeferredObjects(QObject *obj)
}
-void QDeclarativeEngineDebugServer::buildObjectList(QDataStream &message, QDeclarativeContext *ctxt)
+void QDeclarativeEngineDebugService::buildObjectList(QDataStream &message, QDeclarativeContext *ctxt)
{
QDeclarativeContextData *p = QDeclarativeContextData::get(ctxt);
@@ -316,7 +316,7 @@ void QDeclarativeEngineDebugServer::buildObjectList(QDataStream &message, QDecla
}
}
-void QDeclarativeEngineDebugServer::buildStatesList(QDeclarativeContext *ctxt, bool cleanList=false)
+void QDeclarativeEngineDebugService::buildStatesList(QDeclarativeContext *ctxt, bool cleanList=false)
{
if (cleanList)
m_allStates.clear();
@@ -333,7 +333,7 @@ void QDeclarativeEngineDebugServer::buildStatesList(QDeclarativeContext *ctxt, b
}
}
-void QDeclarativeEngineDebugServer::buildStatesList(QObject *obj)
+void QDeclarativeEngineDebugService::buildStatesList(QObject *obj)
{
if (QDeclarativeState *state = qobject_cast<QDeclarativeState *>(obj)) {
m_allStates.append(state);
@@ -345,8 +345,8 @@ void QDeclarativeEngineDebugServer::buildStatesList(QObject *obj)
}
}
-QDeclarativeEngineDebugServer::QDeclarativeObjectData
-QDeclarativeEngineDebugServer::objectData(QObject *object)
+QDeclarativeEngineDebugService::QDeclarativeObjectData
+QDeclarativeEngineDebugService::objectData(QObject *object)
{
QDeclarativeData *ddata = QDeclarativeData::get(object);
QDeclarativeObjectData rv;
@@ -385,7 +385,7 @@ QDeclarativeEngineDebugServer::objectData(QObject *object)
return rv;
}
-void QDeclarativeEngineDebugServer::messageReceived(const QByteArray &message)
+void QDeclarativeEngineDebugService::messageReceived(const QByteArray &message)
{
QDataStream ds(message);
@@ -545,7 +545,7 @@ void QDeclarativeEngineDebugServer::messageReceived(const QByteArray &message)
}
}
-void QDeclarativeEngineDebugServer::setBinding(int objectId,
+void QDeclarativeEngineDebugService::setBinding(int objectId,
const QString &propertyName,
const QVariant &expression,
bool isLiteralValue,
@@ -600,7 +600,7 @@ void QDeclarativeEngineDebugServer::setBinding(int objectId,
oldBinding->destroy();
binding->update();
} else {
- qWarning() << "QDeclarativeEngineDebugServer::setBinding: unable to set property" << propertyName << "on object" << object;
+ qWarning() << "QDeclarativeEngineDebugService::setBinding: unable to set property" << propertyName << "on object" << object;
}
}
@@ -613,13 +613,13 @@ void QDeclarativeEngineDebugServer::setBinding(int objectId,
propertyChanges->changeExpression(propertyName, expression.toString());
}
} else {
- qWarning() << "QDeclarativeEngineDebugServer::setBinding: unable to set property" << propertyName << "on object" << object;
+ qWarning() << "QDeclarativeEngineDebugService::setBinding: unable to set property" << propertyName << "on object" << object;
}
}
}
}
-void QDeclarativeEngineDebugServer::resetBinding(int objectId, const QString &propertyName)
+void QDeclarativeEngineDebugService::resetBinding(int objectId, const QString &propertyName)
{
QObject *object = objectForId(objectId);
QDeclarativeContext *context = qmlContext(object);
@@ -664,7 +664,7 @@ void QDeclarativeEngineDebugServer::resetBinding(int objectId, const QString &pr
}
}
-void QDeclarativeEngineDebugServer::setMethodBody(int objectId, const QString &method, const QString &body)
+void QDeclarativeEngineDebugService::setMethodBody(int objectId, const QString &method, const QString &body)
{
QObject *object = objectForId(objectId);
QDeclarativeContext *context = qmlContext(object);
@@ -703,7 +703,7 @@ void QDeclarativeEngineDebugServer::setMethodBody(int objectId, const QString &m
vmeMetaObject->setVmeMethod(prop->coreIndex, QDeclarativeExpressionPrivate::evalInObjectScope(contextData, object, jsfunction, contextData->url.toString(), lineNumber, 0));
}
-void QDeclarativeEngineDebugServer::propertyChanged(int id, int objectId, const QMetaProperty &property, const QVariant &value)
+void QDeclarativeEngineDebugService::propertyChanged(int id, int objectId, const QMetaProperty &property, const QVariant &value)
{
QByteArray reply;
QDataStream rs(&reply, QIODevice::WriteOnly);
@@ -713,7 +713,7 @@ void QDeclarativeEngineDebugServer::propertyChanged(int id, int objectId, const
sendMessage(reply);
}
-void QDeclarativeEngineDebugServer::addEngine(QDeclarativeEngine *engine)
+void QDeclarativeEngineDebugService::addEngine(QDeclarativeEngine *engine)
{
Q_ASSERT(engine);
Q_ASSERT(!m_engines.contains(engine));
@@ -721,7 +721,7 @@ void QDeclarativeEngineDebugServer::addEngine(QDeclarativeEngine *engine)
m_engines.append(engine);
}
-void QDeclarativeEngineDebugServer::remEngine(QDeclarativeEngine *engine)
+void QDeclarativeEngineDebugService::remEngine(QDeclarativeEngine *engine)
{
Q_ASSERT(engine);
Q_ASSERT(m_engines.contains(engine));
@@ -729,7 +729,7 @@ void QDeclarativeEngineDebugServer::remEngine(QDeclarativeEngine *engine)
m_engines.removeAll(engine);
}
-void QDeclarativeEngineDebugServer::objectCreated(QDeclarativeEngine *engine, QObject *object)
+void QDeclarativeEngineDebugService::objectCreated(QDeclarativeEngine *engine, QObject *object)
{
Q_ASSERT(engine);
Q_ASSERT(m_engines.contains(engine));
diff --git a/src/declarative/qml/qdeclarativeenginedebug_p.h b/src/declarative/debugger/qdeclarativeenginedebugservice_p.h
index 804a043..3674b83 100644
--- a/src/declarative/qml/qdeclarativeenginedebug_p.h
+++ b/src/declarative/debugger/qdeclarativeenginedebugservice_p.h
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#ifndef QDECLARATIVEENGINEDEBUG_P_H
-#define QDECLARATIVEENGINEDEBUG_P_H
+#ifndef QDECLARATIVEENGINEDEBUGSERVICE_P_H
+#define QDECLARATIVEENGINEDEBUGSERVICE_P_H
//
// W A R N I N G
@@ -67,11 +67,11 @@ class QDeclarativeWatcher;
class QDataStream;
class QDeclarativeState;
-class QDeclarativeEngineDebugServer : public QDeclarativeDebugService
+class QDeclarativeEngineDebugService : public QDeclarativeDebugService
{
Q_OBJECT
public:
- QDeclarativeEngineDebugServer(QObject * = 0);
+ QDeclarativeEngineDebugService(QObject * = 0);
struct QDeclarativeObjectData {
QUrl url;
@@ -98,7 +98,7 @@ public:
void remEngine(QDeclarativeEngine *);
void objectCreated(QDeclarativeEngine *, QObject *);
- static QDeclarativeEngineDebugServer *instance();
+ static QDeclarativeEngineDebugService *instance();
protected:
virtual void messageReceived(const QByteArray &);
@@ -123,12 +123,12 @@ private:
QDeclarativeWatcher *m_watch;
QList<QWeakPointer<QDeclarativeState> > m_allStates;
};
-Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &, const QDeclarativeEngineDebugServer::QDeclarativeObjectData &);
-Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &, QDeclarativeEngineDebugServer::QDeclarativeObjectData &);
-Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &, const QDeclarativeEngineDebugServer::QDeclarativeObjectProperty &);
-Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &, QDeclarativeEngineDebugServer::QDeclarativeObjectProperty &);
+Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &, const QDeclarativeEngineDebugService::QDeclarativeObjectData &);
+Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &, QDeclarativeEngineDebugService::QDeclarativeObjectData &);
+Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &, const QDeclarativeEngineDebugService::QDeclarativeObjectProperty &);
+Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &, QDeclarativeEngineDebugService::QDeclarativeObjectProperty &);
QT_END_NAMESPACE
-#endif // QDECLARATIVEENGINEDEBUG_P_H
+#endif // QDECLARATIVEENGINEDEBUGSERVICE_P_H
diff --git a/src/declarative/qml/qdeclarative.h b/src/declarative/qml/qdeclarative.h
index 5e8d0f4..399c207 100644
--- a/src/declarative/qml/qdeclarative.h
+++ b/src/declarative/qml/qdeclarative.h
@@ -405,17 +405,6 @@ QObject *qmlAttachedPropertiesObject(const QObject *obj, bool create = true)
return qmlAttachedPropertiesObject(&idx, obj, &T::staticMetaObject, create);
}
-// Enable debugging before any QDeclarativeEngine is created
-struct Q_DECLARATIVE_EXPORT QDeclarativeDebuggingEnabler
-{
- QDeclarativeDebuggingEnabler();
-};
-
-// Execute code in constructor before first QDeclarativeEngine is instantiated
-#if defined(QT_DECLARATIVE_DEBUG)
-static QDeclarativeDebuggingEnabler qmlEnableDebuggingHelper;
-#endif
-
QT_END_NAMESPACE
QML_DECLARE_TYPE(QObject)
diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp
index d9f291b..f423f50 100644
--- a/src/declarative/qml/qdeclarativecomponent.cpp
+++ b/src/declarative/qml/qdeclarativecomponent.cpp
@@ -53,7 +53,7 @@
#include "private/qdeclarativeglobal_p.h"
#include "private/qdeclarativescriptparser_p.h"
#include "private/qdeclarativedebugtrace_p.h"
-#include "private/qdeclarativeenginedebug_p.h"
+#include "private/qdeclarativeenginedebugservice_p.h"
#include <QtScript/qscriptvalueiterator.h>
#include <QStack>
@@ -896,7 +896,7 @@ QObject * QDeclarativeComponentPrivate::begin(QDeclarativeContextData *parentCon
if (enginePriv->isDebugging && rv) {
if (!parentContext->isInternal)
parentContext->asQDeclarativeContextPrivate()->instances.append(rv);
- QDeclarativeEngineDebugServer::instance()->objectCreated(parentContext->engine, rv);
+ QDeclarativeEngineDebugService::instance()->objectCreated(parentContext->engine, rv);
}
return rv;
diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp
index 34014f7..1417b78 100644
--- a/src/declarative/qml/qdeclarativeengine.cpp
+++ b/src/declarative/qml/qdeclarativeengine.cpp
@@ -51,7 +51,7 @@
#include "qdeclarativecomponent.h"
#include "private/qdeclarativebinding_p_p.h"
#include "private/qdeclarativevme_p.h"
-#include "private/qdeclarativeenginedebug_p.h"
+#include "private/qdeclarativeenginedebugservice_p.h"
#include "private/qdeclarativestringconverters_p.h"
#include "private/qdeclarativexmlhttprequest_p.h"
#include "private/qdeclarativesqldatabase_p.h"
@@ -581,9 +581,9 @@ void QDeclarativeEnginePrivate::init()
scriptEngine.globalObject().property(QLatin1String("Qt")).setProperty(QLatin1String("application"), applicationObject);
if (QCoreApplication::instance()->thread() == q->thread() &&
- QDeclarativeEngineDebugServer::isDebuggingEnabled()) {
+ QDeclarativeEngineDebugService::isDebuggingEnabled()) {
isDebugging = true;
- QDeclarativeEngineDebugServer::instance()->addEngine(q);
+ QDeclarativeEngineDebugService::instance()->addEngine(q);
QJSDebugService::instance()->addEngine(q);
}
}
@@ -648,7 +648,7 @@ QDeclarativeEngine::~QDeclarativeEngine()
{
Q_D(QDeclarativeEngine);
if (d->isDebugging) {
- QDeclarativeEngineDebugServer::instance()->remEngine(this);
+ QDeclarativeEngineDebugService::instance()->remEngine(this);
QJSDebugService::instance()->removeEngine(this);
}
}
diff --git a/src/declarative/qml/qdeclarativeengine.h b/src/declarative/qml/qdeclarativeengine.h
index 61ab2b2..4d6887f 100644
--- a/src/declarative/qml/qdeclarativeengine.h
+++ b/src/declarative/qml/qdeclarativeengine.h
@@ -47,6 +47,7 @@
#include <QtCore/qmap.h>
#include <QtScript/qscriptvalue.h>
#include <QtDeclarative/qdeclarativeerror.h>
+#include <QtDeclarative/qdeclarativedebug.h>
QT_BEGIN_HEADER
diff --git a/src/declarative/qml/qdeclarativeimport.cpp b/src/declarative/qml/qdeclarativeimport.cpp
index bf261ef..c2f0086 100644
--- a/src/declarative/qml/qdeclarativeimport.cpp
+++ b/src/declarative/qml/qdeclarativeimport.cpp
@@ -46,6 +46,7 @@
#include <QtCore/qfileinfo.h>
#include <QtCore/qpluginloader.h>
#include <QtCore/qlibraryinfo.h>
+#include <QtCore/qalgorithms.h>
#include <QtDeclarative/qdeclarativeextensioninterface.h>
#include <private/qdeclarativeglobal_p.h>
#include <private/qdeclarativetypenamecache_p.h>
@@ -734,8 +735,12 @@ QDeclarativeImportDatabase::QDeclarativeImportDatabase(QDeclarativeEngine *e)
}
RFs& fs = qt_s60GetRFs();
TPtrC tempPathPtr(reinterpret_cast<const TText*> (tempPath.constData()));
+ // Symbian searches should start from Y:. Fix start drive otherwise TFindFile starts from the session drive
+ _LIT(KStartDir, "Y:");
+ TFileName dirPath(KStartDir);
+ dirPath.Append(tempPathPtr);
TFindFile finder(fs);
- TInt err = finder.FindByDir(tempPathPtr, tempPathPtr);
+ TInt err = finder.FindByDir(tempPathPtr, dirPath);
while (err == KErrNone) {
QString foundDir(reinterpret_cast<const QChar *>(finder.File().Ptr()),
finder.File().Length());
@@ -743,6 +748,9 @@ QDeclarativeImportDatabase::QDeclarativeImportDatabase(QDeclarativeEngine *e)
addImportPath(foundDir);
err = finder.Find();
}
+ // TFindFile found the directories in the order we want, but addImportPath reverses it.
+ // Reverse the order again to get it right.
+ QAlgorithmsPrivate::qReverse(fileImportPath.begin(), fileImportPath.end());
} else {
addImportPath(installImportsPath);
}
diff --git a/src/declarative/qml/qdeclarativenotifier_p.h b/src/declarative/qml/qdeclarativenotifier_p.h
index 5f70f7d..14a7f82 100644
--- a/src/declarative/qml/qdeclarativenotifier_p.h
+++ b/src/declarative/qml/qdeclarativenotifier_p.h
@@ -99,8 +99,15 @@ private:
enum { InvalidType, SignalType, NotifierType } type;
union {
- char signalData[sizeof(Signal)];
- char notifierData[sizeof(Notifier)];
+ struct {
+ Signal *signal;
+ union {
+ char signalData[sizeof(Signal)];
+ qint64 q_for_alignment_1;
+ double q_for_alignment_2;
+ };
+ } signal;
+ Notifier notifier;
};
inline Notifier *toNotifier();
@@ -194,7 +201,7 @@ void QDeclarativeNotifierEndpoint::connect(QDeclarativeNotifier *notifier)
void QDeclarativeNotifierEndpoint::disconnect()
{
if (type == SignalType) {
- Signal *s = (Signal *)&signalData;
+ Signal *s = asSignal();
if (s->source) {
QMetaObject::disconnectOne(s->source, s->sourceSignal, target, targetMethod);
s->source = 0;
@@ -223,18 +230,19 @@ QDeclarativeNotifierEndpoint::Notifier *QDeclarativeNotifierEndpoint::toNotifier
s->~Signal();
}
+ type = NotifierType;
Notifier *n = asNotifier();
n->next = 0;
n->prev = 0;
n->disconnected = 0;
n->notifier = 0;
- type = NotifierType;
return n;
}
QDeclarativeNotifierEndpoint::Notifier *QDeclarativeNotifierEndpoint::asNotifier()
{
- return (Notifier *)(&notifierData);
+ Q_ASSERT(type == NotifierType);
+ return &notifier;
}
QDeclarativeNotifierEndpoint::Signal *QDeclarativeNotifierEndpoint::toSignal()
@@ -243,16 +251,15 @@ QDeclarativeNotifierEndpoint::Signal *QDeclarativeNotifierEndpoint::toSignal()
return asSignal();
disconnect();
- Signal *s = asSignal();
- new (s) Signal;
+ signal.signal = new (&signal.signalData) Signal;
type = SignalType;
-
- return s;
+ return signal.signal;
}
QDeclarativeNotifierEndpoint::Signal *QDeclarativeNotifierEndpoint::asSignal()
{
- return (Signal *)(&signalData);
+ Q_ASSERT(type == SignalType);
+ return signal.signal;
}
QT_END_NAMESPACE
diff --git a/src/declarative/qml/qdeclarativepropertycache_p.h b/src/declarative/qml/qdeclarativepropertycache_p.h
index 581f519..c648d25 100644
--- a/src/declarative/qml/qdeclarativepropertycache_p.h
+++ b/src/declarative/qml/qdeclarativepropertycache_p.h
@@ -111,7 +111,7 @@ public:
int relatedIndex; // When IsFunction
};
uint overrideIndexIsProperty : 1;
- int overrideIndex : 31;
+ signed int overrideIndex : 31;
int revision;
int metaObjectOffset;
diff --git a/src/declarative/qml/qml.pri b/src/declarative/qml/qml.pri
index bf9e54a..5d171bf 100644
--- a/src/declarative/qml/qml.pri
+++ b/src/declarative/qml/qml.pri
@@ -27,7 +27,6 @@ SOURCES += \
$$PWD/qdeclarativeinfo.cpp \
$$PWD/qdeclarativeerror.cpp \
$$PWD/qdeclarativescriptparser.cpp \
- $$PWD/qdeclarativeenginedebug.cpp \
$$PWD/qdeclarativerewrite.cpp \
$$PWD/qdeclarativevaluetype.cpp \
$$PWD/qdeclarativecompiledbindings.cpp \
@@ -99,7 +98,6 @@ HEADERS += \
$$PWD/qdeclarativedata_p.h \
$$PWD/qdeclarativeerror.h \
$$PWD/qdeclarativescriptparser_p.h \
- $$PWD/qdeclarativeenginedebug_p.h \
$$PWD/qdeclarativerewrite_p.h \
$$PWD/qpodvector_p.h \
$$PWD/qbitfield_p.h \
diff --git a/src/declarative/util/qdeclarativeview.h b/src/declarative/util/qdeclarativeview.h
index b3854fc..ef51934 100644
--- a/src/declarative/util/qdeclarativeview.h
+++ b/src/declarative/util/qdeclarativeview.h
@@ -47,6 +47,7 @@
#include <QtGui/qgraphicssceneevent.h>
#include <QtGui/qgraphicsview.h>
#include <QtGui/qwidget.h>
+#include <QtDeclarative/qdeclarativedebug.h>
QT_BEGIN_HEADER
diff --git a/src/gui/dialogs/qfiledialog_win.cpp b/src/gui/dialogs/qfiledialog_win.cpp
index de8e33d..6691ff1 100644
--- a/src/gui/dialogs/qfiledialog_win.cpp
+++ b/src/gui/dialogs/qfiledialog_win.cpp
@@ -670,7 +670,7 @@ QStringList qt_win_get_open_file_names(const QFileDialogArgs &args,
// GetOpenFileName() will return only one folder name for all the files. To retrieve
// the correct path for all selected files, we have to use Common Item Dialog interfaces.
#ifndef Q_WS_WINCE
- if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)
+ if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))
return qt_win_CID_get_open_file_names(args, initialDirectory, filterLst, selectedFilter, idx);
#endif
@@ -757,7 +757,7 @@ static int __stdcall winGetExistDirCallbackProc(HWND hwnd,
QString qt_win_get_existing_directory(const QFileDialogArgs &args)
{
#ifndef Q_WS_WINCE
- if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)
+ if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))
return qt_win_CID_get_existing_directory(args);
#endif
diff --git a/src/gui/dialogs/qmessagebox.cpp b/src/gui/dialogs/qmessagebox.cpp
index 66e7216..149e267 100644
--- a/src/gui/dialogs/qmessagebox.cpp
+++ b/src/gui/dialogs/qmessagebox.cpp
@@ -548,8 +548,8 @@ void QMessageBoxPrivate::_q_buttonClicked(QAbstractButton *button)
\snippet doc/src/snippets/code/src_gui_dialogs_qmessagebox.cpp 6
This is the approach recommended in the
- \l{http://developer.apple.com/documentation/UserExperience/Conceptual/AppleHIGuidelines/XHIGWindows/chapter_18_section_7.html}
- {Mac OS X Guidlines}. Similar guidlines apply for the other
+ \l{http://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/AppleHIGuidelines/Windows/Windows.html#//apple_ref/doc/uid/20000961-BABCAJID}
+ {Mac OS X Guidelines}. Similar guidelines apply for the other
platforms, but note the different ways the
\l{QMessageBox::informativeText} {informative text} is handled for
different platforms.
diff --git a/src/gui/dialogs/qwizard.cpp b/src/gui/dialogs/qwizard.cpp
index 83bdaa0..9f8d526 100644
--- a/src/gui/dialogs/qwizard.cpp
+++ b/src/gui/dialogs/qwizard.cpp
@@ -572,8 +572,7 @@ public:
#endif
}
#if !defined(QT_NO_STYLE_WINDOWSVISTA)
- if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)
+ if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))
vistaInitPending = true;
#endif
}
diff --git a/src/gui/egl/qegl.cpp b/src/gui/egl/qegl.cpp
index 2a37d45..6fe1c8c 100644
--- a/src/gui/egl/qegl.cpp
+++ b/src/gui/egl/qegl.cpp
@@ -684,6 +684,37 @@ EGLSurface QEgl::createSurface(QPaintDevice *device, EGLConfig cfg, const QEglPr
else
props = 0;
EGLSurface surf;
+#ifdef Q_OS_SYMBIAN
+ // On Symbian there might be situations (especially on 32MB GPU devices)
+ // where Qt is trying to create EGL surface while some other application
+ // is still holding all available GPU memory but is about to release it
+ // soon. For an example when exiting native video recorder and going back to
+ // Qt application behind it. Video stack tear down takes some time and Qt
+ // app might be too quick in reserving its EGL surface and thus running out
+ // of GPU memory right away. So if EGL surface creation fails due to bad
+ // alloc, let's try recreating it four times within ~1 second if needed.
+ // This strategy gives some time for video recorder to tear down its stack
+ // and a chance to Qt for creating a valid surface.
+ int tries = 4;
+ while(tries--) {
+ if (devType == QInternal::Widget)
+ surf = eglCreateWindowSurface(QEgl::display(), cfg, windowDrawable, props);
+ else
+ surf = eglCreatePixmapSurface(QEgl::display(), cfg, pixmapDrawable, props);
+ if (surf == EGL_NO_SURFACE) {
+ EGLint error = eglGetError();
+ if (error == EGL_BAD_ALLOC) {
+ if (tries) {
+ User::After(1000 * 250); // 250ms
+ continue;
+ }
+ }
+ qWarning("QEglContext::createSurface(): Unable to create EGL surface, error = 0x%x", error);
+ } else {
+ break;
+ }
+ }
+#else
if (devType == QInternal::Widget)
surf = eglCreateWindowSurface(QEgl::display(), cfg, windowDrawable, props);
else
@@ -691,6 +722,7 @@ EGLSurface QEgl::createSurface(QPaintDevice *device, EGLConfig cfg, const QEglPr
if (surf == EGL_NO_SURFACE) {
qWarning("QEglContext::createSurface(): Unable to create EGL surface, error = 0x%x", eglGetError());
}
+#endif
return surf;
}
#endif
diff --git a/src/gui/image/qnativeimage.cpp b/src/gui/image/qnativeimage.cpp
index aebcbaf..e1382dd 100644
--- a/src/gui/image/qnativeimage.cpp
+++ b/src/gui/image/qnativeimage.cpp
@@ -153,7 +153,12 @@ QImage::Format QNativeImage::systemFormat()
QNativeImage::QNativeImage(int width, int height, QImage::Format format,bool /* isTextBuffer */, QWidget *widget)
: xshmimg(0), xshmpm(0)
{
- if (!X11->use_mitshm) {
+ QX11Info info = widget->x11Info();
+
+ int dd = info.depth();
+ Visual *vis = (Visual*) info.visual();
+
+ if (!X11->use_mitshm || format != QImage::Format_RGB16 && X11->bppForDepth.value(dd) != 32) {
image = QImage(width, height, format);
// follow good coding practice and set xshminfo attributes, though values not used in this case
xshminfo.readOnly = true;
@@ -163,11 +168,6 @@ QNativeImage::QNativeImage(int width, int height, QImage::Format format,bool /*
return;
}
- QX11Info info = widget->x11Info();
-
- int dd = info.depth();
- Visual *vis = (Visual*) info.visual();
-
xshmimg = XShmCreateImage(X11->display, vis, dd, ZPixmap, 0, &xshminfo, width, height);
if (!xshmimg) {
qWarning("QNativeImage: Unable to create shared XImage.");
diff --git a/src/gui/image/qpixmap_x11.cpp b/src/gui/image/qpixmap_x11.cpp
index 77c2a2a..0e1401c 100644
--- a/src/gui/image/qpixmap_x11.cpp
+++ b/src/gui/image/qpixmap_x11.cpp
@@ -897,12 +897,20 @@ void QX11PixmapData::fromImage(const QImage &img,
}
)
break;
- case BPP24_888: // 24 bit MSB
+ case BPP24_888:
CYCLE(
- for (int x=0; x<w; x++) {
- *dst++ = qRed (*p);
- *dst++ = qGreen(*p);
- *dst++ = qBlue (*p++);
+ if (QSysInfo::ByteOrder == QSysInfo::BigEndian) {
+ for (int x=0; x<w; x++) {
+ *dst++ = qRed (*p);
+ *dst++ = qGreen(*p);
+ *dst++ = qBlue (*p++);
+ }
+ } else {
+ for (int x=0; x<w; x++) {
+ *dst++ = qBlue (*p);
+ *dst++ = qGreen(*p);
+ *dst++ = qRed (*p++);
+ }
}
)
break;
diff --git a/src/gui/kernel/qapplication_win.cpp b/src/gui/kernel/qapplication_win.cpp
index 756cb56..c472738 100644
--- a/src/gui/kernel/qapplication_win.cpp
+++ b/src/gui/kernel/qapplication_win.cpp
@@ -682,7 +682,7 @@ void QApplicationPrivate::initializeWidgetPaletteHash()
QColor menuText(qt_colorref2qrgb(GetSysColor(COLOR_MENUTEXT)));
BOOL isFlat = false;
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
SystemParametersInfo(SPI_GETFLATMENU, 0, &isFlat, 0);
QPalette menu(pal);
// we might need a special color group for the menu.
@@ -697,7 +697,7 @@ void QApplicationPrivate::initializeWidgetPaletteHash()
menu.setColor(QPalette::Disabled, QPalette::Highlight,
QColor(qt_colorref2qrgb(GetSysColor(
(QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))
&& isFlat ? COLOR_MENUHILIGHT : COLOR_HIGHLIGHT))));
menu.setColor(QPalette::Disabled, QPalette::HighlightedText, disabled);
menu.setColor(QPalette::Disabled, QPalette::Button,
@@ -719,7 +719,7 @@ void QApplicationPrivate::initializeWidgetPaletteHash()
QApplication::setPalette(menu, "QMenu");
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based) && isFlat) {
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)) && isFlat) {
QColor menubar(qt_colorref2qrgb(GetSysColor(COLOR_MENUBAR)));
menu.setColor(QPalette::Active, QPalette::Button, menubar);
menu.setColor(QPalette::Disabled, QPalette::Button, menubar);
@@ -999,7 +999,7 @@ const QString qt_reg_winclass(QWidget *w) // register window class
style = CS_DBLCLKS;
if (w->inherits("QTipLabel") || w->inherits("QAlphaWidget")) {
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)) {
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))) {
style |= CS_DROPSHADOW;
}
cname = QLatin1String("QToolTip");
@@ -1017,7 +1017,7 @@ const QString qt_reg_winclass(QWidget *w) // register window class
style |= CS_SAVEBITS;
#endif
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
style |= CS_DROPSHADOW;
icon = false;
} else {
@@ -4161,7 +4161,8 @@ PtrCloseTouchInputHandle QApplicationPrivate::CloseTouchInputHandle = 0;
void QApplicationPrivate::initializeMultitouch_sys()
{
- if (QSysInfo::windowsVersion() >= QSysInfo::WV_WINDOWS7) {
+ if (QSysInfo::windowsVersion() >= QSysInfo::WV_WINDOWS7
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)) {
static const int QT_SM_DIGITIZER = 94;
int value = GetSystemMetrics(QT_SM_DIGITIZER);
static const int QT_NID_INTEGRATED_TOUCH = 0x01;
diff --git a/src/gui/kernel/qapplication_x11.cpp b/src/gui/kernel/qapplication_x11.cpp
index ef8e2b8..408e9ac 100644
--- a/src/gui/kernel/qapplication_x11.cpp
+++ b/src/gui/kernel/qapplication_x11.cpp
@@ -1896,6 +1896,12 @@ void qt_init(QApplicationPrivate *priv, int,
X11->defaultScreen = DefaultScreen(X11->display);
X11->screenCount = ScreenCount(X11->display);
+ int formatCount = 0;
+ XPixmapFormatValues *values = XListPixmapFormats(X11->display, &formatCount);
+ for (int i = 0; i < formatCount; ++i)
+ X11->bppForDepth[values[i].depth] = values[i].bits_per_pixel;
+ XFree(values);
+
X11->screens = new QX11InfoData[X11->screenCount];
X11->argbVisuals = new Visual *[X11->screenCount];
X11->argbColormaps = new Colormap[X11->screenCount];
diff --git a/src/gui/kernel/qcursor_win.cpp b/src/gui/kernel/qcursor_win.cpp
index cef83f5..a68472c 100644
--- a/src/gui/kernel/qcursor_win.cpp
+++ b/src/gui/kernel/qcursor_win.cpp
@@ -477,7 +477,7 @@ void QCursorData::update()
QPixmap pixmap = QApplicationPrivate::instance()->getPixmapCursor(cshape);
hcurs = create32BitCursor(pixmap, hx, hy);
}
- break;
+ return;
default:
qWarning("QCursor::update: Invalid cursor shape %d", cshape);
return;
diff --git a/src/gui/kernel/qguiplatformplugin.cpp b/src/gui/kernel/qguiplatformplugin.cpp
index 708859d..04fd111 100644
--- a/src/gui/kernel/qguiplatformplugin.cpp
+++ b/src/gui/kernel/qguiplatformplugin.cpp
@@ -137,10 +137,10 @@ QString QGuiPlatformPlugin::styleName()
return QLatin1String("WindowsCE");
#elif defined(Q_WS_WIN)
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
return QLatin1String("WindowsVista");
else if ((QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
return QLatin1String("WindowsXP");
else
return QLatin1String("Windows"); // default styles for Windows
diff --git a/src/gui/kernel/qsoftkeymanager.cpp b/src/gui/kernel/qsoftkeymanager.cpp
index 9caa37e..cd3450e 100644
--- a/src/gui/kernel/qsoftkeymanager.cpp
+++ b/src/gui/kernel/qsoftkeymanager.cpp
@@ -61,7 +61,7 @@ QString QSoftKeyManager::standardSoftKeyText(StandardSoftKey standardKey)
QString softKeyText;
switch (standardKey) {
case OkSoftKey:
- softKeyText = QSoftKeyManager::tr("Ok");
+ softKeyText = QSoftKeyManager::tr("OK");
break;
case SelectSoftKey:
softKeyText = QSoftKeyManager::tr("Select");
diff --git a/src/gui/kernel/qt_x11_p.h b/src/gui/kernel/qt_x11_p.h
index 72acaf3..fe4a631 100644
--- a/src/gui/kernel/qt_x11_p.h
+++ b/src/gui/kernel/qt_x11_p.h
@@ -54,6 +54,7 @@
//
#include "QtGui/qwindowdefs.h"
+#include "QtCore/qhash.h"
#include "QtCore/qlist.h"
#include "QtCore/qvariant.h"
@@ -467,6 +468,7 @@ struct QX11Data
Colormap *argbColormaps;
int screenCount;
int defaultScreen;
+ QHash<int, int> bppForDepth;
Time time;
Time userTime;
diff --git a/src/gui/kernel/qwhatsthis.cpp b/src/gui/kernel/qwhatsthis.cpp
index 5328cb1..da79250 100644
--- a/src/gui/kernel/qwhatsthis.cpp
+++ b/src/gui/kernel/qwhatsthis.cpp
@@ -227,7 +227,7 @@ QWhatsThat::QWhatsThat(const QString& txt, QWidget* parent, QWidget *showTextFor
}
#if defined(Q_WS_WIN)
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
{
BOOL shadow;
SystemParametersInfo(SPI_GETDROPSHADOW, 0, &shadow, 0);
@@ -305,7 +305,7 @@ void QWhatsThat::paintEvent(QPaintEvent*)
bool drawShadow = true;
#if defined(Q_WS_WIN)
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_XP
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
{
BOOL shadow;
SystemParametersInfo(SPI_GETDROPSHADOW, 0, &shadow, 0);
diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp
index e015f5f..7055c6b 100644
--- a/src/gui/kernel/qwidget.cpp
+++ b/src/gui/kernel/qwidget.cpp
@@ -2260,10 +2260,16 @@ void QWidgetPrivate::updateIsOpaque()
#endif
#ifdef Q_WS_S60
- if (q->windowType() == Qt::Dialog && q->testAttribute(Qt::WA_TranslucentBackground)
- && S60->avkonComponentsSupportTransparency) {
- setOpaque(false);
- return;
+ if (q->testAttribute(Qt::WA_TranslucentBackground)) {
+ if (q->windowType() & Qt::Dialog || q->windowType() & Qt::Popup) {
+ if (S60->avkonComponentsSupportTransparency) {
+ setOpaque(false);
+ return;
+ }
+ } else {
+ setOpaque(false);
+ return;
+ }
}
#endif
@@ -2283,11 +2289,16 @@ void QWidgetPrivate::updateIsOpaque()
}
if (q->isWindow() && !q->testAttribute(Qt::WA_NoSystemBackground)) {
+#ifdef Q_WS_S60
+ setOpaque(true);
+ return;
+#else
const QBrush &windowBrush = q->palette().brush(QPalette::Window);
if (windowBrush.style() != Qt::NoBrush && windowBrush.isOpaque()) {
setOpaque(true);
return;
}
+#endif
}
setOpaque(false);
}
@@ -10948,11 +10959,14 @@ void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on)
}
break;
case Qt::WA_TranslucentBackground:
+#if defined(Q_OS_SYMBIAN)
+ setAttribute(Qt::WA_NoSystemBackground, on);
+#else
if (on) {
setAttribute(Qt::WA_NoSystemBackground);
d->updateIsTranslucent();
}
-
+#endif
break;
case Qt::WA_AcceptTouchEvents:
#if defined(Q_WS_WIN) || defined(Q_WS_MAC) || defined(Q_OS_SYMBIAN)
diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h
index aefffb6..9ac9479 100644
--- a/src/gui/kernel/qwidget_p.h
+++ b/src/gui/kernel/qwidget_p.h
@@ -233,6 +233,7 @@ struct QTLWExtra {
uint inExpose : 1; // Prevents drawing recursion
uint nativeWindowTransparencyEnabled : 1; // Tracks native window transparency
uint forcedToRaster : 1;
+ uint noSystemRotationDisabled : 1;
#elif defined(Q_WS_QPA)
QPlatformWindow *platformWindow;
QPlatformWindowFormat platformWindowFormat;
diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp
index e06b625..00661ae 100644
--- a/src/gui/kernel/qwidget_s60.cpp
+++ b/src/gui/kernel/qwidget_s60.cpp
@@ -804,19 +804,12 @@ void QWidgetPrivate::setConstraints_sys()
void QWidgetPrivate::s60UpdateIsOpaque()
{
Q_Q(QWidget);
-
if (!q->testAttribute(Qt::WA_WState_Created))
return;
-
const bool writeAlpha = extraData()->nativePaintMode == QWExtra::BlitWriteAlpha;
- if (!q->testAttribute(Qt::WA_TranslucentBackground) && !writeAlpha)
- return;
const bool requireAlphaChannel = !isOpaque || writeAlpha;
-
createTLExtra();
-
RWindow *const window = static_cast<RWindow *>(q->effectiveWinId()->DrawableWindow());
-
#ifdef Q_SYMBIAN_SEMITRANSPARENT_BG_SURFACE
if (QApplicationPrivate::instance()->useTranslucentEGLSurfaces
&& !extra->topextra->forcedToRaster) {
@@ -825,25 +818,47 @@ void QWidgetPrivate::s60UpdateIsOpaque()
return;
}
#endif
+ const bool recreateBackingStore = extra->topextra->backingStore.data() && (
+ QApplicationPrivate::graphics_system_name == QLatin1String("openvg") ||
+ QApplicationPrivate::graphics_system_name == QLatin1String("opengl")
+ );
if (requireAlphaChannel) {
- const TDisplayMode displayMode = static_cast<TDisplayMode>(window->SetRequiredDisplayMode(EColor16MA));
- if (window->SetTransparencyAlphaChannel() == KErrNone) {
+ window->SetRequiredDisplayMode(EColor16MA);
+ if (window->SetTransparencyAlphaChannel() == KErrNone)
window->SetBackgroundColor(TRgb(255, 255, 255, 0));
- extra->topextra->nativeWindowTransparencyEnabled = 1;
- if (extra->topextra->backingStore.data() && (
- QApplicationPrivate::graphics_system_name == QLatin1String("openvg")
- || QApplicationPrivate::graphics_system_name == QLatin1String("opengl"))) {
- // Semi-transparent EGL surfaces aren't supported. We need to
- // recreate backing store to get translucent surface (raster surface).
- extra->topextra->backingStore.create(q);
- extra->topextra->backingStore.registerWidget(q);
- // FixNativeOrientation() will not work without an EGL surface.
+ } else {
+ if (recreateBackingStore) {
+ // Clear the UI surface to ensure that the EGL surface content is visible
+ CWsScreenDevice *screenDevice = S60->screenDevice(q);
+ QScopedPointer<CWindowGc> gc(new CWindowGc(screenDevice));
+ const int err = gc->Construct();
+ if (!err) {
+ gc->Activate(*window);
+ window->BeginRedraw();
+ gc->SetDrawMode(CWindowGc::EDrawModeWriteAlpha);
+ gc->SetBrushColor(TRgb(0, 0, 0, 0));
+ gc->Clear(TRect(0, 0, q->width(), q->height()));
+ window->EndRedraw();
+ }
+ }
+ if (extra->topextra->nativeWindowTransparencyEnabled)
+ window->SetTransparentRegion(TRegionFix<1>());
+ }
+ extra->topextra->nativeWindowTransparencyEnabled = requireAlphaChannel;
+ if (recreateBackingStore) {
+ extra->topextra->backingStore.create(q);
+ extra->topextra->backingStore.registerWidget(q);
+ bool noSystemRotationDisabled = false;
+ if (requireAlphaChannel) {
+ if (q->testAttribute(Qt::WA_SymbianNoSystemRotation)) {
+ // FixNativeOrientation() will not work without an EGL surface
q->setAttribute(Qt::WA_SymbianNoSystemRotation, false);
+ noSystemRotationDisabled = true;
}
+ } else {
+ q->setAttribute(Qt::WA_SymbianNoSystemRotation, extra->topextra->noSystemRotationDisabled);
}
- } else if (extra->topextra->nativeWindowTransparencyEnabled) {
- window->SetTransparentRegion(TRegionFix<1>());
- extra->topextra->nativeWindowTransparencyEnabled = 0;
+ extra->topextra->noSystemRotationDisabled = noSystemRotationDisabled;
}
}
@@ -1004,6 +1019,7 @@ void QWidgetPrivate::createTLSysExtra()
extra->topextra->inExpose = 0;
extra->topextra->nativeWindowTransparencyEnabled = 0;
extra->topextra->forcedToRaster = 0;
+ extra->topextra->noSystemRotationDisabled = 0;
}
void QWidgetPrivate::deleteTLSysExtra()
diff --git a/src/gui/painting/qgraphicssystemex_symbian.cpp b/src/gui/painting/qgraphicssystemex_symbian.cpp
index 4469704..32e040f 100644
--- a/src/gui/painting/qgraphicssystemex_symbian.cpp
+++ b/src/gui/painting/qgraphicssystemex_symbian.cpp
@@ -46,31 +46,108 @@
#include <e32property.h>
+#ifdef Q_SYMBIAN_SUPPORTS_SURFACES
+#include "private/qegl_p.h"
+#endif
+
QT_BEGIN_NAMESPACE
static bool bcm2727Initialized = false;
static bool bcm2727 = false;
+#ifdef Q_SYMBIAN_SUPPORTS_SURFACES
+typedef EGLBoolean (*NOK_resource_profiling)(EGLDisplay, EGLint, EGLint*, EGLint, EGLint*);
+#define EGL_PROF_TOTAL_MEMORY_NOK 0x3070
+#endif
+
+// Detect if Qt is running on BCM2727 chip.
+// BCM2727 is a special case on Symbian because
+// it has only 32MB GPU memory which exposes
+// significant limitations to hw accelerated UI.
bool QSymbianGraphicsSystemEx::hasBCM2727()
{
if (bcm2727Initialized)
return bcm2727;
- const TUid KIvePropertyCat = {0x2726beef};
- enum TIvePropertyChipType {
- EVCBCM2727B1 = 0x00000000,
- EVCBCM2763A0 = 0x04000100,
- EVCBCM2763B0 = 0x04000102,
- EVCBCM2763C0 = 0x04000103,
- EVCBCM2763C1 = 0x04000104,
- EVCBCMUnknown = 0x7fffffff
- };
-
- TInt chipType = EVCBCMUnknown;
- if (RProperty::Get(KIvePropertyCat, 0, chipType) == KErrNone) {
- if (chipType == EVCBCM2727B1)
+#ifdef Q_SYMBIAN_SUPPORTS_SURFACES
+ EGLDisplay display = QEgl::display();
+#if 1
+ // Hacky but fast ~0ms.
+ const char* vendor = eglQueryString(display, EGL_VENDOR);
+ if (strstr(vendor, "Broadcom")) {
+ const TUid KIvePropertyCat = {0x2726beef};
+ enum TIvePropertyChipType {
+ EVCBCM2727B1 = 0x00000000,
+ EVCBCM2763A0 = 0x04000100,
+ EVCBCM2763B0 = 0x04000102,
+ EVCBCM2763C0 = 0x04000103,
+ EVCBCM2763C1 = 0x04000104,
+ EVCBCMUnknown = 0x7fffffff
+ };
+
+ // Broadcom driver publishes KIvePropertyCat PS key on
+ // devices which are running on BCM2727 chip and post Anna Symbian.
+ TInt chipType = EVCBCMUnknown;
+ if (RProperty::Get(KIvePropertyCat, 0, chipType) == KErrNone) {
+ if (chipType == EVCBCM2727B1)
+ bcm2727 = true;
+ } else if (QSysInfo::symbianVersion() <= QSysInfo::SV_SF_3) {
+ // Device is running on Symbian Anna or older Symbian^3 in which
+ // KIvePropertyCat is not published. These ones are always 32MB devices.
+ bcm2727 = true;
+ } else {
+ // We have some other Broadcom chip on post Anna Symbian.
+ // Should have > 32MB GPU memory.
+ }
+ }
+#else
+ // Fool proof but takes 15-20ms and we don't want this delay on app startup...
+
+ // All devices with <= 32MB GPU memory should be
+ // dealed in similar manner to BCM2727
+ // So let's query max GPU memory amount.
+ NOK_resource_profiling eglQueryProfilingData = (NOK_resource_profiling)eglGetProcAddress("eglQueryProfilingDataNOK");
+ if (eglQueryProfilingData) {
+ EGLint dataCount;
+ eglQueryProfilingData(display,
+ EGL_PROF_QUERY_GLOBAL_BIT_NOK |
+ EGL_PROF_QUERY_MEMORY_USAGE_BIT_NOK,
+ NULL,
+ 0,
+ (EGLint*)&dataCount);
+
+ // Allocate room for the profiling data
+ EGLint* profData = (EGLint*)malloc(dataCount * sizeof(EGLint));
+ memset(profData,0,dataCount * sizeof(EGLint));
+
+ // Retrieve the profiling data
+ eglQueryProfilingData(display,
+ EGL_PROF_QUERY_GLOBAL_BIT_NOK |
+ EGL_PROF_QUERY_MEMORY_USAGE_BIT_NOK,
+ profData,
+ dataCount,
+ (EGLint*)&dataCount);
+
+ int totalMemory;
+ EGLint i = 0;
+ while (profData && i < dataCount) {
+ switch (profData[i++]) {
+ case EGL_PROF_TOTAL_MEMORY_NOK:
+ totalMemory = profData[i++];
+ break;
+ default:
+ i++;
+ }
+ }
+
+ // ok, hasBCM2727() naming is a bit misleading but Qt must
+ // behave the same on all chips like BCM2727 (<= 32MB GPU memory)
+ // and our code (and others) are already using this function.
+ if (totalMemory <= 33554432)
bcm2727 = true;
}
+#endif
+#endif // Q_SYMBIAN_SUPPORTS_SURFACES
bcm2727Initialized = true;
@@ -80,7 +157,9 @@ bool QSymbianGraphicsSystemEx::hasBCM2727()
void QSymbianGraphicsSystemEx::releaseCachedGpuResources()
{
// Do nothing here
- // This is implemented in graphics system specific plugin
+
+ // This virtual function should be implemented in graphics system specific
+ // plugin
}
void QSymbianGraphicsSystemEx::releaseAllGpuResources()
diff --git a/src/gui/painting/qwindowsurface_raster.cpp b/src/gui/painting/qwindowsurface_raster.cpp
index 15ff044..2a25bff 100644
--- a/src/gui/painting/qwindowsurface_raster.cpp
+++ b/src/gui/painting/qwindowsurface_raster.cpp
@@ -254,8 +254,9 @@ void QRasterWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoi
} else
#endif
{
+ int depth = widget->x11Info().depth();
const QImage &src = d->image->image;
- if (src.format() != QImage::Format_RGB32 || widget->x11Info().depth() < 24) {
+ if (src.format() != QImage::Format_RGB32 || depth < 24 || X11->bppForDepth.value(depth) != 32) {
Q_ASSERT(src.depth() >= 16);
const QImage sub_src(src.scanLine(br.y()) + br.x() * (uint(src.depth()) / 8),
br.width(), br.height(), src.bytesPerLine(), src.format());
@@ -267,7 +268,7 @@ void QRasterWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoi
} else {
// qpaintengine_x11.cpp
extern void qt_x11_drawImage(const QRect &rect, const QPoint &pos, const QImage &image, Drawable hd, GC gc, Display *dpy, Visual *visual, int depth);
- qt_x11_drawImage(br, wpos, src, widget->handle(), d_ptr->gc, X11->display, (Visual *)widget->x11Info().visual(), widget->x11Info().depth());
+ qt_x11_drawImage(br, wpos, src, widget->handle(), d_ptr->gc, X11->display, (Visual *)widget->x11Info().visual(), depth);
}
}
diff --git a/src/gui/styles/qstylefactory.cpp b/src/gui/styles/qstylefactory.cpp
index 83b6748..de693db 100644
--- a/src/gui/styles/qstylefactory.cpp
+++ b/src/gui/styles/qstylefactory.cpp
@@ -225,12 +225,12 @@ QStringList QStyleFactory::keys()
#endif
#ifndef QT_NO_STYLE_WINDOWSXP
if (!list.contains(QLatin1String("WindowsXP")) &&
- (QSysInfo::WindowsVersion >= QSysInfo::WV_XP && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ (QSysInfo::WindowsVersion >= QSysInfo::WV_XP && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
list << QLatin1String("WindowsXP");
#endif
#ifndef QT_NO_STYLE_WINDOWSVISTA
if (!list.contains(QLatin1String("WindowsVista")) &&
- (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based))
+ (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)))
list << QLatin1String("WindowsVista");
#endif
#ifndef QT_NO_STYLE_MOTIF
diff --git a/src/gui/styles/qwindowsstyle.cpp b/src/gui/styles/qwindowsstyle.cpp
index 9732c7e..342c4c6 100644
--- a/src/gui/styles/qwindowsstyle.cpp
+++ b/src/gui/styles/qwindowsstyle.cpp
@@ -125,7 +125,7 @@ QWindowsStylePrivate::QWindowsStylePrivate()
{
#if defined(Q_WS_WIN) && !defined(Q_OS_WINCE)
if ((QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)) {
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))) {
QSystemLibrary shellLib(QLatin1String("shell32"));
pSHGetStockIconInfo = (PtrSHGetStockIconInfo)shellLib.resolve("SHGetStockIconInfo");
}
@@ -1058,7 +1058,7 @@ QPixmap QWindowsStyle::standardPixmap(StandardPixmap standardPixmap, const QStyl
case SP_VistaShield:
{
if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)
&& pSHGetStockIconInfo)
{
QPixmap pixmap;
@@ -1200,7 +1200,7 @@ int QWindowsStyle::styleHint(StyleHint hint, const QStyleOption *opt, const QWid
case SH_LineEdit_PasswordCharacter:
{
#ifdef Q_WS_WIN
- if (widget && (QSysInfo::WindowsVersion >= QSysInfo::WV_XP && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)) {
+ if (widget && (QSysInfo::WindowsVersion >= QSysInfo::WV_XP && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))) {
const QFontMetrics &fm = widget->fontMetrics();
if (fm.inFont(QChar(0x25CF)))
ret = 0x25CF;
@@ -3362,7 +3362,7 @@ QIcon QWindowsStyle::standardIconImplementation(StandardPixmap standardIcon, con
case SP_VistaShield:
{
if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA
- && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based
+ && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)
&& pSHGetStockIconInfo)
{
icon.addPixmap(proxy()->standardPixmap(SP_VistaShield, option, widget)); //fetches small icon
diff --git a/src/gui/styles/qwindowsvistastyle.cpp b/src/gui/styles/qwindowsvistastyle.cpp
index b894eb4..997d429 100644
--- a/src/gui/styles/qwindowsvistastyle.cpp
+++ b/src/gui/styles/qwindowsvistastyle.cpp
@@ -140,7 +140,7 @@ bool QWindowsVistaStylePrivate::useVista()
{
return (QWindowsVistaStylePrivate::useXP() &&
(QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA &&
- QSysInfo::WindowsVersion < QSysInfo::WV_NT_based));
+ (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)));
}
/*!
diff --git a/src/gui/styles/qwindowsxpstyle.cpp b/src/gui/styles/qwindowsxpstyle.cpp
index 3c33df3..343f262 100644
--- a/src/gui/styles/qwindowsxpstyle.cpp
+++ b/src/gui/styles/qwindowsxpstyle.cpp
@@ -791,7 +791,7 @@ void QWindowsXPStylePrivate::drawBackgroundThruNativeBuffer(XPThemeData &themeDa
inspectData = (tmt_transparentcolor != 0 || tmt_borderonly || proporigin == PO_PART || proporigin == PO_STATE);
// ### This is a vista-specific workaround for broken alpha in titlebar pixmaps
- if ((QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)) {
+ if ((QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))) {
if (themeData.partId == WP_CAPTION || themeData.partId == WP_SMALLCAPTION)
inspectData = false;
}
diff --git a/src/gui/text/qfontengine_ft.cpp b/src/gui/text/qfontengine_ft.cpp
index e20aa25..d00a048 100644
--- a/src/gui/text/qfontengine_ft.cpp
+++ b/src/gui/text/qfontengine_ft.cpp
@@ -801,7 +801,7 @@ int QFontEngineFT::loadFlags(QGlyphSet *set, GlyphFormat format, int flags,
if (set && set->outline_drawing)
load_flags = FT_LOAD_NO_BITMAP;
- if (default_hint_style == HintNone || (flags & HB_ShaperFlag_UseDesignMetrics) || set->outline_drawing)
+ if (default_hint_style == HintNone || (flags & HB_ShaperFlag_UseDesignMetrics) || (set && set->outline_drawing))
load_flags |= FT_LOAD_NO_HINTING;
else
load_flags |= load_target;
diff --git a/src/gui/widgets/qdialogbuttonbox.cpp b/src/gui/widgets/qdialogbuttonbox.cpp
index 6c29141..e6842b3 100644
--- a/src/gui/widgets/qdialogbuttonbox.cpp
+++ b/src/gui/widgets/qdialogbuttonbox.cpp
@@ -94,6 +94,7 @@ QT_BEGIN_NAMESPACE
specifying their role.
\snippet examples/dialogs/extension/finddialog.cpp 1
+ \snippet examples/dialogs/extension/finddialog.cpp 6
Alternatively, QDialogButtonBox provides several standard buttons (e.g. OK, Cancel, Save)
that you can use. They exist as flags so you can OR them together in the constructor.
diff --git a/src/gui/widgets/qlinecontrol.cpp b/src/gui/widgets/qlinecontrol.cpp
index d58da37..0af2e59 100644
--- a/src/gui/widgets/qlinecontrol.cpp
+++ b/src/gui/widgets/qlinecontrol.cpp
@@ -445,6 +445,8 @@ void QLineControl::moveCursor(int pos, bool mark)
void QLineControl::processInputMethodEvent(QInputMethodEvent *event)
{
int priorState = 0;
+ int originalSelectionStart = m_selstart;
+ int originalSelectionEnd = m_selend;
bool isGettingInput = !event->commitString().isEmpty()
|| event->preeditString() != preeditAreaText()
|| event->replacementLength() > 0;
@@ -523,6 +525,8 @@ void QLineControl::processInputMethodEvent(QInputMethodEvent *event)
}
m_textLayout.setAdditionalFormats(formats);
updateDisplayText(/*force*/ true);
+ if (originalSelectionStart != m_selstart || originalSelectionEnd != m_selend)
+ emit selectionChanged();
if (cursorPositionChanged)
emitCursorPositionChanged();
else if (m_preeditCursor != oldPreeditCursor)
diff --git a/src/gui/widgets/qtoolbar.cpp b/src/gui/widgets/qtoolbar.cpp
index e0e8ce6..c7ae73f 100644
--- a/src/gui/widgets/qtoolbar.cpp
+++ b/src/gui/widgets/qtoolbar.cpp
@@ -440,7 +440,7 @@ void QToolBarPrivate::plug(const QRect &r)
pop up a menu containing the items that does not currently fit in
the toolbar.
- When a QToolBar is not a child of a QMainWindow, it looses the ability
+ When a QToolBar is not a child of a QMainWindow, it loses the ability
to populate the extension pop up with widgets added to the toolbar using
addWidget(). Please use widget actions created by inheriting QWidgetAction
and implementing QWidgetAction::createWidget() instead.
diff --git a/src/network/access/qnetworkaccessbackend_p.h b/src/network/access/qnetworkaccessbackend_p.h
index ff05306..7f6aff9 100644
--- a/src/network/access/qnetworkaccessbackend_p.h
+++ b/src/network/access/qnetworkaccessbackend_p.h
@@ -110,9 +110,7 @@ public:
// socket).
virtual void open() = 0;
-#ifndef QT_NO_BEARERMANAGEMENT
virtual bool start();
-#endif
virtual void closeDownstreamChannel() = 0;
// slot-like:
diff --git a/src/network/access/qnetworkcookie.cpp b/src/network/access/qnetworkcookie.cpp
index 0670738..a9bb318 100644
--- a/src/network/access/qnetworkcookie.cpp
+++ b/src/network/access/qnetworkcookie.cpp
@@ -372,7 +372,7 @@ static QPair<QByteArray, QByteArray> nextField(const QByteArray &text, int &posi
// parse the first part, before the equal sign
for (i = position; i < length; ++i) {
register char c = text.at(i);
- if (c == ';' || c == ',' || c == '=')
+ if (c == ';' || c == '=')
break;
}
@@ -423,7 +423,7 @@ static QPair<QByteArray, QByteArray> nextField(const QByteArray &text, int &posi
for ( ; i < length; ++i) {
register char c = text.at(i);
- if (c == ',' || c == ';')
+ if (c == ';')
break;
}
position = i;
@@ -434,7 +434,7 @@ static QPair<QByteArray, QByteArray> nextField(const QByteArray &text, int &posi
register char c = text.at(i);
// for name value pairs, we want to parse until reaching the next ';'
// and not break when reaching a space char
- if (c == ',' || c == ';' || ((isNameValue && (c == '\n' || c == '\r')) || (!isNameValue && isLWS(c))))
+ if (c == ';' || ((isNameValue && (c == '\n' || c == '\r')) || (!isNameValue && isLWS(c))))
break;
}
@@ -461,8 +461,7 @@ static QPair<QByteArray, QByteArray> nextField(const QByteArray &text, int &posi
\value Full makes toRawForm() return the full
cookie contents, as suitable for sending to a client in a
- server's "Set-Cookie:" header. Multiple cookies are separated
- by commas in a "Set-Cookie:" header.
+ server's "Set-Cookie:" header.
Note that only the Full form of the cookie can be parsed back into
its original contents.
@@ -488,7 +487,6 @@ QByteArray QNetworkCookie::toRawForm(RawForm form) const
result = d->name;
result += '=';
if ((d->value.contains(';') ||
- d->value.contains(',') ||
d->value.contains('"')) &&
(!d->value.startsWith('"') &&
!d->value.endsWith('"'))) {
@@ -967,14 +965,8 @@ QList<QNetworkCookie> QNetworkCookiePrivate::parseSetCookieHeaderLine(const QByt
cookie.setValue(field.second);
position = nextNonWhitespace(cookieString, position);
- bool endOfCookie = false;
- while (!endOfCookie && position < length) {
+ while (position < length) {
switch (cookieString.at(position++)) {
- case ',':
- // end of the cookie
- endOfCookie = true;
- break;
-
case ';':
// new field in the cookie
field = nextField(cookieString, position, false);
diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp
index 0b568d4..6f2daec 100644
--- a/src/network/access/qnetworkreplyimpl.cpp
+++ b/src/network/access/qnetworkreplyimpl.cpp
@@ -471,6 +471,7 @@ bool QNetworkReplyImplPrivate::isCachingEnabled() const
void QNetworkReplyImplPrivate::setCachingEnabled(bool enable)
{
+ Q_Q(QNetworkReplyImpl);
if (!enable && !cacheEnabled)
return; // nothing to do
if (enable && cacheEnabled)
@@ -493,15 +494,27 @@ void QNetworkReplyImplPrivate::setCachingEnabled(bool enable)
networkCache()->remove(url);
cacheSaveDevice = 0;
cacheEnabled = false;
+ QObject::disconnect(networkCache(), SIGNAL(destroyed()), q, SLOT(_q_cacheDestroyed()));
}
}
+void QNetworkReplyImplPrivate::_q_cacheDestroyed()
+{
+ //destruction of cache invalidates cacheSaveDevice
+ cacheSaveDevice = 0;
+ cacheEnabled = false;
+}
+
void QNetworkReplyImplPrivate::completeCacheSave()
{
- if (cacheEnabled && errorCode != QNetworkReplyImpl::NoError) {
- networkCache()->remove(url);
- } else if (cacheEnabled && cacheSaveDevice) {
- networkCache()->insert(cacheSaveDevice);
+ Q_Q(QNetworkReplyImpl);
+ if (cacheEnabled) {
+ if (errorCode != QNetworkReplyImpl::NoError) {
+ networkCache()->remove(url);
+ } else if (cacheSaveDevice) {
+ networkCache()->insert(cacheSaveDevice);
+ }
+ QObject::disconnect(networkCache(), SIGNAL(destroyed()), q, SLOT(_q_cacheDestroyed()));
}
cacheSaveDevice = 0;
cacheEnabled = false;
@@ -561,6 +574,8 @@ void QNetworkReplyImplPrivate::initCacheSaveDevice()
networkCache()->remove(url);
cacheSaveDevice = 0;
cacheEnabled = false;
+ } else {
+ q->connect(networkCache(), SIGNAL(destroyed()), SLOT(_q_cacheDestroyed()));
}
}
diff --git a/src/network/access/qnetworkreplyimpl_p.h b/src/network/access/qnetworkreplyimpl_p.h
index 089c87e..286d8ea 100644
--- a/src/network/access/qnetworkreplyimpl_p.h
+++ b/src/network/access/qnetworkreplyimpl_p.h
@@ -104,6 +104,7 @@ public:
Q_PRIVATE_SLOT(d_func(), void _q_networkSessionConnected())
Q_PRIVATE_SLOT(d_func(), void _q_networkSessionFailed())
#endif
+ Q_PRIVATE_SLOT(d_func(), void _q_cacheDestroyed())
};
class QNetworkReplyImplPrivate: public QNetworkReplyPrivate
@@ -140,6 +141,7 @@ public:
void _q_networkSessionConnected();
void _q_networkSessionFailed();
#endif
+ void _q_cacheDestroyed();
void setup(QNetworkAccessManager::Operation op, const QNetworkRequest &request,
QIODevice *outgoingData);
diff --git a/src/network/kernel/qhostinfo_win.cpp b/src/network/kernel/qhostinfo_win.cpp
index 6fc5b7b..1052863 100644
--- a/src/network/kernel/qhostinfo_win.cpp
+++ b/src/network/kernel/qhostinfo_win.cpp
@@ -97,14 +97,15 @@ static void resolveLibrary()
#if defined(Q_OS_WINCE)
#include <qmutex.h>
-QMutex qPrivCEMutex;
+Q_GLOBAL_STATIC(QMutex, qPrivCEMutex)
#endif
QHostInfo QHostInfoAgent::fromName(const QString &hostName)
{
#if defined(Q_OS_WINCE)
- QMutexLocker locker(&qPrivCEMutex);
+ QMutexLocker locker(qPrivCEMutex());
#endif
+
QWindowsSockInit winSock;
// Load res_init on demand.
diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp
index cedccaa..423fa08 100644
--- a/src/opengl/qgl.cpp
+++ b/src/opengl/qgl.cpp
@@ -103,6 +103,7 @@
#ifdef Q_OS_SYMBIAN
#include <private/qgltexturepool_p.h>
+#include <private/qeglcontext_p.h>
#endif
// #define QT_GL_CONTEXT_RESOURCE_DEBUG
@@ -3432,8 +3433,25 @@ const QGLContext* QGLContext::currentContext()
return 0;
#else
QGLThreadContext *threadContext = qgl_context_storage.localData();
- if (threadContext)
+ if (threadContext) {
+#ifdef Q_OS_SYMBIAN
+ // Query the current context and return null if it is different.
+ // This is needed to support mixed VG-GL rendering.
+ // QtOpenVG is free to make a QEglContext current at any time and
+ // QGLContext gets no notification that its underlying QEglContext is
+ // not current anymore. We query directly from EGL to be thread-safe.
+ // QEglContext does not store all the contexts per-thread.
+ if (threadContext->context) {
+ QEglContext *eglcontext = threadContext->context->d_func()->eglContext;
+ if (eglcontext) {
+ EGLContext ctx = eglcontext->context();
+ if (ctx != eglGetCurrentContext())
+ return 0;
+ }
+ }
+#endif
return threadContext->context;
+ }
return 0;
#endif //Q_WS_QPA
}
diff --git a/src/sql/drivers/symsql/qsql_symsql.cpp b/src/sql/drivers/symsql/qsql_symsql.cpp
index 4ceac9b..f34212c 100644
--- a/src/sql/drivers/symsql/qsql_symsql.cpp
+++ b/src/sql/drivers/symsql/qsql_symsql.cpp
@@ -217,7 +217,7 @@ void QSymSQLResultPrivate::initColumns(QSqlRecord& rec)
int nCols = stmt.ColumnCount();
if (nCols <= 0) {
q->setLastError(qMakeError(access, QCoreApplication::translate("QSymSQLResult",
- "Error retreving column count"), QSqlError::UnknownError, nCols));
+ "Error retrieving column count"), QSqlError::UnknownError, nCols));
return;
}
@@ -227,7 +227,7 @@ void QSymSQLResultPrivate::initColumns(QSqlRecord& rec)
if (err != KErrNone) {
q->setLastError(qMakeError(access, QCoreApplication::translate("QSymSQLResult",
- "Error retreving column name"), QSqlError::UnknownError, err));
+ "Error retrieving column name"), QSqlError::UnknownError, err));
return;
}
@@ -240,7 +240,7 @@ void QSymSQLResultPrivate::initColumns(QSqlRecord& rec)
if (err != KErrNone) {
q->setLastError(qMakeError(access, QCoreApplication::translate("QSymSQLResult",
- "Error retreving column type"), QSqlError::UnknownError, err));
+ "Error retrieving column type"), QSqlError::UnknownError, err));
return;
}
diff --git a/src/xmlpatterns/parser/qquerytransformparser.cpp b/src/xmlpatterns/parser/qquerytransformparser.cpp
index c9801c8..2528746 100644
--- a/src/xmlpatterns/parser/qquerytransformparser.cpp
+++ b/src/xmlpatterns/parser/qquerytransformparser.cpp
@@ -4561,7 +4561,7 @@ yyreduce:
{
parseInfo->staticContext->error(QtXmlPatterns::tr("The namespace for a user defined function "
"cannot be empty (try the predefined "
- "prefix %1 which exists for cases "
+ "prefix %1, which exists for cases "
"like this)")
.arg(formatKeyword("local")),
ReportContext::XQST0060, fromYYLTYPE((yyloc), parseInfo));
diff --git a/src/xmlpatterns/schema/qxsdschemaresolver.cpp b/src/xmlpatterns/schema/qxsdschemaresolver.cpp
index 29c9f5a..2549f5f 100644
--- a/src/xmlpatterns/schema/qxsdschemaresolver.cpp
+++ b/src/xmlpatterns/schema/qxsdschemaresolver.cpp
@@ -854,7 +854,7 @@ void XsdSchemaResolver::resolveComplexContentComplexTypes(const XsdComplexType::
group->setCompositor(XsdModelGroup::SequenceCompositor);
if (effectiveContent && effectiveContent->term()->isModelGroup() && XsdModelGroup::Ptr(effectiveContent->term())->compositor() == XsdModelGroup::AllCompositor) {
- m_context->error(QtXmlPatterns::tr("Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type.")
+ m_context->error(QtXmlPatterns::tr("Content model of complex type %1 contains %2 element, so it cannot be derived by extension from a non-empty type.")
.arg(formatType(m_namePool, complexType)).arg(formatKeyword("all")), XsdSchemaContext::XSDError, sourceLocation(complexType));
return;
}
diff --git a/src/xmlpatterns/schema/qxsdvalidatinginstancereader.cpp b/src/xmlpatterns/schema/qxsdvalidatinginstancereader.cpp
index 80c95c1..22d5d22 100644
--- a/src/xmlpatterns/schema/qxsdvalidatinginstancereader.cpp
+++ b/src/xmlpatterns/schema/qxsdvalidatinginstancereader.cpp
@@ -699,7 +699,7 @@ bool XsdValidatingInstanceReader::validateElementComplexType(const XsdElement::P
if (complexType->contentType()->variety() == XsdComplexType::ContentType::Mixed) {
if (declaration->valueConstraint() && declaration->valueConstraint()->variety() == XsdElement::ValueConstraint::Fixed) {
if (hasChildElement()) {
- error(QtXmlPatterns::tr("Element %1 cannot contain other elements, as it has a fixed content.").arg(formatKeyword(declaration->displayName(m_namePool))));
+ error(QtXmlPatterns::tr("Element %1 cannot contain other elements, as it has fixed content.").arg(formatKeyword(declaration->displayName(m_namePool))));
return false;
}
diff --git a/tests/auto/declarative/declarative.pro b/tests/auto/declarative/declarative.pro
index 72c32cb..08d59d3 100644
--- a/tests/auto/declarative/declarative.pro
+++ b/tests/auto/declarative/declarative.pro
@@ -39,6 +39,7 @@ contains(QT_CONFIG, private_tests) {
qdeclarativedebug \
qdeclarativedebugclient \
qdeclarativedebugservice \
+ qdeclarativedebugjs \
qdeclarativedom \
qdeclarativeecmascript \
qdeclarativeflickable \
diff --git a/tests/auto/declarative/qdeclarativedebug/qdeclarativedebug.pro b/tests/auto/declarative/qdeclarativedebug/qdeclarativedebug.pro
index 1214fcf..d488b53 100644
--- a/tests/auto/declarative/qdeclarativedebug/qdeclarativedebug.pro
+++ b/tests/auto/declarative/qdeclarativedebug/qdeclarativedebug.pro
@@ -6,5 +6,5 @@ HEADERS += ../shared/debugutil_p.h
SOURCES += tst_qdeclarativedebug.cpp \
../shared/debugutil.cpp
-CONFIG += parallel_test
+CONFIG += parallel_test declarative_debug
diff --git a/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp b/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp
index 9c20bd6..be9b402 100644
--- a/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp
+++ b/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp
@@ -52,14 +52,12 @@
#include <QtDeclarative/qdeclarativeproperty.h>
#include <private/qdeclarativebinding_p.h>
-#include <private/qdeclarativedebug_p.h>
#include <private/qdeclarativeenginedebug_p.h>
#include <private/qdeclarativedebugclient_p.h>
#include <private/qdeclarativedebugservice_p.h>
#include <private/qdeclarativerectangle_p.h>
#include <private/qdeclarativemetatype_p.h>
#include <private/qdeclarativeproperty_p.h>
-#include <private/qdeclarativedebughelper_p.h>
#include "../../../shared/util.h"
#include "../shared/debugutil_p.h"
@@ -296,9 +294,6 @@ void tst_QDeclarativeDebug::initTestCase()
qRegisterMetaType<QDeclarativeDebugWatch::State>();
qmlRegisterType<NonScriptProperty>("Test", 1, 0, "NonScriptPropertyElement");
- QTest::ignoreMessage(QtWarningMsg, "Qml debugging is enabled. Only use this in a safe environment!");
- QDeclarativeDebugHelper::enableDebugging();
-
QTest::ignoreMessage(QtWarningMsg, "QDeclarativeDebugServer: Waiting for connection on port 3768...");
m_engine = new QDeclarativeEngine(this);
diff --git a/tests/auto/declarative/qdeclarativedebugclient/qdeclarativedebugclient.pro b/tests/auto/declarative/qdeclarativedebugclient/qdeclarativedebugclient.pro
index a3afd99..8fa87d2 100644
--- a/tests/auto/declarative/qdeclarativedebugclient/qdeclarativedebugclient.pro
+++ b/tests/auto/declarative/qdeclarativedebugclient/qdeclarativedebugclient.pro
@@ -5,3 +5,5 @@ macx:CONFIG -= app_bundle
HEADERS += ../shared/debugutil_p.h
SOURCES += tst_qdeclarativedebugclient.cpp \
../shared/debugutil.cpp
+
+CONFIG += declarative_debug
diff --git a/tests/auto/declarative/qdeclarativedebugclient/tst_qdeclarativedebugclient.cpp b/tests/auto/declarative/qdeclarativedebugclient/tst_qdeclarativedebugclient.cpp
index d41cfa3..4846d67 100644
--- a/tests/auto/declarative/qdeclarativedebugclient/tst_qdeclarativedebugclient.cpp
+++ b/tests/auto/declarative/qdeclarativedebugclient/tst_qdeclarativedebugclient.cpp
@@ -47,11 +47,7 @@
#include <QtDeclarative/qdeclarativeengine.h>
-#include <private/qdeclarativedebug_p.h>
-#include <private/qdeclarativeenginedebug_p.h>
#include <private/qdeclarativedebugclient_p.h>
-#include <private/qdeclarativedebugservice_p.h>
-#include <private/qdeclarativedebughelper_p.h>
#include "../../../shared/util.h"
#include "../shared/debugutil_p.h"
@@ -73,9 +69,6 @@ private slots:
void tst_QDeclarativeDebugClient::initTestCase()
{
- QTest::ignoreMessage(QtWarningMsg, "Qml debugging is enabled. Only use this in a safe environment!");
- QDeclarativeDebugHelper::enableDebugging();
-
QTest::ignoreMessage(QtWarningMsg, "QDeclarativeDebugServer: Waiting for connection on port 13770...");
new QDeclarativeEngine(this);
diff --git a/tests/auto/declarative/qdeclarativedebugjs/app/app.pro b/tests/auto/declarative/qdeclarativedebugjs/app/app.pro
index 800c033..d1c0cdd 100644
--- a/tests/auto/declarative/qdeclarativedebugjs/app/app.pro
+++ b/tests/auto/declarative/qdeclarativedebugjs/app/app.pro
@@ -1,6 +1,7 @@
TEMPLATE = app
QT += declarative
+CONFIG += declarative_debug
CONFIG += console
CONFIG -= app_bundle
diff --git a/tests/auto/declarative/qdeclarativedebugjs/app/main.cpp b/tests/auto/declarative/qdeclarativedebugjs/app/main.cpp
index f5b830e..fe58502 100644
--- a/tests/auto/declarative/qdeclarativedebugjs/app/main.cpp
+++ b/tests/auto/declarative/qdeclarativedebugjs/app/main.cpp
@@ -44,13 +44,10 @@
#include <QDeclarativeComponent>
#include <QDeclarativeEngine>
#include <QStringList>
-#include <QtDeclarative/private/qdeclarativedebughelper_p.h>
#include <QtDeclarative/private/qdeclarativedebugservice_p.h>
int main(int argc, char *argv[])
{
- QDeclarativeDebugHelper::enableDebugging();
-
QApplication app(argc, argv);
const QUrl path = QUrl::fromLocalFile(app.arguments().last());
diff --git a/tests/auto/declarative/qdeclarativedebugjs/tst_qdeclarativedebugjs.cpp b/tests/auto/declarative/qdeclarativedebugjs/tst_qdeclarativedebugjs.cpp
index 1990c0d..bad7b8f 100644
--- a/tests/auto/declarative/qdeclarativedebugjs/tst_qdeclarativedebugjs.cpp
+++ b/tests/auto/declarative/qdeclarativedebugjs/tst_qdeclarativedebugjs.cpp
@@ -43,7 +43,6 @@
#include <QtDeclarative/QDeclarativeEngine>
#include <QtDeclarative/private/qdeclarativedebugclient_p.h>
#include <QtDeclarative/private/qdeclarativedebugservice_p.h>
-#include <QtDeclarative/private/qdeclarativedebug_p.h>
#include <QtDeclarative/private/qjsdebuggeragent_p.h>
#include <QtCore/QFileInfo>
#include <QtCore/QDir>
@@ -1431,8 +1430,10 @@ void tst_QDeclarativeDebugJS::testCoverageRun()
client.startCoverageRun();
client.startCoverageCompleted();
- QVERIFY(QDeclarativeDebugTest::waitForSignal(&client, SIGNAL(coverageScriptLoaded())));
- QVERIFY(QDeclarativeDebugTest::waitForSignal(&client, SIGNAL(coveragePosChanged())));
+
+ // The app might get "COVERAGE false" before anything is actually executed
+ //QVERIFY(QDeclarativeDebugTest::waitForSignal(&client, SIGNAL(coverageScriptLoaded())));
+ //QVERIFY(QDeclarativeDebugTest::waitForSignal(&client, SIGNAL(coveragePosChanged())));
//QVERIFY(QDeclarativeDebugTest::waitForSignal(&client, SIGNAL(coverageFuncEntered())));
//QVERIFY(QDeclarativeDebugTest::waitForSignal(&client, SIGNAL(coverageFuncExited())));
}
diff --git a/tests/auto/declarative/qdeclarativedebugservice/qdeclarativedebugservice.pro b/tests/auto/declarative/qdeclarativedebugservice/qdeclarativedebugservice.pro
index a62e148..ca5a398 100644
--- a/tests/auto/declarative/qdeclarativedebugservice/qdeclarativedebugservice.pro
+++ b/tests/auto/declarative/qdeclarativedebugservice/qdeclarativedebugservice.pro
@@ -6,5 +6,5 @@ HEADERS += ../shared/debugutil_p.h
SOURCES += tst_qdeclarativedebugservice.cpp \
../shared/debugutil.cpp
-CONFIG += parallel_test
+CONFIG += parallel_test declarative_debug
diff --git a/tests/auto/declarative/qdeclarativedebugservice/tst_qdeclarativedebugservice.cpp b/tests/auto/declarative/qdeclarativedebugservice/tst_qdeclarativedebugservice.cpp
index 3fa8bba..85d459b 100644
--- a/tests/auto/declarative/qdeclarativedebugservice/tst_qdeclarativedebugservice.cpp
+++ b/tests/auto/declarative/qdeclarativedebugservice/tst_qdeclarativedebugservice.cpp
@@ -46,10 +46,7 @@
#include <QThread>
#include <QtDeclarative/qdeclarativeengine.h>
-#include <private/qdeclarativedebughelper_p.h>
-#include <private/qdeclarativedebug_p.h>
-#include <private/qdeclarativeenginedebug_p.h>
#include <private/qdeclarativedebugclient_p.h>
#include <private/qdeclarativedebugservice_p.h>
@@ -76,9 +73,6 @@ private slots:
void tst_QDeclarativeDebugService::initTestCase()
{
- QTest::ignoreMessage(QtWarningMsg, "Qml debugging is enabled. Only use this in a safe environment!");
- QDeclarativeDebugHelper::enableDebugging();
-
QTest::ignoreMessage(QtWarningMsg, "QDeclarativeDebugServer: Waiting for connection on port 13769...");
new QDeclarativeEngine(this);
diff --git a/tests/auto/declarative/qdeclarativemoduleplugin/tst_qdeclarativemoduleplugin.cpp b/tests/auto/declarative/qdeclarativemoduleplugin/tst_qdeclarativemoduleplugin.cpp
index 2cc2971..96bea68 100644
--- a/tests/auto/declarative/qdeclarativemoduleplugin/tst_qdeclarativemoduleplugin.cpp
+++ b/tests/auto/declarative/qdeclarativemoduleplugin/tst_qdeclarativemoduleplugin.cpp
@@ -43,6 +43,7 @@
#include <QtDeclarative/qdeclarativeengine.h>
#include <QtDeclarative/qdeclarativecomponent.h>
#include <QDebug>
+#include <QtCore/qlibraryinfo.h>
#include "../shared/testhttpserver.h"
#include "../../../shared/util.h"
@@ -70,6 +71,7 @@ private slots:
void remoteImportWithUnquotedUri();
void versionNotInstalled();
void versionNotInstalled_data();
+ void importPath();
};
#ifdef Q_OS_SYMBIAN
@@ -308,6 +310,29 @@ void tst_qdeclarativemoduleplugin::versionNotInstalled()
VERIFY_ERRORS(errorFile.toLatin1().constData());
}
+void tst_qdeclarativemoduleplugin::importPath()
+{
+#ifndef Q_OS_SYMBIAN
+ QSKIP("Import path order testing for Symbian only", SkipAll);
+#else
+ QDeclarativeEngine engine;
+ QStringList imports = engine.importPathList();
+ QString installImportsPath = QDir::cleanPath(QLibraryInfo::location(QLibraryInfo::ImportsPath));
+ QString driveOrder(QLatin1String("ZABCDEFGHIJKLMNOPQRSTUVWXY"));
+ int lastOrder = 30;
+ foreach(QString import, imports)
+ {
+ if (import.endsWith(installImportsPath))
+ {
+ int order = driveOrder.indexOf(import[0]);
+ QVERIFY(order < lastOrder);
+ lastOrder = order;
+ }
+ }
+ QVERIFY(lastOrder != 30);
+#endif
+}
+
QTEST_MAIN(tst_qdeclarativemoduleplugin)
#include "tst_qdeclarativemoduleplugin.moc"
diff --git a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp
index 33f74a9..4d8bd0b 100644
--- a/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp
+++ b/tests/auto/declarative/qdeclarativetextedit/tst_qdeclarativetextedit.cpp
@@ -156,6 +156,7 @@ private slots:
void inputContextMouseHandler();
void inputMethodComposing();
void cursorRectangleSize();
+ void deselect();
private:
void simulateKey(QDeclarativeView *, int key, Qt::KeyboardModifiers modifiers = 0);
@@ -2699,6 +2700,120 @@ void tst_qdeclarativetextedit::cursorRectangleSize()
QCOMPARE(microFocusFromScene.size(), cursorRect.size());
QCOMPARE(microFocusFromApp.size(), cursorRect.size());
}
+
+void tst_qdeclarativetextedit::deselect()
+{
+ QDeclarativeView *canvas = createView(SRCDIR "/data/CursorRect.qml");
+ QVERIFY(canvas->rootObject() != 0);
+ canvas->show();
+ canvas->setFocus();
+ QApplication::setActiveWindow(canvas);
+ QTest::qWaitForWindowShown(canvas);
+
+ QDeclarativeTextEdit *textEdit = qobject_cast<QDeclarativeTextEdit *>(canvas->rootObject());
+ QVERIFY(textEdit != 0);
+
+ textEdit->setText("Select");
+
+ QSignalSpy selectionStartSpy(textEdit, SIGNAL(selectionStartChanged()));
+ QSignalSpy selectionEndSpy(textEdit, SIGNAL(selectionEndChanged()));
+ QSignalSpy selectionSpy(textEdit, SIGNAL(selectionChanged()));
+
+ textEdit->select(5, 6);
+
+ QCOMPARE(selectionStartSpy.count(), 1);
+ QCOMPARE(selectionEndSpy.count(), 1);
+ QCOMPARE(selectionSpy.count(), 1);
+ QCOMPARE(textEdit->selectionStart(), 5);
+ QCOMPARE(textEdit->selectionEnd(), 6);
+ QCOMPARE(textEdit->selectedText(), QLatin1String("t"));
+ QCOMPARE(textEdit->cursorPosition(), 6);
+
+ textEdit->deselect();
+
+ QCOMPARE(selectionStartSpy.count(), 2);
+ QCOMPARE(selectionEndSpy.count(), 1);
+ QCOMPARE(selectionSpy.count(), 2);
+ QCOMPARE(textEdit->selectionStart(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectionEnd(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectedText(), QLatin1String(""));
+ QCOMPARE(textEdit->cursorPosition(), 6);
+
+ textEdit->select(5, 6);
+
+ QCOMPARE(selectionStartSpy.count(), 3);
+ QCOMPARE(selectionEndSpy.count(), 1);
+ QCOMPARE(selectionSpy.count(), 3);
+ QCOMPARE(textEdit->selectionStart(), 5);
+ QCOMPARE(textEdit->selectionEnd(), 6);
+ QCOMPARE(textEdit->selectedText(), QLatin1String("t"));
+ QCOMPARE(textEdit->cursorPosition(), 6);
+
+ QKeyEvent leftArrowPress(QEvent::KeyPress, Qt::Key_Left, Qt::NoModifier);
+ QKeyEvent leftArrowRelese(QEvent::KeyRelease, Qt::Key_Left, Qt::NoModifier);
+ QApplication::sendEvent(canvas, &leftArrowPress);
+ QApplication::sendEvent(canvas, &leftArrowRelese);
+
+ QCOMPARE(selectionStartSpy.count(), 3);
+ QCOMPARE(selectionEndSpy.count(), 2);
+ QCOMPARE(selectionSpy.count(), 4);
+ QCOMPARE(textEdit->selectionStart(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectionEnd(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectedText(), QLatin1String(""));
+ QCOMPARE(textEdit->cursorPosition(), 5);
+
+ textEdit->select(5, 6);
+
+ QCOMPARE(selectionStartSpy.count(), 3);
+ QCOMPARE(selectionEndSpy.count(), 3);
+ QCOMPARE(selectionSpy.count(), 5);
+ QCOMPARE(textEdit->selectionStart(), 5);
+ QCOMPARE(textEdit->selectionEnd(), 6);
+ QCOMPARE(textEdit->selectedText(), QLatin1String("t"));
+ QCOMPARE(textEdit->cursorPosition(), 6);
+
+ QList<QInputMethodEvent::Attribute> attributes;
+ attributes << QInputMethodEvent::Attribute(QInputMethodEvent::Selection, 0, 0, QVariant());
+ QInputMethodEvent event(QLatin1String(""), attributes);
+ QApplication::sendEvent(canvas, &event);
+
+ QCOMPARE(selectionStartSpy.count(), 4);
+ QCOMPARE(selectionEndSpy.count(), 4);
+ QCOMPARE(selectionSpy.count(), 6);
+ QCOMPARE(textEdit->selectionStart(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectionEnd(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectedText(), QLatin1String(""));
+ QCOMPARE(textEdit->cursorPosition(), 0);
+
+ textEdit->setCursorPosition(1);
+
+ QCOMPARE(selectionStartSpy.count(), 5);
+ QCOMPARE(selectionEndSpy.count(), 5);
+ QCOMPARE(selectionSpy.count(), 6);
+
+ QKeyEvent leftArrowShiftPress(QEvent::KeyPress, Qt::Key_Left, Qt::ShiftModifier);
+ QKeyEvent leftArrowShiftRelese(QEvent::KeyRelease, Qt::Key_Left, Qt::ShiftModifier);
+ QApplication::sendEvent(canvas, &leftArrowShiftPress);
+ QApplication::sendEvent(canvas, &leftArrowShiftRelese);
+
+ QCOMPARE(selectionStartSpy.count(), 6);
+ QCOMPARE(selectionEndSpy.count(), 5);
+ QCOMPARE(selectionSpy.count(), 7);
+ QCOMPARE(textEdit->selectionStart(), 0);
+ QCOMPARE(textEdit->selectionEnd(), 1);
+ QCOMPARE(textEdit->selectedText(), QLatin1String("S"));
+ QCOMPARE(textEdit->cursorPosition(), 0);
+
+ QApplication::sendEvent(canvas, &event);
+
+ QCOMPARE(selectionStartSpy.count(), 6);
+ QCOMPARE(selectionEndSpy.count(), 6);
+ QCOMPARE(selectionSpy.count(), 8);
+ QCOMPARE(textEdit->selectionStart(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectionEnd(), textEdit->cursorPosition());
+ QCOMPARE(textEdit->selectedText(), QLatin1String(""));
+ QCOMPARE(textEdit->cursorPosition(), 0);
+}
QTEST_MAIN(tst_qdeclarativetextedit)
#include "tst_qdeclarativetextedit.moc"
diff --git a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp
index bb895bf..b077670 100644
--- a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp
+++ b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp
@@ -147,6 +147,7 @@ private slots:
void inputContextMouseHandler();
void inputMethodComposing();
void cursorRectangleSize();
+ void deselect();
private:
void simulateKey(QDeclarativeView *, int key);
@@ -2367,7 +2368,7 @@ void tst_qdeclarativetextinput::openInputPanelOnFocus()
QVERIFY(!view.testAttribute(Qt::WA_InputMethodEnabled));
// input method should not be enabled
- // if TextEdit is read only.
+ // if TextInput is read only.
input.setReadOnly(true);
ic.openInputPanelReceived = false;
input.setFocus(true);
@@ -2815,6 +2816,120 @@ void tst_qdeclarativetextinput::cursorRectangleSize()
QCOMPARE(microFocusFromApp.size(), cursorRect.size());
}
+void tst_qdeclarativetextinput::deselect()
+{
+ QDeclarativeView *canvas = createView(SRCDIR "/data/positionAt.qml");
+ QVERIFY(canvas->rootObject() != 0);
+ canvas->show();
+ canvas->setFocus();
+ QApplication::setActiveWindow(canvas);
+ QTest::qWaitForWindowShown(canvas);
+
+ QDeclarativeTextInput *textInput = qobject_cast<QDeclarativeTextInput *>(canvas->rootObject());
+ QVERIFY(textInput != 0);
+
+ textInput->setText("Select");
+
+ QSignalSpy selectionStartSpy(textInput, SIGNAL(selectionStartChanged()));
+ QSignalSpy selectionEndSpy(textInput, SIGNAL(selectionEndChanged()));
+ QSignalSpy selectedTextSpy(textInput, SIGNAL(selectedTextChanged()));
+
+ textInput->select(5, 6);
+
+ QCOMPARE(selectionStartSpy.count(), 1);
+ QCOMPARE(selectionEndSpy.count(), 0);
+ QCOMPARE(selectedTextSpy.count(), 1);
+ QCOMPARE(textInput->selectionStart(), 5);
+ QCOMPARE(textInput->selectionEnd(), 6);
+ QCOMPARE(textInput->selectedText(), QLatin1String("t"));
+ QCOMPARE(textInput->cursorPosition(), 6);
+
+ textInput->deselect();
+
+ QCOMPARE(selectionStartSpy.count(), 2);
+ QCOMPARE(selectionEndSpy.count(), 1);
+ QCOMPARE(selectedTextSpy.count(), 2);
+ QCOMPARE(textInput->selectionStart(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectionEnd(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectedText(), QLatin1String(""));
+ QCOMPARE(textInput->cursorPosition(), 6);
+
+ textInput->select(5, 6);
+
+ QCOMPARE(selectionStartSpy.count(), 3);
+ QCOMPARE(selectionEndSpy.count(), 1);
+ QCOMPARE(selectedTextSpy.count(), 3);
+ QCOMPARE(textInput->selectionStart(), 5);
+ QCOMPARE(textInput->selectionEnd(), 6);
+ QCOMPARE(textInput->selectedText(), QLatin1String("t"));
+ QCOMPARE(textInput->cursorPosition(), 6);
+
+ QKeyEvent leftArrowPress(QEvent::KeyPress, Qt::Key_Left, Qt::NoModifier);
+ QKeyEvent leftArrowRelese(QEvent::KeyRelease, Qt::Key_Left, Qt::NoModifier);
+ QApplication::sendEvent(canvas, &leftArrowPress);
+ QApplication::sendEvent(canvas, &leftArrowRelese);
+
+ QCOMPARE(selectionStartSpy.count(), 4);
+ QCOMPARE(selectionEndSpy.count(), 2);
+ QCOMPARE(selectedTextSpy.count(), 4);
+ QCOMPARE(textInput->selectionStart(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectionEnd(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectedText(), QLatin1String(""));
+ QCOMPARE(textInput->cursorPosition(), 5);
+
+ textInput->select(5, 6);
+
+ QCOMPARE(selectionStartSpy.count(), 4);
+ QCOMPARE(selectionEndSpy.count(), 3);
+ QCOMPARE(selectedTextSpy.count(), 5);
+ QCOMPARE(textInput->selectionStart(), 5);
+ QCOMPARE(textInput->selectionEnd(), 6);
+ QCOMPARE(textInput->selectedText(), QLatin1String("t"));
+ QCOMPARE(textInput->cursorPosition(), 6);
+
+ QList<QInputMethodEvent::Attribute> attributes;
+ attributes << QInputMethodEvent::Attribute(QInputMethodEvent::Selection, 0, 0, QVariant());
+ QInputMethodEvent event(QLatin1String(""), attributes);
+ QApplication::sendEvent(canvas, &event);
+
+ QCOMPARE(selectionStartSpy.count(), 5);
+ QCOMPARE(selectionEndSpy.count(), 4);
+ QCOMPARE(selectedTextSpy.count(), 6);
+ QCOMPARE(textInput->selectionStart(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectionEnd(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectedText(), QLatin1String(""));
+ QCOMPARE(textInput->cursorPosition(), 0);
+
+ textInput->setCursorPosition(1);
+
+ QCOMPARE(selectionStartSpy.count(), 6);
+ QCOMPARE(selectionEndSpy.count(), 5);
+ QCOMPARE(selectedTextSpy.count(), 6);
+
+ QKeyEvent leftArrowShiftPress(QEvent::KeyPress, Qt::Key_Left, Qt::ShiftModifier);
+ QKeyEvent leftArrowShiftRelese(QEvent::KeyRelease, Qt::Key_Left, Qt::ShiftModifier);
+ QApplication::sendEvent(canvas, &leftArrowShiftPress);
+ QApplication::sendEvent(canvas, &leftArrowShiftRelese);
+
+ QCOMPARE(selectionStartSpy.count(), 7);
+ QCOMPARE(selectionEndSpy.count(), 5);
+ QCOMPARE(selectedTextSpy.count(), 7);
+ QCOMPARE(textInput->selectionStart(), 0);
+ QCOMPARE(textInput->selectionEnd(), 1);
+ QCOMPARE(textInput->selectedText(), QLatin1String("S"));
+ QCOMPARE(textInput->cursorPosition(), 0);
+
+ QApplication::sendEvent(canvas, &event);
+
+ QCOMPARE(selectionStartSpy.count(), 8);
+ QCOMPARE(selectionEndSpy.count(), 6);
+ QCOMPARE(selectedTextSpy.count(), 8);
+ QCOMPARE(textInput->selectionStart(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectionEnd(), textInput->cursorPosition());
+ QCOMPARE(textInput->selectedText(), QLatin1String(""));
+ QCOMPARE(textInput->cursorPosition(), 0);
+}
+
QTEST_MAIN(tst_qdeclarativetextinput)
#include "tst_qdeclarativetextinput.moc"
diff --git a/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp b/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp
index a83f6dd..e4c88cd 100644
--- a/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp
+++ b/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp
@@ -181,6 +181,14 @@ void tst_QNetworkCookie::parseSingleCookie_data()
QTest::newRow("with-value-with-special4") << "a = \"\\\"\" " << cookie;
cookie.setValue("\"\\\"a, b; c\\\"\"");
QTest::newRow("with-value-with-special5") << "a = \"\\\"a, b; c\\\"\"" << cookie;
+ // RFC6265 states that cookie values shouldn't contain commas, but we still allow them
+ // since they are only reserved for future compatibility and other browsers do the same.
+ cookie.setValue(",");
+ QTest::newRow("with-value-with-special6") << "a = ," << cookie;
+ cookie.setValue(",b");
+ QTest::newRow("with-value-with-special7") << "a = ,b" << cookie;
+ cookie.setValue("b,");
+ QTest::newRow("with-value-with-special8") << "a = b," << cookie;
cookie.setValue("b c");
QTest::newRow("with-value-with-whitespace") << "a = b c" << cookie;
@@ -599,7 +607,6 @@ void tst_QNetworkCookie::parseSingleCookie()
//QEXPECT_FAIL("network2", "QDateTime parsing problem: the date is beyond year 8000", Abort);
QCOMPARE(result.count(), 1);
- QEXPECT_FAIL("network3", "Cookie value contains commas, violating the HTTP spec", Abort);
QCOMPARE(result.at(0), expectedCookie);
result = QNetworkCookie::parseCookies(result.at(0).toRawForm());
@@ -634,48 +641,17 @@ void tst_QNetworkCookie::parseMultipleCookies_data()
// reason: malformed NAME=VALUE pair
QTest::newRow("invalid-05") << "foo" << list;
QTest::newRow("invalid-06") << "=b" << list;
- QTest::newRow("invalid-09") << "foo,a=b" << list;
- QTest::newRow("invalid-11") << ";path=/" << list;
+ QTest::newRow("invalid-07") << ";path=/" << list;
// reason: malformed expiration date string
- QTest::newRow("invalid-12") << "a=b;expires=" << list;
- QTest::newRow("invalid-13") << "a=b;expires=foobar" << list;
- QTest::newRow("invalid-14") << "a=b;expires=foobar, abc" << list;
- QTest::newRow("invalid-15") << "a=b;expires=foobar, dd-mmm-yyyy hh:mm:ss GMT; path=/" << list;
- QTest::newRow("invalid-16") << "a=b;expires=foobar, 32-Caz-1999 24:01:60 GMT; path=/" << list;
-
- QNetworkCookie cookie;
- cookie.setName("a");
- list += cookie;
- cookie.setName("c");
- cookie.setValue("d");
- list += cookie;
- QTest::newRow("two-1") << "a=,c=d" << list;
- QTest::newRow("two-2") << "a=, c=d" << list;
- QTest::newRow("two-3") << "a= ,c=d" << list;
- QTest::newRow("two-4") << "a= , c=d" << list;
-
- list.clear();
- list += cookie;
- cookie.setName("a");
- cookie.setValue(QByteArray());
- list += cookie;
- QTest::newRow("two-5") << "c=d,a=" << list;
- QTest::newRow("two-6") << "c=d, a=" << list;
- QTest::newRow("two-7") << "c=d , a=" << list;
-
- cookie.setName("foo");
- cookie.setValue("bar");
- cookie.setPath("/");
- list += cookie;
- QTest::newRow("complex-1") << "c=d, a=, foo=bar; path=/" << list;
-
- cookie.setName("baz");
- cookie.setDomain(".qt.nokia.com");
- list.prepend(cookie);
- QTest::newRow("complex-2") << "baz=bar; path=/; domain=.qt.nokia.com, c=d,a=,foo=bar; path=/" << list;
+ QTest::newRow("invalid-08") << "a=b;expires=" << list;
+ QTest::newRow("invalid-09") << "a=b;expires=foobar" << list;
+ QTest::newRow("invalid-10") << "a=b;expires=foobar, abc" << list;
+ QTest::newRow("invalid-11") << "a=b;expires=foobar, dd-mmm-yyyy hh:mm:ss GMT; path=/" << list;
+ QTest::newRow("invalid-12") << "a=b;expires=foobar, 32-Caz-1999 24:01:60 GMT; path=/" << list;
// cookies obtained from the network:
+ QNetworkCookie cookie;
cookie = QNetworkCookie("id", "51706646077999719");
cookie.setDomain(".bluestreak.com");
cookie.setPath("/");
diff --git a/tests/auto/qnetworkrequest/tst_qnetworkrequest.cpp b/tests/auto/qnetworkrequest/tst_qnetworkrequest.cpp
index 9052716..02d1e5a 100644
--- a/tests/auto/qnetworkrequest/tst_qnetworkrequest.cpp
+++ b/tests/auto/qnetworkrequest/tst_qnetworkrequest.cpp
@@ -414,7 +414,7 @@ void tst_QNetworkRequest::rawHeaderParsing_data()
QTest::newRow("SetCookie-3") << QNetworkRequest::SetCookieHeader
<< qVariantFromValue(QList<QNetworkCookie>() << cookie << cookie2)
<< true << "Set-Cookie"
- << "a=b; path=/, c=d";
+ << "a=b; path=/\nc=d";
}
void tst_QNetworkRequest::rawHeaderParsing()
diff --git a/tests/auto/qstyle/tst_qstyle.cpp b/tests/auto/qstyle/tst_qstyle.cpp
index 79c3ba8..a6c7a86 100644
--- a/tests/auto/qstyle/tst_qstyle.cpp
+++ b/tests/auto/qstyle/tst_qstyle.cpp
@@ -213,10 +213,10 @@ void tst_QStyle::testStyleFactory()
#endif
#ifdef Q_WS_WIN
if (QSysInfo::WindowsVersion >= QSysInfo::WV_XP &&
- QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)
+ (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))
QVERIFY(keys.contains("WindowsXP"));
if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA &&
- QSysInfo::WindowsVersion < QSysInfo::WV_NT_based)
+ (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))
QVERIFY(keys.contains("WindowsVista"));
#endif
diff --git a/tests/auto/qwidget/tst_qwidget.cpp b/tests/auto/qwidget/tst_qwidget.cpp
index ee06b53..a881583 100644
--- a/tests/auto/qwidget/tst_qwidget.cpp
+++ b/tests/auto/qwidget/tst_qwidget.cpp
@@ -397,6 +397,9 @@ private slots:
void minimizedWindowModeTransitions();
void normalWindowModeTransitions();
void focusSwitchClosesPopupMenu();
+#if !defined(Q_SYMBIAN_SEMITRANSPARENT_BG_SURFACE)
+ void opacityChangeCausesBackingStoreRecreation();
+#endif
#endif
void focusProxyAndInputMethods();
@@ -10334,7 +10337,47 @@ void tst_QWidget::focusSwitchClosesPopupMenu()
mainWindow.activateWindow();
QVERIFY(!CEikonEnv::Static()->AppUiFactory()->MenuBar()->IsDisplayed());
}
-#endif
+
+#if !defined(Q_SYMBIAN_SEMITRANSPARENT_BG_SURFACE)
+class OpacityChangeWidget : public QWidget
+{
+public:
+ OpacityChangeWidget() : m_paintEngineType(QPaintEngine::MaxUser) { }
+ void paintEvent(QPaintEvent *)
+ {
+ QPainter painter(this);
+ m_paintEngineType = painter.paintEngine()->type();
+ }
+ QPaintEngine::Type paintEngineType() const { return m_paintEngineType; }
+private:
+ QPaintEngine::Type m_paintEngineType;
+};
+
+void tst_QWidget::opacityChangeCausesBackingStoreRecreation()
+{
+ OpacityChangeWidget w;
+ w.show();
+ QTest::qWaitForWindowShown(&w);
+ const QPaintEngine::Type type = w.paintEngineType();
+ if (QPaintEngine::OpenGL != type && QPaintEngine::OpenVG != type) {
+ QSKIP("Test case is only valid when using opengl or openvg graphics system", SkipAll);
+ } else {
+ if (QApplicationPrivate::instance()->useTranslucentEGLSurfaces) {
+ QSKIP("Test case is only valid when EGL surface transparency is not supported", SkipAll);
+ } else {
+ // Making window transparent should force switch to raster graphics system
+ w.setAttribute(Qt::WA_TranslucentBackground, true);
+ w.repaint();
+ QCOMPARE(w.paintEngineType(), QPaintEngine::Raster);
+ // Making window opaque should cause switch back to previous graphics system
+ w.setAttribute(Qt::WA_TranslucentBackground, false);
+ w.repaint();
+ QCOMPARE(w.paintEngineType(), type);
+ }
+ }
+}
+#endif // !Q_SYMBIAN_SEMITRANSPARENT_BG_SURFACE
+#endif // Q_OS_SYMBIAN
class InputContextTester : public QInputContext
{
diff --git a/tools/linguist/lupdate/main.cpp b/tools/linguist/lupdate/main.cpp
index ab88083..7337732 100644
--- a/tools/linguist/lupdate/main.cpp
+++ b/tools/linguist/lupdate/main.cpp
@@ -508,6 +508,9 @@ int main(int argc, char **argv)
|| arg == QLatin1String("-h")) {
printUsage();
return 0;
+ } else if (arg == QLatin1String("-list-languages")) {
+ printOut(getNumerusInfoString());
+ return 0;
} else if (arg == QLatin1String("-pluralonly")) {
options |= PluralOnly;
continue;
diff --git a/tools/linguist/shared/numerus.cpp b/tools/linguist/shared/numerus.cpp
index ac519b5..1ab300c 100644
--- a/tools/linguist/shared/numerus.cpp
+++ b/tools/linguist/shared/numerus.cpp
@@ -361,13 +361,6 @@ static const NumerusTableEntry numerusTable[] = {
static const int NumerusTableSize = sizeof(numerusTable) / sizeof(numerusTable[0]);
-// magic number for the file
-static const int MagicLength = 16;
-static const uchar magic[MagicLength] = {
- 0x3c, 0xb8, 0x64, 0x18, 0xca, 0xef, 0x9c, 0x95,
- 0xcd, 0x21, 0x1c, 0xbf, 0x60, 0xa1, 0xbd, 0xdd
-};
-
bool getNumerusInfo(QLocale::Language language, QLocale::Country country,
QByteArray *rules, QStringList *forms, const char **gettextRules)
{
@@ -401,4 +394,27 @@ bool getNumerusInfo(QLocale::Language language, QLocale::Country country,
return false;
}
+QString getNumerusInfoString()
+{
+ QStringList langs;
+
+ for (int i = 0; i < NumerusTableSize; ++i) {
+ const NumerusTableEntry &entry = numerusTable[i];
+ for (int j = 0; entry.languages[j] != EOL; ++j) {
+ QLocale loc(entry.languages[j], entry.countries ? entry.countries[j] : QLocale::AnyCountry);
+ QString lang = QLocale::languageToString(entry.languages[j]);
+ if (loc.language() == QLocale::C)
+ lang += QLatin1String(" (!!!)");
+ else if (entry.countries && entry.countries[j] != QLocale::AnyCountry)
+ lang += QLatin1String(" (") + QLocale::countryToString(loc.country()) + QLatin1Char(')');
+ else
+ lang += QLatin1String(" [") + QLocale::countryToString(loc.country()) + QLatin1Char(']');
+ langs << QString::fromLatin1("%1 %2 %3\n").arg(lang, -40).arg(loc.name(), -8)
+ .arg(QString::fromLatin1(entry.gettextRules));
+ }
+ }
+ langs.sort();
+ return langs.join(QString());
+}
+
QT_END_NAMESPACE
diff --git a/tools/linguist/shared/translator.h b/tools/linguist/shared/translator.h
index 3b7bd64..d0da527 100644
--- a/tools/linguist/shared/translator.h
+++ b/tools/linguist/shared/translator.h
@@ -254,6 +254,8 @@ private:
bool getNumerusInfo(QLocale::Language language, QLocale::Country country,
QByteArray *rules, QStringList *forms, const char **gettextRules);
+QString getNumerusInfoString();
+
bool saveQM(const Translator &translator, QIODevice &dev, ConversionData &cd);
/*
diff --git a/tools/porting/src/qt3headers0.resource b/tools/porting/src/qt3headers0.resource
index 8e24385..1a3e8a0 100644
--- a/tools/porting/src/qt3headers0.resource
+++ b/tools/porting/src/qt3headers0.resource
Binary files differ
diff --git a/translations/assistant_pl.ts b/translations/assistant_pl.ts
index 87524a4..a173895 100644
--- a/translations/assistant_pl.ts
+++ b/translations/assistant_pl.ts
@@ -262,6 +262,10 @@ Powód:
<translation>Adres</translation>
</message>
<message>
+ <source>Toolbar Menu</source>
+ <translation>Menu paska narzędzi</translation>
+ </message>
+ <message>
<source>Bookmarks Menu</source>
<translation>Menu zakładek</translation>
</message>
@@ -289,11 +293,11 @@ Powód:
<name>CentralWidget</name>
<message>
<source>Add new page</source>
- <translation>Dodaj nową stronę</translation>
+ <translation type="obsolete">Dodaj nową stronę</translation>
</message>
<message>
<source>Close current page</source>
- <translation>Zamknij bieżącą stronę</translation>
+ <translation type="obsolete">Zamknij bieżącą stronę</translation>
</message>
<message>
<source>Print Document</source>
@@ -301,27 +305,27 @@ Powód:
</message>
<message>
<source>unknown</source>
- <translation>nieznany</translation>
+ <translation type="obsolete">nieznany</translation>
</message>
<message>
<source>Add New Page</source>
- <translation>Dodaj nową stronę</translation>
+ <translation type="obsolete">Dodaj nową stronę</translation>
</message>
<message>
<source>Close This Page</source>
- <translation>Zamknij tą stronę</translation>
+ <translation type="obsolete">Zamknij tą stronę</translation>
</message>
<message>
<source>Close Other Pages</source>
- <translation>Zamknij inne strony</translation>
+ <translation type="obsolete">Zamknij inne strony</translation>
</message>
<message>
<source>Add Bookmark for this Page...</source>
- <translation>Dodaj zakładkę dla tej strony...</translation>
+ <translation type="obsolete">Dodaj zakładkę dla tej strony...</translation>
</message>
<message>
<source>Search</source>
- <translation>Wyszukaj</translation>
+ <translation type="obsolete">Wyszukaj</translation>
</message>
</context>
<context>
@@ -661,6 +665,49 @@ Powód:
</message>
</context>
<context>
+ <name>GlobalActions</name>
+ <message>
+ <source>&amp;Back</source>
+ <translation>&amp;Wstecz</translation>
+ </message>
+ <message>
+ <source>&amp;Forward</source>
+ <translation>W &amp;przód</translation>
+ </message>
+ <message>
+ <source>&amp;Home</source>
+ <translation>Strona &amp;startowa</translation>
+ </message>
+ <message>
+ <source>ALT+Home</source>
+ <translation>ALT+Home</translation>
+ </message>
+ <message>
+ <source>Zoom &amp;in</source>
+ <translation>Po&amp;większ</translation>
+ </message>
+ <message>
+ <source>Zoom &amp;out</source>
+ <translation>Po&amp;mniejsz</translation>
+ </message>
+ <message>
+ <source>&amp;Copy selected Text</source>
+ <translation>S&amp;kopiuj zaznaczony tekst</translation>
+ </message>
+ <message>
+ <source>&amp;Print...</source>
+ <translation>&amp;Drukuj...</translation>
+ </message>
+ <message>
+ <source>&amp;Find in Text...</source>
+ <translation>Znajdź w &amp;tekście...</translation>
+ </message>
+ <message>
+ <source>&amp;Find</source>
+ <translation>&amp;Znajdź</translation>
+ </message>
+</context>
+<context>
<name>HelpEngineWrapper</name>
<message>
<source>Unfiltered</source>
@@ -685,16 +732,32 @@ Powód:
<translation>&lt;title&gt;Błąd 404...&lt;/title&gt;&lt;div align=&quot;center&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;h1&gt;Strona nie może być znaleziona&lt;/h1&gt;&lt;br&gt;&lt;h3&gt;&apos;%1&apos;&lt;/h3&gt;&lt;/div&gt;</translation>
</message>
<message>
+ <source>Open Link</source>
+ <translation>Otwórz odsyłacz</translation>
+ </message>
+ <message>
<source>Copy &amp;Link Location</source>
<translation>Skopiuj &amp;odsyłacz</translation>
</message>
<message>
+ <source>Copy</source>
+ <translation>Skopiuj</translation>
+ </message>
+ <message>
+ <source>Reload</source>
+ <translation>Przeładuj</translation>
+ </message>
+ <message>
<source>Open Link in New Tab Ctrl+LMB</source>
<translation>Otwórz odsyłacz w nowej karcie Ctrl+LMB</translation>
</message>
<message>
<source>Open Link in New Tab</source>
- <translation>Otwórz odsyłacz w nowej karcie</translation>
+ <translation type="obsolete">Otwórz odsyłacz w nowej karcie</translation>
+ </message>
+ <message>
+ <source>Open Link in New Page</source>
+ <translation>Otwórz odsyłacz na nowej stronie</translation>
</message>
</context>
<context>
@@ -902,7 +965,7 @@ Powód:
</message>
<message>
<source>&amp;Print...</source>
- <translation>Wy&amp;drukuj...</translation>
+ <translation type="obsolete">Wy&amp;drukuj...</translation>
</message>
<message>
<source>New &amp;Tab</source>
@@ -922,15 +985,15 @@ Powód:
</message>
<message>
<source>&amp;Copy selected Text</source>
- <translation>S&amp;kopiuj zaznaczony tekst</translation>
+ <translation type="obsolete">S&amp;kopiuj zaznaczony tekst</translation>
</message>
<message>
<source>&amp;Find in Text...</source>
- <translation>Znajdź w &amp;tekście...</translation>
+ <translation type="obsolete">Znajdź w &amp;tekście...</translation>
</message>
<message>
<source>&amp;Find</source>
- <translation>&amp;Znajdź</translation>
+ <translation type="obsolete">&amp;Znajdź</translation>
</message>
<message>
<source>Find &amp;Next</source>
@@ -946,11 +1009,11 @@ Powód:
</message>
<message>
<source>Zoom &amp;in</source>
- <translation>Po&amp;większ</translation>
+ <translation type="obsolete">Po&amp;większ</translation>
</message>
<message>
<source>Zoom &amp;out</source>
- <translation>Po&amp;mniejsz</translation>
+ <translation type="obsolete">Po&amp;mniejsz</translation>
</message>
<message>
<source>Normal &amp;Size</source>
@@ -974,15 +1037,15 @@ Powód:
</message>
<message>
<source>&amp;Home</source>
- <translation>Strona &amp;startowa</translation>
+ <translation type="obsolete">Strona &amp;startowa</translation>
</message>
<message>
<source>&amp;Back</source>
- <translation>&amp;Wstecz</translation>
+ <translation type="obsolete">&amp;Wstecz</translation>
</message>
<message>
<source>&amp;Forward</source>
- <translation>W &amp;przód</translation>
+ <translation type="obsolete">W &amp;przód</translation>
</message>
<message>
<source>Sync with Table of Contents</source>
@@ -1021,6 +1084,22 @@ Powód:
<translation>Informacje o programie...</translation>
</message>
<message>
+ <source>Open Pages</source>
+ <translation>Otwarte strony</translation>
+ </message>
+ <message>
+ <source>Bookmark Toolbar</source>
+ <translation>Pasek z zakładkami</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation>Za&amp;kończ</translation>
+ </message>
+ <message>
+ <source>ALT+P</source>
+ <translation>ALT+P</translation>
+ </message>
+ <message>
<source>Navigation Toolbar</source>
<translation>Pasek do nawigacji</translation>
</message>
@@ -1094,7 +1173,7 @@ Powód:
</message>
<message>
<source>ALT+Home</source>
- <translation>ALT+Home</translation>
+ <translation type="obsolete">ALT+Home</translation>
</message>
<message>
<source>&amp;Bookmarks</source>
@@ -1110,6 +1189,17 @@ Powód:
</message>
</context>
<context>
+ <name>OpenPagesWidget</name>
+ <message>
+ <source>Close %1</source>
+ <translation>Zamknij %1</translation>
+ </message>
+ <message>
+ <source>Close All Except %1</source>
+ <translation>Zamknij wszystko z wyjątkiem %1</translation>
+ </message>
+</context>
+<context>
<name>OutputPage</name>
<message>
<source>Form</source>
@@ -1328,6 +1418,14 @@ Czy chcesz go usunąć?</translation>
<source>Blank Page</source>
<translation>Pusta strona</translation>
</message>
+ <message>
+ <source>Appearance</source>
+ <translation>Wygląd</translation>
+ </message>
+ <message>
+ <source>Show tabs for each individual page</source>
+ <translation>Pokazuj karty dla każdej otwartej strony</translation>
+ </message>
</context>
<context>
<name>QCollectionGenerator</name>
@@ -1527,6 +1625,29 @@ qhelpgenerator &lt;plik-projektu-pomocy&gt; [opcje]
</message>
</context>
<context>
+ <name>TabBar</name>
+ <message>
+ <source>(Untitled)</source>
+ <translation>(Nienazwany)</translation>
+ </message>
+ <message>
+ <source>New &amp;Tab</source>
+ <translation>Nowa kar&amp;ta</translation>
+ </message>
+ <message>
+ <source>&amp;Close Tab</source>
+ <translation>&amp;Zamknij kartę</translation>
+ </message>
+ <message>
+ <source>Close Other Tabs</source>
+ <translation>Zamknij pozostałe karty</translation>
+ </message>
+ <message>
+ <source>Add Bookmark for this Page...</source>
+ <translation>Dodaj zakładkę dla tej strony...</translation>
+ </message>
+</context>
+<context>
<name>TopicChooser</name>
<message>
<source>Choose a topic for &lt;b&gt;%1&lt;/b&gt;:</source>
diff --git a/translations/assistant_uk.ts b/translations/assistant_uk.ts
index 73f5df5..d3bd284 100644
--- a/translations/assistant_uk.ts
+++ b/translations/assistant_uk.ts
@@ -259,6 +259,10 @@ Reason:
<translation>Адреса</translation>
</message>
<message>
+ <source>Toolbar Menu</source>
+ <translation>Панель закладок</translation>
+ </message>
+ <message>
<source>Bookmarks Menu</source>
<translation>Меню закладок</translation>
</message>
@@ -285,41 +289,9 @@ Reason:
<context>
<name>CentralWidget</name>
<message>
- <source>Add new page</source>
- <translation>Додати нову сторінку</translation>
- </message>
- <message>
- <source>Close current page</source>
- <translation>Закрити поточну сторінку</translation>
- </message>
- <message>
<source>Print Document</source>
<translation>Друкувати документ</translation>
</message>
- <message>
- <source>unknown</source>
- <translation>невідомо</translation>
- </message>
- <message>
- <source>Add New Page</source>
- <translation>Додати нову сторінку</translation>
- </message>
- <message>
- <source>Close This Page</source>
- <translation>Закрити цю сторінку</translation>
- </message>
- <message>
- <source>Close Other Pages</source>
- <translation>Закрити інші сторінки</translation>
- </message>
- <message>
- <source>Add Bookmark for this Page...</source>
- <translation>Додати закладку для цієї сторінки...</translation>
- </message>
- <message>
- <source>Search</source>
- <translation>Пошук</translation>
- </message>
</context>
<context>
<name>CmdLineParser</name>
@@ -651,6 +623,49 @@ Reason:
</message>
</context>
<context>
+ <name>GlobalActions</name>
+ <message>
+ <source>&amp;Back</source>
+ <translation>&amp;Назад</translation>
+ </message>
+ <message>
+ <source>&amp;Forward</source>
+ <translation>&amp;Вперед</translation>
+ </message>
+ <message>
+ <source>&amp;Home</source>
+ <translation>&amp;Домівка</translation>
+ </message>
+ <message>
+ <source>ALT+Home</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Zoom &amp;in</source>
+ <translation>З&amp;більшити</translation>
+ </message>
+ <message>
+ <source>Zoom &amp;out</source>
+ <translation>З&amp;меншити</translation>
+ </message>
+ <message>
+ <source>&amp;Copy selected Text</source>
+ <translation>&amp;Копіювати виділений текст</translation>
+ </message>
+ <message>
+ <source>&amp;Print...</source>
+ <translation>&amp;Друк...</translation>
+ </message>
+ <message>
+ <source>&amp;Find in Text...</source>
+ <translation>Пошук в &amp;тексті...</translation>
+ </message>
+ <message>
+ <source>&amp;Find</source>
+ <translation>По&amp;шук</translation>
+ </message>
+</context>
+<context>
<name>HelpEngineWrapper</name>
<message>
<source>Unfiltered</source>
@@ -675,16 +690,28 @@ Reason:
<translation>&lt;title&gt;Помилка 404...&lt;/title&gt;&lt;div align=&quot;center&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;h1&gt;Не вдалось знайти сторінку&lt;/h1&gt;&lt;br&gt;&lt;h3&gt;&apos;%1&apos;&lt;/h3&gt;&lt;/div&gt;</translation>
</message>
<message>
+ <source>Open Link</source>
+ <translation>Відкрити посилання</translation>
+ </message>
+ <message>
<source>Copy &amp;Link Location</source>
<translation>Копіювати &amp;адресу посилання</translation>
</message>
<message>
+ <source>Copy</source>
+ <translation>Копіювати</translation>
+ </message>
+ <message>
+ <source>Reload</source>
+ <translation>Перезавантажити</translation>
+ </message>
+ <message>
<source>Open Link in New Tab Ctrl+LMB</source>
<translation>Відкрити посилання в новій вкладці Ctrl+LMB</translation>
</message>
<message>
- <source>Open Link in New Tab</source>
- <translation>Відкрити посилання в новій вкладці</translation>
+ <source>Open Link in New Page</source>
+ <translation>Відкрити посилання в новій сторінці</translation>
</message>
</context>
<context>
@@ -875,10 +902,18 @@ Reason:
<translation>Закладки</translation>
</message>
<message>
+ <source>Open Pages</source>
+ <translation>Відкрити сторінки</translation>
+ </message>
+ <message>
<source>Qt Assistant</source>
<translation>Qt Assistant</translation>
</message>
<message>
+ <source>Bookmark Toolbar</source>
+ <translation>Панель закладок</translation>
+ </message>
+ <message>
<source>Looking for Qt Documentation...</source>
<translation>Пошук документації Qt...</translation>
</message>
@@ -899,10 +934,6 @@ Reason:
<translation>Попередній перегляд...</translation>
</message>
<message>
- <source>&amp;Print...</source>
- <translation>&amp;Друк...</translation>
- </message>
- <message>
<source>&amp;Close Tab</source>
<translation>&amp;Закрити вкладку</translation>
</message>
@@ -919,18 +950,6 @@ Reason:
<translation>&amp;Правка</translation>
</message>
<message>
- <source>&amp;Copy selected Text</source>
- <translation>&amp;Копіювати виділений текст</translation>
- </message>
- <message>
- <source>&amp;Find in Text...</source>
- <translation>Пошук в &amp;тексті...</translation>
- </message>
- <message>
- <source>&amp;Find</source>
- <translation>По&amp;шук</translation>
- </message>
- <message>
<source>Find &amp;Next</source>
<translation>Знайти &amp;наступне</translation>
</message>
@@ -947,14 +966,6 @@ Reason:
<translation>&amp;Вид</translation>
</message>
<message>
- <source>Zoom &amp;in</source>
- <translation>З&amp;більшити</translation>
- </message>
- <message>
- <source>Zoom &amp;out</source>
- <translation>З&amp;меншити</translation>
- </message>
- <message>
<source>Normal &amp;Size</source>
<translation>&amp;Нормальний розмір</translation>
</message>
@@ -979,28 +990,20 @@ Reason:
<translation>Пошук</translation>
</message>
<message>
- <source>ALT+S</source>
- <translation></translation>
- </message>
- <message>
- <source>&amp;Go</source>
- <translation>П&amp;ерейти</translation>
- </message>
- <message>
- <source>&amp;Home</source>
- <translation>&amp;Домівка</translation>
+ <source>E&amp;xit</source>
+ <translation>Ви&amp;йти</translation>
</message>
<message>
- <source>ALT+Home</source>
+ <source>ALT+S</source>
<translation></translation>
</message>
<message>
- <source>&amp;Back</source>
- <translation>&amp;Назад</translation>
+ <source>ALT+P</source>
+ <translation></translation>
</message>
<message>
- <source>&amp;Forward</source>
- <translation>&amp;Вперед</translation>
+ <source>&amp;Go</source>
+ <translation>П&amp;ерейти</translation>
</message>
<message>
<source>Sync with Table of Contents</source>
@@ -1100,6 +1103,17 @@ Reason:
</message>
</context>
<context>
+ <name>OpenPagesWidget</name>
+ <message>
+ <source>Close %1</source>
+ <translation>Закрити %1</translation>
+ </message>
+ <message>
+ <source>Close All Except %1</source>
+ <translation>Закрити все, крім %1</translation>
+ </message>
+</context>
+<context>
<name>OutputPage</name>
<message>
<source>Form</source>
@@ -1318,6 +1332,14 @@ Do you want to remove it?</source>
<source>Restore to default</source>
<translation>Відновити типово</translation>
</message>
+ <message>
+ <source>Appearance</source>
+ <translation>Зовнішій вигляд</translation>
+ </message>
+ <message>
+ <source>Show tabs for each individual page</source>
+ <translation>Показувати вкладки для кожної окремої сторінки</translation>
+ </message>
</context>
<context>
<name>QCollectionGenerator</name>
@@ -1519,6 +1541,29 @@ qhelpgenerator &lt;файл-проекту-довідки&gt; [опції]
</message>
</context>
<context>
+ <name>TabBar</name>
+ <message>
+ <source>(Untitled)</source>
+ <translation>(Без назви)</translation>
+ </message>
+ <message>
+ <source>New &amp;Tab</source>
+ <translation>&amp;Нова вкладка</translation>
+ </message>
+ <message>
+ <source>&amp;Close Tab</source>
+ <translation>&amp;Закрити вкладку</translation>
+ </message>
+ <message>
+ <source>Close Other Tabs</source>
+ <translation>Закрити інші вкладки</translation>
+ </message>
+ <message>
+ <source>Add Bookmark for this Page...</source>
+ <translation>Додати закладку для цієї сторінки...</translation>
+ </message>
+</context>
+<context>
<name>TopicChooser</name>
<message>
<source>Choose Topic</source>
diff --git a/translations/designer_pl.ts b/translations/designer_pl.ts
index c2b5eba..05b5a78 100644
--- a/translations/designer_pl.ts
+++ b/translations/designer_pl.ts
@@ -364,7 +364,7 @@
</message>
<message>
<source>page</source>
- <translation>strona</translation>
+ <translation type="obsolete">strona</translation>
</message>
<message>
<source>Insert Page</source>
@@ -476,7 +476,7 @@
</message>
<message>
<source>subwindow</source>
- <translation>podokno</translation>
+ <translation type="obsolete">podokno</translation>
</message>
<message>
<source>Subwindow</source>
@@ -530,6 +530,10 @@
<translation>Zmień rozmieszczenie widżetu &apos;%1&apos; z %2 na %3</translation>
</message>
<message>
+ <source>Change layout alignment</source>
+ <translation>Zmień wyrównanie w rozmieszczeniu</translation>
+ </message>
+ <message>
<source>Change script</source>
<translation>Zmień skrypt</translation>
</message>
@@ -876,8 +880,6 @@
<source>Invalid stretch value for &apos;%1&apos;: &apos;%2&apos;</source>
<extracomment>Parsing layout stretch values
----------
-Parsing layout stretch values
-----------
Parsing layout stretch values</extracomment>
<translation>Niepoprawna wartość rozciągniecia dla &apos;%1&apos;: &apos;%2&apos;</translation>
</message>
@@ -885,8 +887,6 @@ Parsing layout stretch values</extracomment>
<source>Invalid minimum size for &apos;%1&apos;: &apos;%2&apos;</source>
<extracomment>Parsing grid layout minimum size values
----------
-Parsing grid layout minimum size values
-----------
Parsing grid layout minimum size values</extracomment>
<translation>Niepoprawna wartość minimalna dla &apos;%1&apos;: &apos;%2&apos;</translation>
</message>
@@ -1820,6 +1820,10 @@ Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w
<translation>&amp;Plik</translation>
</message>
<message>
+ <source>&amp;Edit</source>
+ <translation>&amp;Edycja</translation>
+ </message>
+ <message>
<source>F&amp;orm</source>
<translation>&amp;Formularz</translation>
</message>
@@ -1857,7 +1861,7 @@ Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w
</message>
<message>
<source>Edit</source>
- <translation>Edycja</translation>
+ <translation type="obsolete">Edycja</translation>
</message>
<message>
<source>Toolbars</source>
@@ -1902,8 +1906,6 @@ Strony pojemników powinny być dodawane jedynie poprzez wyspecyfikowanie ich w
<source>An empty class name was passed on to %1 (object name: &apos;%2&apos;).</source>
<extracomment>Empty class name passed to widget factory method
----------
-Empty class name passed to widget factory method
-----------
Empty class name passed to widget factory method</extracomment>
<translation>Pusta nazwa klasy została przekazana do %1 (nazwa obiektu: &apos;%2&apos;).</translation>
</message>
@@ -3741,6 +3743,10 @@ Czy chcesz nadpisać szablon?</translation>
<translation>Odziedziczony</translation>
</message>
<message>
+ <source>[Theme] %1</source>
+ <translation>[Motyw] %1</translation>
+ </message>
+ <message>
<source>Horizontal</source>
<translation>Poziomo</translation>
</message>
@@ -3749,6 +3755,10 @@ Czy chcesz nadpisać szablon?</translation>
<translation>Pionowo</translation>
</message>
<message>
+ <source>Theme</source>
+ <translation>Motyw</translation>
+ </message>
+ <message>
<source>Normal Off</source>
<translation>Normalny wyciśnięty</translation>
</message>
@@ -4337,6 +4347,17 @@ Czy chcesz nadpisać szablon?</translation>
</message>
</context>
<context>
+ <name>qdesigner_internal::IconThemeDialog</name>
+ <message>
+ <source>Set Icon From Theme</source>
+ <translation>Ustaw ikonę dla motywu</translation>
+ </message>
+ <message>
+ <source>Input icon name from the current theme:</source>
+ <translation>Podaj nazwę ikony z bieżącego motywu:</translation>
+ </message>
+</context>
+<context>
<name>qdesigner_internal::ItemListEditor</name>
<message>
<source>Properties &amp;&lt;&lt;</source>
@@ -4483,15 +4504,15 @@ Czy chcesz nadpisać szablon?</translation>
</message>
<message>
<source>Shortcut:</source>
- <translation>Skrót:</translation>
+ <translation type="obsolete">Skrót:</translation>
</message>
<message>
<source>Checkable:</source>
- <translation>Przełączalny:</translation>
+ <translation type="obsolete">Przełączalny:</translation>
</message>
<message>
<source>ToolTip:</source>
- <translation>Podpowiedź:</translation>
+ <translation type="obsolete">Podpowiedź:</translation>
</message>
<message>
<source>...</source>
@@ -4501,6 +4522,22 @@ Czy chcesz nadpisać szablon?</translation>
<source>Object &amp;name:</source>
<translation>&amp;Nazwa obiektu:</translation>
</message>
+ <message>
+ <source>T&amp;oolTip:</source>
+ <translation>&amp;Podpowiedź:</translation>
+ </message>
+ <message>
+ <source>Icon th&amp;eme:</source>
+ <translation>Ikonka z &amp;motywu:</translation>
+ </message>
+ <message>
+ <source>&amp;Checkable:</source>
+ <translation>P&amp;rzełączalna:</translation>
+ </message>
+ <message>
+ <source>&amp;Shortcut:</source>
+ <translation>&amp;Skrót:</translation>
+ </message>
</context>
<context>
<name>qdesigner_internal::NewDynamicPropertyDialog</name>
@@ -4758,9 +4795,17 @@ Wybierz inną nazwę.</translation>
<translation>Wybierz plik...</translation>
</message>
<message>
+ <source>Set Icon From Theme...</source>
+ <translation>Ustaw ikonkę z motywu...</translation>
+ </message>
+ <message>
<source>...</source>
<translation>...</translation>
</message>
+ <message>
+ <source>[Theme] %1</source>
+ <translation>[Motyw] %1</translation>
+ </message>
</context>
<context>
<name>qdesigner_internal::PlainTextEditorDialog</name>
@@ -5136,6 +5181,42 @@ Klasa: %2</translation>
<translation>Zmień sygnały/sloty...</translation>
</message>
<message>
+ <source>Layout Alignment</source>
+ <translation>Wyrównanie w rozmieszczeniu</translation>
+ </message>
+ <message>
+ <source>No Horizontal Alignment</source>
+ <translation>Brak poziomego wyrównania</translation>
+ </message>
+ <message>
+ <source>Left</source>
+ <translation>Do lewej</translation>
+ </message>
+ <message>
+ <source>Center Horizontally</source>
+ <translation>Wyśrodkuj w poziomie</translation>
+ </message>
+ <message>
+ <source>Right</source>
+ <translation>Do prawej</translation>
+ </message>
+ <message>
+ <source>No Vertical Alignment</source>
+ <translation>Brak pionowego wyrównania</translation>
+ </message>
+ <message>
+ <source>Top</source>
+ <translation>Do góry</translation>
+ </message>
+ <message>
+ <source>Center Vertically</source>
+ <translation>Wyśrodkuj w pionie</translation>
+ </message>
+ <message>
+ <source>Bottom</source>
+ <translation>Do dołu</translation>
+ </message>
+ <message>
<source>Go to slot...</source>
<translation>Przejdź do slotu...</translation>
</message>
@@ -5351,6 +5432,10 @@ Klasa: %2</translation>
<source>Insert &amp;Image</source>
<translation>Wstaw &amp;obrazek</translation>
</message>
+ <message>
+ <source>Simplify Rich Text</source>
+ <translation>Uprość tekst sformatowany</translation>
+ </message>
</context>
<context>
<name>qdesigner_internal::ScriptDialog</name>
diff --git a/translations/designer_ru.ts b/translations/designer_ru.ts
index 471a366..fdaeda3 100644
--- a/translations/designer_ru.ts
+++ b/translations/designer_ru.ts
@@ -872,8 +872,6 @@
<source>Invalid stretch value for &apos;%1&apos;: &apos;%2&apos;</source>
<extracomment>Parsing layout stretch values
----------
-Parsing layout stretch values
-----------
Parsing layout stretch values</extracomment>
<translation>Некорректный коэффициент растяжения для &apos;%1&apos;: &apos;%2&apos;</translation>
</message>
@@ -881,8 +879,6 @@ Parsing layout stretch values</extracomment>
<source>Invalid minimum size for &apos;%1&apos;: &apos;%2&apos;</source>
<extracomment>Parsing grid layout minimum size values
----------
-Parsing grid layout minimum size values
-----------
Parsing grid layout minimum size values</extracomment>
<translation>Некорректный минимальный размер для &apos;%1&apos;: &apos;%2&apos;</translation>
</message>
@@ -1899,8 +1895,6 @@ Container pages should only be added by specifying them in XML returned by the d
<source>An empty class name was passed on to %1 (object name: &apos;%2&apos;).</source>
<extracomment>Empty class name passed to widget factory method
----------
-Empty class name passed to widget factory method
-----------
Empty class name passed to widget factory method</extracomment>
<translation>Методу %1 (объекта &apos;%2&apos;) было передано пустое имя класса.</translation>
</message>
diff --git a/translations/designer_uk.ts b/translations/designer_uk.ts
index 7d1065c..4f45ff7 100644
--- a/translations/designer_uk.ts
+++ b/translations/designer_uk.ts
@@ -409,18 +409,10 @@
<translation>Видалити підвікно</translation>
</message>
<message>
- <source>page</source>
- <translation>сторінка</translation>
- </message>
- <message>
<source>Insert Subwindow</source>
<translation>Вставити підвікно</translation>
</message>
<message>
- <source>subwindow</source>
- <translation>підвікно</translation>
- </message>
- <message>
<source>Subwindow</source>
<translation>Підвікно</translation>
</message>
@@ -461,6 +453,10 @@
<translation>Змінити розташування &apos;%1&apos; з %2 на %3</translation>
</message>
<message>
+ <source>Change layout alignment</source>
+ <translation>Змінити вирівнювання розташування</translation>
+ </message>
+ <message>
<source>Set action text</source>
<translation>Встановити текст дії</translation>
</message>
@@ -876,8 +872,6 @@
<source>Invalid stretch value for &apos;%1&apos;: &apos;%2&apos;</source>
<extracomment>Parsing layout stretch values
----------
-Parsing layout stretch values
-----------
Parsing layout stretch values</extracomment>
<translation>Неправильне значення розтягування для &apos;%1&apos;: &apos;%2&apos;</translation>
</message>
@@ -885,8 +879,6 @@ Parsing layout stretch values</extracomment>
<source>Invalid minimum size for &apos;%1&apos;: &apos;%2&apos;</source>
<extracomment>Parsing grid layout minimum size values
----------
-Parsing grid layout minimum size values
-----------
Parsing grid layout minimum size values</extracomment>
<translation>Неправильне значення мінімального розміру для &apos;%1&apos;: &apos;%2&apos;</translation>
</message>
@@ -1820,8 +1812,8 @@ Container pages should only be added by specifying them in XML returned by the d
<translation>&amp;Файл</translation>
</message>
<message>
- <source>Edit</source>
- <translation>Правка</translation>
+ <source>&amp;Edit</source>
+ <translation>&amp;Правка</translation>
</message>
<message>
<source>F&amp;orm</source>
@@ -1902,8 +1894,6 @@ Container pages should only be added by specifying them in XML returned by the d
<source>An empty class name was passed on to %1 (object name: &apos;%2&apos;).</source>
<extracomment>Empty class name passed to widget factory method
----------
-Empty class name passed to widget factory method
-----------
Empty class name passed to widget factory method</extracomment>
<translation>До %1 було передане пусте ім&apos;я класу (ім&apos;я об&apos;єкта: &apos;%2&apos;).</translation>
</message>
@@ -3741,6 +3731,10 @@ Do you want overwrite the template?</source>
<translation>Успадкована</translation>
</message>
<message>
+ <source>[Theme] %1</source>
+ <translation>[Тема] %1</translation>
+ </message>
+ <message>
<source>Horizontal</source>
<translation>Горизонтальне</translation>
</message>
@@ -3749,6 +3743,10 @@ Do you want overwrite the template?</source>
<translation>Вертикальне</translation>
</message>
<message>
+ <source>Theme</source>
+ <translation>Тема</translation>
+ </message>
+ <message>
<source>Normal Off</source>
<translation>Нормальний, вимк</translation>
</message>
@@ -4337,6 +4335,17 @@ Do you want overwrite the template?</source>
</message>
</context>
<context>
+ <name>qdesigner_internal::IconThemeDialog</name>
+ <message>
+ <source>Set Icon From Theme</source>
+ <translation>Встановити піктограму з теми</translation>
+ </message>
+ <message>
+ <source>Input icon name from the current theme:</source>
+ <translation>Введіть назву піктограми з поточної теми:</translation>
+ </message>
+</context>
+<context>
<name>qdesigner_internal::ItemListEditor</name>
<message>
<source>Items List</source>
@@ -4486,20 +4495,24 @@ Do you want overwrite the template?</source>
<translation>&amp;Значок:</translation>
</message>
<message>
- <source>Shortcut:</source>
- <translation>Поєднання клавіш:</translation>
+ <source>...</source>
+ <translation>...</translation>
</message>
<message>
- <source>Checkable:</source>
- <translation>Прапорець:</translation>
+ <source>T&amp;oolTip:</source>
+ <translation>Спливаюча &amp;підказка:</translation>
</message>
<message>
- <source>ToolTip:</source>
- <translation>Спливаюча підказка:</translation>
+ <source>Icon th&amp;eme:</source>
+ <translation>Те&amp;ма значків:</translation>
</message>
<message>
- <source>...</source>
- <translation>...</translation>
+ <source>&amp;Checkable:</source>
+ <translation>П&amp;рапорець:</translation>
+ </message>
+ <message>
+ <source>&amp;Shortcut:</source>
+ <translation>Поєднання клаві&amp;ш:</translation>
</message>
</context>
<context>
@@ -4750,6 +4763,10 @@ Please select another name.</source>
<translation>Оберіть файл...</translation>
</message>
<message>
+ <source>Set Icon From Theme...</source>
+ <translation>Встановити піктограму з теми...</translation>
+ </message>
+ <message>
<source>Copy Path</source>
<translation>Копіювати шлях</translation>
</message>
@@ -4761,6 +4778,10 @@ Please select another name.</source>
<source>...</source>
<translation>...</translation>
</message>
+ <message>
+ <source>[Theme] %1</source>
+ <translation>[Тема] %1</translation>
+ </message>
</context>
<context>
<name>qdesigner_internal::PlainTextEditorDialog</name>
@@ -5084,6 +5105,42 @@ Class: %2</source>
<context>
<name>qdesigner_internal::QDesignerTaskMenu</name>
<message>
+ <source>Layout Alignment</source>
+ <translation>Вирівнювання розташування</translation>
+ </message>
+ <message>
+ <source>No Horizontal Alignment</source>
+ <translation>Без горизонтального вирівнювання</translation>
+ </message>
+ <message>
+ <source>Left</source>
+ <translation>Вліво</translation>
+ </message>
+ <message>
+ <source>Center Horizontally</source>
+ <translation>Центрувати горизонтально</translation>
+ </message>
+ <message>
+ <source>Right</source>
+ <translation>Вправо</translation>
+ </message>
+ <message>
+ <source>No Vertical Alignment</source>
+ <translation>Без вертикального вирівнювання</translation>
+ </message>
+ <message>
+ <source>Top</source>
+ <translation>Догори</translation>
+ </message>
+ <message>
+ <source>Center Vertically</source>
+ <translation>Центрувати вертикально</translation>
+ </message>
+ <message>
+ <source>Bottom</source>
+ <translation>Донизу</translation>
+ </message>
+ <message>
<source>Change objectName...</source>
<translation>Змінити objectName...</translation>
</message>
@@ -5351,6 +5408,10 @@ Class: %2</source>
<source>Insert &amp;Image</source>
<translation>Вставити &amp;зображення</translation>
</message>
+ <message>
+ <source>Simplify Rich Text</source>
+ <translation>Спростити форматований текст</translation>
+ </message>
</context>
<context>
<name>qdesigner_internal::ScriptDialog</name>
diff --git a/translations/qt_ko.ts b/translations/qt_ko.ts
index c7ab8e3..b9e30f5 100644
--- a/translations/qt_ko.ts
+++ b/translations/qt_ko.ts
@@ -6328,11 +6328,11 @@ Do you want to overwrite it?</source>
</message>
<message>
<source>Touroku</source>
- <translation type="unfinished"></translation>
+ <translation>단어 등록</translation>
</message>
<message>
<source>Massyo</source>
- <translation type="unfinished"></translation>
+ <translation>단어 지움</translation>
</message>
<message>
<source>Kana Lock</source>
@@ -6344,11 +6344,11 @@ Do you want to overwrite it?</source>
</message>
<message>
<source>Eisu Shift</source>
- <translation type="unfinished"></translation>
+ <translation>한자 Shift</translation>
</message>
<message>
<source>Eisu toggle</source>
- <translation type="unfinished"></translation>
+ <translation>한자 반전</translation>
</message>
<message>
<source>Code input</source>
diff --git a/translations/qt_pl.ts b/translations/qt_pl.ts
index 0c9c01e..c1a7a03 100644
--- a/translations/qt_pl.ts
+++ b/translations/qt_pl.ts
@@ -9,9 +9,24 @@
</message>
</context>
<context>
+ <name>Debugger::JSAgentWatchData</name>
+ <message>
+ <source>[Array of length %1]</source>
+ <translation>[Tablica o długości %1]</translation>
+ </message>
+ <message>
+ <source>&lt;undefined&gt;</source>
+ <translation>&lt;niezdefiniowanej&gt;</translation>
+ </message>
+</context>
+<context>
<name>FakeReply</name>
<message>
<source>Fake error !</source>
+ <translation type="obsolete">Fałszywy błąd!</translation>
+ </message>
+ <message>
+ <source>Fake error!</source>
<translation>Fałszywy błąd!</translation>
</message>
<message>
@@ -397,7 +412,7 @@ zainstalowałeś libgstreamer-plugins-base.</translation>
</message>
<message>
<source>Reflections delay (ms)</source>
- <extracomment>ReflectionsDelay: Amount of delay between the arrival the direct path from the source and the arrival of the first reflection.</extracomment>
+ <extracomment>ReflectionsDelay: Amount of delay between the arrival of the direct path from the source and the arrival of the first reflection.</extracomment>
<translation>Opóźnienie odbić (ms)</translation>
</message>
<message>
@@ -412,7 +427,7 @@ zainstalowałeś libgstreamer-plugins-base.</translation>
</message>
<message>
<source>Reverb level (mB)</source>
- <extracomment>ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.</extracomment>
+ <extracomment>ReverbLevel: Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.</extracomment>
<translation>Poziom pogłosu (mB)</translation>
</message>
<message>
@@ -470,8 +485,12 @@ zainstalowałeś libgstreamer-plugins-base.</translation>
<translation>Głośność: %1%</translation>
</message>
<message>
+ <source>Use this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%</source>
+ <translation>Użyj tego suwaka aby zmienić głośność. Skrajnie lewa pozycja to 0%. Skrajnie prawa to %1%</translation>
+ </message>
+ <message>
<source>Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%</source>
- <translation>Użyj tego suwaka aby zmienić głośność. Skrajnie lewa pozycja to 0%, skrajnie prawa to %1%</translation>
+ <translation type="obsolete">Użyj tego suwaka aby zmienić głośność. Skrajnie lewa pozycja to 0%, skrajnie prawa to %1%</translation>
</message>
<message>
<source>Muted</source>
@@ -1062,6 +1081,14 @@ na
<context>
<name>QAccessibleButton</name>
<message>
+ <source>Uncheck</source>
+ <translation>Odznacz</translation>
+ </message>
+ <message>
+ <source>Check</source>
+ <translation>Zaznacz</translation>
+ </message>
+ <message>
<source>Press</source>
<translation>Wciśnij</translation>
</message>
@@ -2365,7 +2392,7 @@ na
</message>
<message>
<source>Reset</source>
- <translation>Resetuj</translation>
+ <translation>Zresetuj</translation>
</message>
<message>
<source>Restore Defaults</source>
@@ -2500,6 +2527,10 @@ na
<source>Cannot create %1 for output</source>
<translation>Nie można utworzyć pliku wyjściowego %1</translation>
</message>
+ <message>
+ <source>No file engine available or engine does not support UnMapExtension</source>
+ <translation>Brak dostępnego silnika lub silnik nie obsługuje UnMapExtension</translation>
+ </message>
</context>
<context>
<name>QFileDialog</name>
@@ -3471,6 +3502,18 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
<source>Cannot resolve symbol &quot;%1&quot; in %2: %3</source>
<translation>Nie można zidentyfikować symbolu &quot;%1&quot; w %2: %3</translation>
</message>
+ <message>
+ <source>&apos;%1&apos; is not an ELF object (%2)</source>
+ <translation>&quot;%1&quot; nie jest obiektem ELF (%2)</translation>
+ </message>
+ <message>
+ <source>&apos;%1&apos; is not an ELF object</source>
+ <translation>&quot;%1&quot; nie jest obiektem ELF</translation>
+ </message>
+ <message>
+ <source>&apos;%1&apos; is an invalid ELF object (%2)</source>
+ <translation>&quot;%1&quot; jest niepoprawnym obiektem ELF (%2)</translation>
+ </message>
</context>
<context>
<name>QLineEdit</name>
@@ -3568,6 +3611,10 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
<source>%1: Unknown error %2</source>
<translation>%1: Nieznany błąd %2</translation>
</message>
+ <message>
+ <source>%1: Access denied</source>
+ <translation>%1: Odmowa dostępu</translation>
+ </message>
</context>
<context>
<name>QMYSQLDriver</name>
@@ -3577,7 +3624,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
</message>
<message>
<source>Unable to commit transaction</source>
- <translation>Nie można potwierdzić transakcji</translation>
+ <translation>Nie można dokonać transakcji</translation>
</message>
<message>
<source>Unable to connect</source>
@@ -3620,7 +3667,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
</message>
<message>
<source>Unable to reset statement</source>
- <translation>Nie można skasować polecenia</translation>
+ <translation>Nie można zresetować polecenia</translation>
</message>
<message>
<source>Unable to store result</source>
@@ -3742,6 +3789,10 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
<source>Actions</source>
<translation>Akcje</translation>
</message>
+ <message>
+ <source>Corner Toolbar</source>
+ <translation>Narożny pasek narzędzi</translation>
+ </message>
</context>
<context>
<name>QMessageBox</name>
@@ -3910,7 +3961,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
<name>QNetworkAccessDataBackend</name>
<message>
<source>Operation not supported on %1</source>
- <translation>Operacja nieobsługiwana na %1</translation>
+ <translation type="obsolete">Operacja nieobsługiwana na %1</translation>
</message>
<message>
<source>Invalid URI: %1</source>
@@ -4007,6 +4058,10 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
<translation>Błąd sesji sieciowej.</translation>
</message>
<message>
+ <source>backend start error.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<source>Temporary network failure.</source>
<translation>Chwilowy błąd w sieci.</translation>
</message>
@@ -4123,7 +4178,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
<name>QODBCDriver</name>
<message>
<source>Unable to commit transaction</source>
- <translation>Nie można potwierdzić transakcji</translation>
+ <translation>Nie można dokonać transakcji</translation>
</message>
<message>
<source>Unable to connect</source>
@@ -4199,6 +4254,10 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
<source>invalid query: &quot;%1&quot;</source>
<translation>Niepoprawne zapytanie: &quot;%1&quot;</translation>
</message>
+ <message>
+ <source>Host not found</source>
+ <translation>Host nie znaleziony</translation>
+ </message>
</context>
<context>
<name>QPPDOptionsModel</name>
@@ -4219,7 +4278,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
</message>
<message>
<source>Could not commit transaction</source>
- <translation>Nie można potwierdzić transakcji</translation>
+ <translation>Nie można dokonać transakcji</translation>
</message>
<message>
<source>Could not rollback transaction</source>
@@ -5092,7 +5151,7 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
<message>
<source>Unable to reset statement</source>
- <translation>Nie można skasować polecenia</translation>
+ <translation>Nie można zresetować polecenia</translation>
</message>
<message>
<source>No query</source>
@@ -5500,6 +5559,10 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>%1: ograniczenia rozmiarów narzucone przez system</translation>
</message>
<message>
+ <source>%1: bad name</source>
+ <translation>%1: zła nazwa</translation>
+ </message>
+ <message>
<source>%1: not attached</source>
<translation>%1: niedołączony</translation>
</message>
@@ -5509,7 +5572,7 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
<message>
<source>%1: key error</source>
- <translation>%1: błąd klucza</translation>
+ <translation type="obsolete">%1: błąd klucza</translation>
</message>
<message>
<source>%1: size query failed</source>
@@ -6491,6 +6554,10 @@ Proszę wybrać inną nazwę pliku.</translation>
<name>QSoftKeyManager</name>
<message>
<source>Ok</source>
+ <translation type="obsolete">OK</translation>
+ </message>
+ <message>
+ <source>OK</source>
<translation>OK</translation>
</message>
<message>
@@ -6735,6 +6802,187 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
</context>
<context>
+ <name>QSymSQLDriver</name>
+ <message>
+ <source>Invalid option: </source>
+ <translation>Niepoprawna opcja: </translation>
+ </message>
+ <message>
+ <source>Error opening database</source>
+ <translation>Błąd otwierania bazy danych</translation>
+ </message>
+ <message>
+ <source>POLICY_DB_DEFAULT must be defined before any other POLICY definitions can be used</source>
+ <translation>POLICY_DB_DEFAULT musi być zdefiniowane przed użyciem definicji POLICY</translation>
+ </message>
+ <message>
+ <source>Unable to begin transaction</source>
+ <translation>Nie można rozpocząć transakcji</translation>
+ </message>
+ <message>
+ <source>Unable to commit transaction</source>
+ <translation>Nie można dokonać transakcji</translation>
+ </message>
+ <message>
+ <source>Unable to rollback transaction</source>
+ <translation>Nie można wycofać transakcji</translation>
+ </message>
+</context>
+<context>
+ <name>QSymSQLResult</name>
+ <message>
+ <source>Error retrieving column count</source>
+ <translation>Błąd pobierania liczby kolumn</translation>
+ </message>
+ <message>
+ <source>Error retrieving column name</source>
+ <translation>Błąd pobierania nazwy kolumny</translation>
+ </message>
+ <message>
+ <source>Error retrieving column type</source>
+ <translation>Błąd pobierania typu kolumny</translation>
+ </message>
+ <message>
+ <source>Unable to fetch row</source>
+ <translation>Nie można pobrać wiersza danych</translation>
+ </message>
+ <message>
+ <source>Unable to execute statement</source>
+ <translation>Nie można wykonać polecenia</translation>
+ </message>
+ <message>
+ <source>Statement is not prepared</source>
+ <translation>Polecenie nie jest przygotowane</translation>
+ </message>
+ <message>
+ <source>Unable to reset statement</source>
+ <translation>Nie można zresetować polecenia</translation>
+ </message>
+ <message>
+ <source>Unable to bind parameters</source>
+ <translation>Nie można powiązać parametrów</translation>
+ </message>
+ <message>
+ <source>Parameter count mismatch</source>
+ <translation>Niezgodna liczba parametrów</translation>
+ </message>
+</context>
+<context>
+ <name>QSymbianSocketEngine</name>
+ <message>
+ <source>Unable to initialize non-blocking socket</source>
+ <translation>Nie można zainicjalizować gniazda w trybie nieblokującym</translation>
+ </message>
+ <message>
+ <source>Unable to initialize broadcast socket</source>
+ <translation>Nie można zainicjalizować gniazda rozsyłającego</translation>
+ </message>
+ <message>
+ <source>Attempt to use IPv6 socket on a platform with no IPv6 support</source>
+ <translation>Próba użycia IPv6 na platformie bez obsługi IPv6</translation>
+ </message>
+ <message>
+ <source>The remote host closed the connection</source>
+ <translation>Zdalny host zakończył połączenie</translation>
+ </message>
+ <message>
+ <source>Network operation timed out</source>
+ <translation>Przekroczony czas operacji sieciowej</translation>
+ </message>
+ <message>
+ <source>Out of resources</source>
+ <translation>Zasoby wyczerpane</translation>
+ </message>
+ <message>
+ <source>Unsupported socket operation</source>
+ <translation>Nieobsługiwana operacja gniazda</translation>
+ </message>
+ <message>
+ <source>Protocol type not supported</source>
+ <translation>Nieobsługiwany typ protokołu</translation>
+ </message>
+ <message>
+ <source>Invalid socket descriptor</source>
+ <translation>Niepoprawny opis gniazda</translation>
+ </message>
+ <message>
+ <source>Host unreachable</source>
+ <translation>Host niedostępny</translation>
+ </message>
+ <message>
+ <source>Network unreachable</source>
+ <translation>Sieć niedostępna</translation>
+ </message>
+ <message>
+ <source>Permission denied</source>
+ <translation>Brak uprawnień</translation>
+ </message>
+ <message>
+ <source>Connection timed out</source>
+ <translation>Przekroczony czas połączenia</translation>
+ </message>
+ <message>
+ <source>Connection refused</source>
+ <translation>Połączenie odrzucone</translation>
+ </message>
+ <message>
+ <source>The bound address is already in use</source>
+ <translation>Adres jest aktualnie w użyciu</translation>
+ </message>
+ <message>
+ <source>The address is not available</source>
+ <translation>Adres nie jest dostępny</translation>
+ </message>
+ <message>
+ <source>The address is protected</source>
+ <translation>Adres jest zabezpieczony</translation>
+ </message>
+ <message>
+ <source>Datagram was too large to send</source>
+ <translation>Datagram za długi do wysłania</translation>
+ </message>
+ <message>
+ <source>Unable to send a message</source>
+ <translation>Nie można wysłać wiadomości</translation>
+ </message>
+ <message>
+ <source>Unable to receive a message</source>
+ <translation>Nie można odebrać wiadomości</translation>
+ </message>
+ <message>
+ <source>Unable to write</source>
+ <translation>Nie można zapisać</translation>
+ </message>
+ <message>
+ <source>Network error</source>
+ <translation>Błąd sieci</translation>
+ </message>
+ <message>
+ <source>Another socket is already listening on the same port</source>
+ <translation>Inne gniazdo nasłuchuje już na tym porcie</translation>
+ </message>
+ <message>
+ <source>Operation on non-socket</source>
+ <translation>Operacja na nieprawidłowym gnieździe</translation>
+ </message>
+ <message>
+ <source>The proxy type is invalid for this operation</source>
+ <translation>Typ pośrednika nie jest poprawny dla tej operacji</translation>
+ </message>
+ <message>
+ <source>The address is invalid for this operation</source>
+ <translation>Niepoprawny adres dla tej operacji</translation>
+ </message>
+ <message>
+ <source>The specified network session is not opened</source>
+ <translation>Podana sesja sieciowa nie jest otwarta</translation>
+ </message>
+ <message>
+ <source>Unknown error</source>
+ <translation>Nieznany błąd</translation>
+ </message>
+</context>
+<context>
<name>QSystemSemaphore</name>
<message>
<source>%1: out of resources</source>
@@ -6753,6 +7001,10 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>%1: nie istnieje</translation>
</message>
<message>
+ <source>%1: name error</source>
+ <translation>%1: błąd nazwy</translation>
+ </message>
+ <message>
<source>%1: unknown error %2</source>
<translation>%1: nieznany błąd %2</translation>
</message>
@@ -6843,12 +7095,30 @@ Proszę wybrać inną nazwę pliku.</translation>
<name>QUndoGroup</name>
<message>
<source>Redo</source>
- <translation>Przywróć</translation>
+ <translation type="obsolete">Przywróć</translation>
</message>
<message>
<source>Undo</source>
+ <translation type="obsolete">Cofnij</translation>
+ </message>
+ <message>
+ <source>Undo %1</source>
+ <translation>Cofnij %1</translation>
+ </message>
+ <message>
+ <source>Undo</source>
+ <comment>Default text for undo action</comment>
<translation>Cofnij</translation>
</message>
+ <message>
+ <source>Redo %1</source>
+ <translation>Przywróć %1</translation>
+ </message>
+ <message>
+ <source>Redo</source>
+ <comment>Default text for redo action</comment>
+ <translation>Przywróć</translation>
+ </message>
</context>
<context>
<name>QUndoModel</name>
@@ -6861,12 +7131,30 @@ Proszę wybrać inną nazwę pliku.</translation>
<name>QUndoStack</name>
<message>
<source>Redo</source>
- <translation>Przywróć</translation>
+ <translation type="obsolete">Przywróć</translation>
</message>
<message>
<source>Undo</source>
+ <translation type="obsolete">Cofnij</translation>
+ </message>
+ <message>
+ <source>Undo %1</source>
+ <translation>Cofnij %1</translation>
+ </message>
+ <message>
+ <source>Undo</source>
+ <comment>Default text for undo action</comment>
<translation>Cofnij</translation>
</message>
+ <message>
+ <source>Redo %1</source>
+ <translation>Przywróć %1</translation>
+ </message>
+ <message>
+ <source>Redo</source>
+ <comment>Default text for redo action</comment>
+ <translation>Przywróć</translation>
+ </message>
</context>
<context>
<name>QUnicodeControlCharacterMenu</name>
@@ -6922,6 +7210,10 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>Prośba anulowana</translation>
</message>
<message>
+ <source>Request canceled</source>
+ <translation>Prośba anulowana</translation>
+ </message>
+ <message>
<source>Request blocked</source>
<translation>Prośba zablokowana</translation>
</message>
@@ -6941,6 +7233,10 @@ Proszę wybrać inną nazwę pliku.</translation>
<source>File does not exist</source>
<translation>Plik nie istnieje</translation>
</message>
+ <message>
+ <source>Loading is handled by the media engine</source>
+ <translation>Ładowanie jest obsługiwane przez silnik mediów</translation>
+ </message>
</context>
<context>
<name>QWebPage</name>
@@ -6957,7 +7253,7 @@ Proszę wybrać inną nazwę pliku.</translation>
<message>
<source>Reset</source>
<comment>default label for Reset buttons in forms on web pages</comment>
- <translation>Wyczyść</translation>
+ <translation>Zresetuj</translation>
</message>
<message>
<source>Choose File</source>
@@ -6970,6 +7266,11 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>Nie zaznaczono pliku</translation>
</message>
<message>
+ <source>Details</source>
+ <comment>text to display in &lt;details&gt; tag when it has no &lt;summary&gt; child</comment>
+ <translation>Szczegóły</translation>
+ </message>
+ <message>
<source>Open in New Window</source>
<comment>Open in New Window context menu item</comment>
<translation>Otwórz w nowym oknie</translation>
@@ -7000,6 +7301,61 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>Skopiuj obrazek</translation>
</message>
<message>
+ <source>Copy Image Address</source>
+ <comment>Copy Image Address menu item</comment>
+ <translation>Skopiuj adres obrazka</translation>
+ </message>
+ <message>
+ <source>Open Video</source>
+ <comment>Open Video in New Window</comment>
+ <translation>Otwórz wideo</translation>
+ </message>
+ <message>
+ <source>Open Audio</source>
+ <comment>Open Audio in New Window</comment>
+ <translation>Otwórz dźwięk</translation>
+ </message>
+ <message>
+ <source>Copy Video</source>
+ <comment>Copy Video Link Location</comment>
+ <translation>Skopiuj wideo</translation>
+ </message>
+ <message>
+ <source>Copy Audio</source>
+ <comment>Copy Audio Link Location</comment>
+ <translation>Skopiuj dźwięk</translation>
+ </message>
+ <message>
+ <source>Toggle Controls</source>
+ <comment>Toggle Media Controls</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Toggle Loop</source>
+ <comment>Toggle Media Loop Playback</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Enter Fullscreen</source>
+ <comment>Switch Video to Fullscreen</comment>
+ <translation>Pełny ekran</translation>
+ </message>
+ <message>
+ <source>Play</source>
+ <comment>Play</comment>
+ <translation>Odtwórz</translation>
+ </message>
+ <message>
+ <source>Pause</source>
+ <comment>Pause</comment>
+ <translation>Pauza</translation>
+ </message>
+ <message>
+ <source>Mute</source>
+ <comment>Mute</comment>
+ <translation>Wycisz</translation>
+ </message>
+ <message>
<source>Open Frame</source>
<comment>Open Frame in New Window context menu item</comment>
<translation>Otwórz ramkę</translation>
@@ -7040,6 +7396,11 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>Wklej</translation>
</message>
<message>
+ <source>Select All</source>
+ <comment>Select All context menu item</comment>
+ <translation>Zaznacz wszystko</translation>
+ </message>
+ <message>
<source>No Guesses Found</source>
<comment>No Guesses Found context menu item</comment>
<translation>Nie odnaleziono podpowiedzi</translation>
@@ -7379,7 +7740,7 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
<message>
<source>Bad HTTP request</source>
- <translation>Niepoprawna komenda HTTP</translation>
+ <translation type="obsolete">Niepoprawna komenda HTTP</translation>
</message>
<message>
<source>This is a searchable index. Enter search keywords: </source>
@@ -7532,7 +7893,7 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
<message>
<source>Select all</source>
- <translation>Zaznacz wszystko</translation>
+ <translation type="obsolete">Zaznacz wszystko</translation>
</message>
<message>
<source>Select to the next character</source>
@@ -8029,6 +8390,94 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
</context>
<context>
+ <name>QmlJSDebugger::LiveSelectionTool</name>
+ <message>
+ <source>Items</source>
+ <translation>Elementy</translation>
+ </message>
+</context>
+<context>
+ <name>QmlJSDebugger::QmlToolBar</name>
+ <message>
+ <source>Inspector Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Play/Pause Animations</source>
+ <translation>Odtwórz / wstrzymaj animacje</translation>
+ </message>
+ <message>
+ <source>Select</source>
+ <translation>Wybierz</translation>
+ </message>
+ <message>
+ <source>Select (Marquee)</source>
+ <translation>Wybierz (Marquee)</translation>
+ </message>
+ <message>
+ <source>Zoom</source>
+ <translation>Powiększ</translation>
+ </message>
+ <message>
+ <source>Color Picker</source>
+ <translation>Wybieracz kolorów</translation>
+ </message>
+ <message>
+ <source>Apply Changes to QML Viewer</source>
+ <translation>Zastosuj zmiany do QML Viewera</translation>
+ </message>
+ <message>
+ <source>Apply Changes to Document</source>
+ <translation>Zastosuj zmiany do dokumentu</translation>
+ </message>
+ <message>
+ <source>Tools</source>
+ <translation>Narzędzia</translation>
+ </message>
+ <message>
+ <source>1x</source>
+ <translation>1x</translation>
+ </message>
+ <message>
+ <source>0.5x</source>
+ <translation>0.5x</translation>
+ </message>
+ <message>
+ <source>0.25x</source>
+ <translation>0.25x</translation>
+ </message>
+ <message>
+ <source>0.125x</source>
+ <translation>0.125x</translation>
+ </message>
+ <message>
+ <source>0.1x</source>
+ <translation>0.1x</translation>
+ </message>
+</context>
+<context>
+ <name>QmlJSDebugger::ToolBarColorBox</name>
+ <message>
+ <source>Copy Color</source>
+ <translation>Skopiuj kolor</translation>
+ </message>
+</context>
+<context>
+ <name>QmlJSDebugger::ZoomTool</name>
+ <message>
+ <source>Zoom to &amp;100%</source>
+ <translation>Powiększ do &amp;100%</translation>
+ </message>
+ <message>
+ <source>Zoom In</source>
+ <translation>Powiększ</translation>
+ </message>
+ <message>
+ <source>Zoom Out</source>
+ <translation>Pomniejsz</translation>
+ </message>
+</context>
+<context>
<name>QtXmlPatterns</name>
<message>
<source>Network timeout.</source>
@@ -8351,6 +8800,10 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>Cecha &quot;Import modułu&quot; nie jest obsługiwana</translation>
</message>
<message>
+ <source>The namespace for a user defined function cannot be empty (try the predefined prefix %1, which exists for cases like this)</source>
+ <translation>Przestrzeń nazw dla funkcji zdefiniowanej przez użytkownika nie może być pusta (spróbuj predefiniowany przedrostek %1, który stworzono specjalnie do takich sytuacji)</translation>
+ </message>
+ <message>
<source>The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases.</source>
<translation>Przestrzeń nazw %1 jest zarezerwowana, dlatego funkcje zdefiniowane przez użytkownika nie mogą jej użyć. Spróbuj predefiniowany przedrostek %2, który istnieje w takich przypadkach.</translation>
</message>
@@ -8428,7 +8881,7 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
<message>
<source>The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this)</source>
- <translation>Przestrzeń nazw dla funkcji zdefiniowanej przez użytkownika nie może być pusta (spróbuj predefiniowany przedrostek %1, który stworzono specjalnie do takich sytuacji)</translation>
+ <translation type="obsolete">Przestrzeń nazw dla funkcji zdefiniowanej przez użytkownika nie może być pusta (spróbuj predefiniowany przedrostek %1, który stworzono specjalnie do takich sytuacji)</translation>
</message>
<message>
<source>An argument with name %1 has already been declared. Every argument name must be unique.</source>
@@ -9168,7 +9621,11 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
<message>
<source>Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type.</source>
- <translation>Model zawartości typu złożonego %1 posiada element %2 więc nie może być on wywiedziony poprzez rozszerzenie niepustego typu.</translation>
+ <translation type="obsolete">Model zawartości typu złożonego %1 posiada element %2 więc nie może być on wywiedziony poprzez rozszerzenie niepustego typu.</translation>
+ </message>
+ <message>
+ <source>Content model of complex type %1 contains %2 element, so it cannot be derived by extension from a non-empty type.</source>
+ <translation>Model zawartości typu złożonego %1, posiada element %2, więc nie może być on wywiedziony poprzez rozszerzenie niepustego typu.</translation>
</message>
<message>
<source>Complex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model.</source>
@@ -9757,7 +10214,7 @@ Proszę wybrać inną nazwę pliku.</translation>
</message>
<message>
<source>Element %1 cannot contain other elements, as it has a fixed content.</source>
- <translation>Element %1 nie może zawierać innych elementów ponieważ posiada on stałą zawartość.</translation>
+ <translation type="obsolete">Element %1 nie może zawierać innych elementów ponieważ posiada on stałą zawartość.</translation>
</message>
<message>
<source>Specified type %1 is not validly substitutable with element type %2.</source>
@@ -9792,6 +10249,10 @@ Proszę wybrać inną nazwę pliku.</translation>
<translation>Element %1 zawiera niedozwolony text.</translation>
</message>
<message>
+ <source>Element %1 cannot contain other elements, as it has fixed content.</source>
+ <translation>Element %1 nie może zawierać innych elementów, ponieważ posiada on stałą zawartość.</translation>
+ </message>
+ <message>
<source>Element %1 is missing required attribute %2.</source>
<translation>Brak wymaganego atrybutu %2 w elemencie %1.</translation>
</message>
diff --git a/translations/qt_ru.ts b/translations/qt_ru.ts
index 19c0544..7dd4320 100644
--- a/translations/qt_ru.ts
+++ b/translations/qt_ru.ts
@@ -1264,7 +1264,7 @@ to
</message>
<message>
<source>Unable to rollback transaction</source>
- <translation>Невозможно отозвать транзакцию</translation>
+ <translation>Невозможно откатить транзакцию</translation>
</message>
<message>
<source>Unable to set autocommit</source>
@@ -3262,7 +3262,7 @@ Please verify the correct directory name was given.</source>
</message>
<message>
<source>Unable to rollback transaction</source>
- <translation>Невозможно отозвать транзакцию</translation>
+ <translation>Невозможно откатить транзакцию</translation>
</message>
</context>
<context>
@@ -3569,7 +3569,7 @@ Please verify the correct directory name was given.</source>
</message>
<message>
<source>Unable to rollback transaction</source>
- <translation>Невозможно отозвать транзакцию</translation>
+ <translation>Невозможно откатить транзакцию</translation>
</message>
</context>
<context>
@@ -3722,6 +3722,10 @@ Please verify the correct directory name was given.</source>
<source>Actions</source>
<translation>Действия</translation>
</message>
+ <message>
+ <source>Corner Toolbar</source>
+ <translation>Угловая панель</translation>
+ </message>
</context>
<context>
<name>QMessageBox</name>
@@ -4062,7 +4066,7 @@ Please verify the correct directory name was given.</source>
</message>
<message>
<source>Unable to rollback transaction</source>
- <translation>Невозможно отозвать транзакцию</translation>
+ <translation>Невозможно откатить транзакцию</translation>
</message>
</context>
<context>
@@ -4116,7 +4120,7 @@ Please verify the correct directory name was given.</source>
</message>
<message>
<source>Unable to rollback transaction</source>
- <translation>Невозможно отозвать транзакцию</translation>
+ <translation>Невозможно откатить транзакцию</translation>
</message>
<message>
<source>Unable to enable autocommit</source>
@@ -4212,7 +4216,7 @@ Please verify the correct directory name was given.</source>
</message>
<message>
<source>Could not rollback transaction</source>
- <translation>Не удалось отозвать транзакцию</translation>
+ <translation>Не удалось откатить транзакцию</translation>
</message>
<message>
<source>Unable to subscribe</source>
@@ -5020,7 +5024,7 @@ Please choose a different file name.</source>
</message>
<message>
<source>Unable to rollback transaction</source>
- <translation>Невозможно отозвать транзакцию</translation>
+ <translation>Невозможно откатить транзакцию</translation>
</message>
</context>
<context>
@@ -5054,7 +5058,7 @@ Please choose a different file name.</source>
</message>
<message>
<source>Unable to rollback transaction</source>
- <translation>Невозможно отозвать транзакцию</translation>
+ <translation>Невозможно откатить транзакцию</translation>
</message>
</context>
<context>
@@ -5510,15 +5514,15 @@ Please choose a different file name.</source>
<message>
<source>Space</source>
<extracomment>This and all following &quot;incomprehensible&quot; strings in QShortcut context are key names. Please use the localized names appearing on actual keyboards or whatever is commonly used.</extracomment>
- <translation type="unfinished">Пробел</translation>
+ <translation>Пробел</translation>
</message>
<message>
<source>Esc</source>
- <translation type="unfinished">Esc</translation>
+ <translation>Esc</translation>
</message>
<message>
<source>Tab</source>
- <translation type="unfinished">Tab</translation>
+ <translation>Tab</translation>
</message>
<message>
<source>Backtab</source>
@@ -5538,67 +5542,67 @@ Please choose a different file name.</source>
</message>
<message>
<source>Ins</source>
- <translation type="unfinished">Ins</translation>
+ <translation>Ins</translation>
</message>
<message>
<source>Del</source>
- <translation type="unfinished">Del</translation>
+ <translation>Del</translation>
</message>
<message>
<source>Pause</source>
- <translation type="unfinished">Pause</translation>
+ <translation>Pause</translation>
</message>
<message>
<source>Print</source>
- <translation type="unfinished">Print</translation>
+ <translation>Print</translation>
</message>
<message>
<source>SysReq</source>
- <translation type="unfinished">SysReq</translation>
+ <translation>SysReq</translation>
</message>
<message>
<source>Home</source>
- <translation type="unfinished">Home</translation>
+ <translation>Home</translation>
</message>
<message>
<source>End</source>
- <translation type="unfinished">End</translation>
+ <translation>End</translation>
</message>
<message>
<source>Left</source>
- <translation type="unfinished">Влево</translation>
+ <translation>Влево</translation>
</message>
<message>
<source>Up</source>
- <translation type="unfinished">Вверх</translation>
+ <translation>Вверх</translation>
</message>
<message>
<source>Right</source>
- <translation type="unfinished">Вправо</translation>
+ <translation>Вправо</translation>
</message>
<message>
<source>Down</source>
- <translation type="unfinished">Вниз</translation>
+ <translation>Вниз</translation>
</message>
<message>
<source>PgUp</source>
- <translation type="unfinished">PgUp</translation>
+ <translation>PgUp</translation>
</message>
<message>
<source>PgDown</source>
- <translation type="unfinished">PgDown</translation>
+ <translation>PgDown</translation>
</message>
<message>
<source>CapsLock</source>
- <translation type="unfinished">CapsLock</translation>
+ <translation>CapsLock</translation>
</message>
<message>
<source>NumLock</source>
- <translation type="unfinished">NumLock</translation>
+ <translation>NumLock</translation>
</message>
<message>
<source>ScrollLock</source>
- <translation type="unfinished">ScrollLock</translation>
+ <translation>ScrollLock</translation>
</message>
<message>
<source>Menu</source>
@@ -5626,15 +5630,15 @@ Please choose a different file name.</source>
</message>
<message>
<source>Volume Down</source>
- <translation type="unfinished">Тише</translation>
+ <translation>Тише</translation>
</message>
<message>
<source>Volume Mute</source>
- <translation type="unfinished">Выключить звук</translation>
+ <translation>Выключить звук</translation>
</message>
<message>
<source>Volume Up</source>
- <translation type="unfinished">Громче</translation>
+ <translation>Громче</translation>
</message>
<message>
<source>Bass Boost</source>
@@ -5696,7 +5700,7 @@ Please choose a different file name.</source>
</message>
<message>
<source>Standby</source>
- <translation type="unfinished">Режим ожидания</translation>
+ <translation>Режим ожидания</translation>
</message>
<message>
<source>Open URL</source>
@@ -5776,31 +5780,31 @@ Please choose a different file name.</source>
</message>
<message>
<source>Monitor Brightness Up</source>
- <translation type="unfinished">Увеличить яркость монитора</translation>
+ <translation>Увеличить яркость монитора</translation>
</message>
<message>
<source>Monitor Brightness Down</source>
- <translation type="unfinished">Уменьшить яркость монитора</translation>
+ <translation>Уменьшить яркость монитора</translation>
</message>
<message>
<source>Keyboard Light On/Off</source>
- <translation type="unfinished">Вкл./Откл. подсветку клавиатуры</translation>
+ <translation>Вкл./Откл. подсветку клавиатуры</translation>
</message>
<message>
<source>Keyboard Brightness Up</source>
- <translation type="unfinished">Увеличить яркость подсветки клавиатуры</translation>
+ <translation>Увеличить яркость подсветки клавиатуры</translation>
</message>
<message>
<source>Keyboard Brightness Down</source>
- <translation type="unfinished">Уменьшить яркость подсветки клавиатуры</translation>
+ <translation>Уменьшить яркость подсветки клавиатуры</translation>
</message>
<message>
<source>Power Off</source>
- <translation type="unfinished">Отключение питания</translation>
+ <translation>Отключение питания</translation>
</message>
<message>
<source>Wake Up</source>
- <translation type="unfinished">Пробуждение</translation>
+ <translation>Пробуждение</translation>
</message>
<message>
<source>Eject</source>
@@ -5856,7 +5860,7 @@ Please choose a different file name.</source>
</message>
<message>
<source>Back Forward</source>
- <translation type="unfinished"></translation>
+ <translation type="unfinished">Назад/вперёд</translation>
</message>
<message>
<source>Application Left</source>
@@ -5900,7 +5904,7 @@ Please choose a different file name.</source>
</message>
<message>
<source>Display</source>
- <translation type="unfinished"></translation>
+ <translation type="unfinished">Отобразить</translation>
</message>
<message>
<source>DOS</source>
@@ -6355,7 +6359,7 @@ Please choose a different file name.</source>
<message>
<source>Hangup</source>
<extracomment>Button to end a call (note: a separate button is used to start the call)</extracomment>
- <translation type="unfinished">Положить трубку</translation>
+ <translation type="unfinished">Отбой</translation>
</message>
<message>
<source>Flip</source>
@@ -6363,23 +6367,23 @@ Please choose a different file name.</source>
</message>
<message>
<source>Ctrl</source>
- <translation></translation>
+ <translation>Ctrl</translation>
</message>
<message>
<source>Shift</source>
- <translation></translation>
+ <translation>Shift</translation>
</message>
<message>
<source>Alt</source>
- <translation></translation>
+ <translation>Alt</translation>
</message>
<message>
<source>Meta</source>
- <translation></translation>
+ <translation>Meta</translation>
</message>
<message>
<source>+</source>
- <translation></translation>
+ <translation>+</translation>
</message>
<message>
<source>F%1</source>
@@ -6720,6 +6724,72 @@ Please choose a different file name.</source>
</message>
</context>
<context>
+ <name>QSymSQLDriver</name>
+ <message>
+ <source>Invalid option: </source>
+ <translation>Неверный параметр: </translation>
+ </message>
+ <message>
+ <source>Error opening database</source>
+ <translation>Ошибка открытия базы данных</translation>
+ </message>
+ <message>
+ <source>POLICY_DB_DEFAULT must be defined before any other POLICY definitions can be used</source>
+ <translation>POLICY_DB_DEFAULT должна быть задана до начала использования других определений POLICY</translation>
+ </message>
+ <message>
+ <source>Unable to begin transaction</source>
+ <translation>Невозможно начать транзакцию</translation>
+ </message>
+ <message>
+ <source>Unable to commit transaction</source>
+ <translation>Невозможно завершить транзакцию</translation>
+ </message>
+ <message>
+ <source>Unable to rollback transaction</source>
+ <translation>Невозможно откатить транзакцию</translation>
+ </message>
+</context>
+<context>
+ <name>QSymSQLResult</name>
+ <message>
+ <source>Error retrieving column count</source>
+ <translation>Ошибка получения количества колонок</translation>
+ </message>
+ <message>
+ <source>Error retrieving column name</source>
+ <translation>Ошибка получения названия колонки</translation>
+ </message>
+ <message>
+ <source>Error retrieving column type</source>
+ <translation>Ошибка получения типа колонки</translation>
+ </message>
+ <message>
+ <source>Unable to fetch row</source>
+ <translation>Невозможно получить строку</translation>
+ </message>
+ <message>
+ <source>Unable to execute statement</source>
+ <translation>Невозможно выполнить выражение</translation>
+ </message>
+ <message>
+ <source>Statement is not prepared</source>
+ <translation>Выражение не подготовлено</translation>
+ </message>
+ <message>
+ <source>Unable to reset statement</source>
+ <translation>Невозможно сбросить выражение</translation>
+ </message>
+ <message>
+ <source>Unable to bind parameters</source>
+ <translation>Невозможно привязать параметр</translation>
+ </message>
+ <message>
+ <source>Parameter count mismatch</source>
+ <translation>Количество параметров не совпадает</translation>
+ </message>
+</context>
+<context>
<name>QSymbianSocketEngine</name>
<message>
<source>Unable to initialize non-blocking socket</source>
@@ -7409,12 +7479,12 @@ Please choose a different file name.</source>
<message>
<source>Toggle Controls</source>
<comment>Toggle Media Controls</comment>
- <translation type="unfinished">Вкл/выкл управление</translation>
+ <translation>Вкл/выкл управление</translation>
</message>
<message>
<source>Toggle Loop</source>
<comment>Toggle Media Loop Playback</comment>
- <translation type="unfinished">Вкл/выкл зацикленность</translation>
+ <translation>Вкл/выкл зацикленность</translation>
</message>
<message>
<source>Enter Fullscreen</source>
@@ -8292,7 +8362,7 @@ Please choose a different file name.</source>
<name>QmlJSDebugger::ToolBox</name>
<message>
<source>Qt Quick Toolbox</source>
- <translation>Инструментарий Qt Quick</translation>
+ <translation type="obsolete">Инструментарий Qt Quick</translation>
</message>
</context>
<context>
@@ -10134,7 +10204,7 @@ Please choose a different file name.</source>
</message>
<message>
<source>&apos;%1&apos; attribute contains invalid QName content: %2.</source>
- <translation type="unfinished">Атрибут `%1` имеет некорректное содержимое QName: %2.</translation>
+ <translation>Атрибут «%1» имеет некорректное содержимое QName: %2.</translation>
</message>
</context>
</TS>
diff --git a/translations/qt_uk.ts b/translations/qt_uk.ts
index c3cfec0..44f6d69 100644
--- a/translations/qt_uk.ts
+++ b/translations/qt_uk.ts
@@ -9,10 +9,21 @@
</message>
</context>
<context>
+ <name>Debugger::JSAgentWatchData</name>
+ <message>
+ <source>[Array of length %1]</source>
+ <translation>[Масив довжини %1]</translation>
+ </message>
+ <message>
+ <source>&lt;undefined&gt;</source>
+ <translation>&lt;не визначено&gt;</translation>
+ </message>
+</context>
+<context>
<name>FakeReply</name>
<message>
- <source>Fake error !</source>
- <translation>Несправжня помилка !</translation>
+ <source>Fake error!</source>
+ <translation>Несправжня помилка!</translation>
</message>
<message>
<source>Invalid URL</source>
@@ -397,7 +408,7 @@ have libgstreamer-plugins-base installed.</source>
</message>
<message>
<source>Reflections delay (ms)</source>
- <extracomment>ReflectionsDelay: Amount of delay between the arrival the direct path from the source and the arrival of the first reflection.</extracomment>
+ <extracomment>ReflectionsDelay: Amount of delay between the arrival of the direct path from the source and the arrival of the first reflection.</extracomment>
<translation>Затримка відбиття (мс)</translation>
</message>
<message>
@@ -412,7 +423,7 @@ have libgstreamer-plugins-base installed.</source>
</message>
<message>
<source>Reverb level (mB)</source>
- <extracomment>ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.</extracomment>
+ <extracomment>ReverbLevel: Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.</extracomment>
<translation>Рівень луни (мБ)</translation>
</message>
<message>
@@ -470,7 +481,7 @@ have libgstreamer-plugins-base installed.</source>
<translation>Гучність: %1%</translation>
</message>
<message>
- <source>Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%</source>
+ <source>Use this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%</source>
<translation>Використовуйте цей повзунок для регулювання гучності. Крайня ліва позиція - 0%, крайня права - %1%</translation>
</message>
<message>
@@ -1062,6 +1073,14 @@ to
<context>
<name>QAccessibleButton</name>
<message>
+ <source>Uncheck</source>
+ <translation>Зняти відмітку</translation>
+ </message>
+ <message>
+ <source>Check</source>
+ <translation>Відмітити</translation>
+ </message>
+ <message>
<source>Press</source>
<translation>Натисніть</translation>
</message>
@@ -2450,6 +2469,10 @@ to
<source>Cannot create %1 for output</source>
<translation>Неможливо створити %1 для виводу</translation>
</message>
+ <message>
+ <source>No file engine available or engine does not support UnMapExtension</source>
+ <translation>Жодний файловий рушій не є доступним або підтримує UnMapExtension</translation>
+ </message>
</context>
<context>
<name>QFileDialog</name>
@@ -3411,6 +3434,18 @@ Do you want to delete it anyway?</source>
<source>Cannot resolve symbol &quot;%1&quot; in %2: %3</source>
<translation>Неможливо розв’язати символ &quot;%1&quot; в %2: %3</translation>
</message>
+ <message>
+ <source>&apos;%1&apos; is not an ELF object (%2)</source>
+ <translation>&apos;%1&apos; не є об&apos;єктом ELF (%2)</translation>
+ </message>
+ <message>
+ <source>&apos;%1&apos; is not an ELF object</source>
+ <translation>&apos;%1&apos; не є об&apos;єктом ELF</translation>
+ </message>
+ <message>
+ <source>&apos;%1&apos; is an invalid ELF object (%2)</source>
+ <translation>&apos;%1&apos; є неправильним об&apos;єктом ELF (%2)</translation>
+ </message>
</context>
<context>
<name>QLineEdit</name>
@@ -3508,6 +3543,10 @@ Do you want to delete it anyway?</source>
<source>%1: Unknown error %2</source>
<translation>%1: Невідома помилка %2</translation>
</message>
+ <message>
+ <source>%1: Access denied</source>
+ <translation>%1: Доступ заборонено</translation>
+ </message>
</context>
<context>
<name>QMYSQLDriver</name>
@@ -3682,6 +3721,10 @@ Do you want to delete it anyway?</source>
<source>Actions</source>
<translation>Дії</translation>
</message>
+ <message>
+ <source>Corner Toolbar</source>
+ <translation>Кутова панель</translation>
+ </message>
</context>
<context>
<name>QMessageBox</name>
@@ -3849,10 +3892,6 @@ Do you want to delete it anyway?</source>
<context>
<name>QNetworkAccessDataBackend</name>
<message>
- <source>Operation not supported on %1</source>
- <translation>Непідтримувана для %1 операція</translation>
- </message>
- <message>
<source>Invalid URI: %1</source>
<translation>Неправильний URI: %1</translation>
</message>
@@ -3947,6 +3986,10 @@ Do you want to delete it anyway?</source>
<translation>Помилка мережевої сесії.</translation>
</message>
<message>
+ <source>backend start error.</source>
+ <translation>помилка запуску драйвера.</translation>
+ </message>
+ <message>
<source>Temporary network failure.</source>
<translation>Тимчасовий збій мережі.</translation>
</message>
@@ -4139,6 +4182,10 @@ Do you want to delete it anyway?</source>
<source>invalid query: &quot;%1&quot;</source>
<translation>неправильний запит &quot;%1&quot;</translation>
</message>
+ <message>
+ <source>Host not found</source>
+ <translation>Вузол не знайдено</translation>
+ </message>
</context>
<context>
<name>QPPDOptionsModel</name>
@@ -5424,10 +5471,6 @@ Do you want to overwrite it?</source>
<translation>%1: невідома помилка %2</translation>
</message>
<message>
- <source>%1: key error</source>
- <translation>%1: помилка ключа</translation>
- </message>
- <message>
<source>%1: unable to make key</source>
<translation>%1: неможливо створити ключ</translation>
</message>
@@ -5452,6 +5495,10 @@ Do you want to overwrite it?</source>
<translation>%1: обмеження розміру встановлені системою</translation>
</message>
<message>
+ <source>%1: bad name</source>
+ <translation>%1: пагане ім&apos;я</translation>
+ </message>
+ <message>
<source>%1: not attached</source>
<translation>%1: не прикріплено</translation>
</message>
@@ -6430,8 +6477,8 @@ Do you want to overwrite it?</source>
<context>
<name>QSoftKeyManager</name>
<message>
- <source>Ok</source>
- <translation>Ok</translation>
+ <source>OK</source>
+ <translation>OK</translation>
</message>
<message>
<source>Select</source>
@@ -6675,6 +6722,187 @@ Do you want to overwrite it?</source>
</message>
</context>
<context>
+ <name>QSymSQLDriver</name>
+ <message>
+ <source>Invalid option: </source>
+ <translation>Неправильна опція: </translation>
+ </message>
+ <message>
+ <source>Error opening database</source>
+ <translation>Помилка відкриття бази даних</translation>
+ </message>
+ <message>
+ <source>POLICY_DB_DEFAULT must be defined before any other POLICY definitions can be used</source>
+ <translation>POLICY_DB_DEFAULT повинна бути визначена до того, як будь-які інші визначення POLICY можуть бути використані</translation>
+ </message>
+ <message>
+ <source>Unable to begin transaction</source>
+ <translation>Неможливо почати транзакцію</translation>
+ </message>
+ <message>
+ <source>Unable to commit transaction</source>
+ <translation>Неможливо завершити транзакцію</translation>
+ </message>
+ <message>
+ <source>Unable to rollback transaction</source>
+ <translation>Неможливо відкотити транзакцію</translation>
+ </message>
+</context>
+<context>
+ <name>QSymSQLResult</name>
+ <message>
+ <source>Error retrieving column count</source>
+ <translation>Помилка отримання кількості стовпців</translation>
+ </message>
+ <message>
+ <source>Error retrieving column name</source>
+ <translation>Помилка отримання назви стовпця</translation>
+ </message>
+ <message>
+ <source>Error retrieving column type</source>
+ <translation>Помилка отримання типу стовпця</translation>
+ </message>
+ <message>
+ <source>Unable to fetch row</source>
+ <translation>Неможливо отримати рядок</translation>
+ </message>
+ <message>
+ <source>Unable to execute statement</source>
+ <translation>Неможливо виконати вираз</translation>
+ </message>
+ <message>
+ <source>Statement is not prepared</source>
+ <translation>Вираз не підготовлено</translation>
+ </message>
+ <message>
+ <source>Unable to reset statement</source>
+ <translation>Неможливо скинути вираз</translation>
+ </message>
+ <message>
+ <source>Unable to bind parameters</source>
+ <translation>Неможливо прив&apos;язати параметри</translation>
+ </message>
+ <message>
+ <source>Parameter count mismatch</source>
+ <translation>Кількість параметрів не збігається</translation>
+ </message>
+</context>
+<context>
+ <name>QSymbianSocketEngine</name>
+ <message>
+ <source>Unable to initialize non-blocking socket</source>
+ <translation>Неможливо ініціалізувати неблокувальний сокет</translation>
+ </message>
+ <message>
+ <source>Unable to initialize broadcast socket</source>
+ <translation>Неможливо ініціалізувати широкомовний сокет</translation>
+ </message>
+ <message>
+ <source>Attempt to use IPv6 socket on a platform with no IPv6 support</source>
+ <translation>Спроба використати сокет IPv6 на платформі без підтримки IPv6</translation>
+ </message>
+ <message>
+ <source>The remote host closed the connection</source>
+ <translation>Віддалений вузол закрив з’єднання</translation>
+ </message>
+ <message>
+ <source>Network operation timed out</source>
+ <translation>Час на мережеву операцію вичерпано</translation>
+ </message>
+ <message>
+ <source>Out of resources</source>
+ <translation>Недостатньо ресурсів</translation>
+ </message>
+ <message>
+ <source>Unsupported socket operation</source>
+ <translation>Непідтримувана для сокета операція</translation>
+ </message>
+ <message>
+ <source>Protocol type not supported</source>
+ <translation>Тип протоколу не підтримується</translation>
+ </message>
+ <message>
+ <source>Invalid socket descriptor</source>
+ <translation>Неправильний дескриптор сокета</translation>
+ </message>
+ <message>
+ <source>Host unreachable</source>
+ <translation>Вузол недоступний</translation>
+ </message>
+ <message>
+ <source>Network unreachable</source>
+ <translation>Мережа недоступна</translation>
+ </message>
+ <message>
+ <source>Permission denied</source>
+ <translation>Доступ заборонено</translation>
+ </message>
+ <message>
+ <source>Connection timed out</source>
+ <translation>Час на з’єднання вичерпано</translation>
+ </message>
+ <message>
+ <source>Connection refused</source>
+ <translation>У з&apos;єднанні відмовлено</translation>
+ </message>
+ <message>
+ <source>The bound address is already in use</source>
+ <translation>Адреса вже використовується</translation>
+ </message>
+ <message>
+ <source>The address is not available</source>
+ <translation>Адреса не доступна</translation>
+ </message>
+ <message>
+ <source>The address is protected</source>
+ <translation>Адреса захищена</translation>
+ </message>
+ <message>
+ <source>Datagram was too large to send</source>
+ <translation>Датаграма завелика, щоб надіслати</translation>
+ </message>
+ <message>
+ <source>Unable to send a message</source>
+ <translation>Неможливо надіслати повідомлення</translation>
+ </message>
+ <message>
+ <source>Unable to receive a message</source>
+ <translation>Неможливо отримати повідомлення</translation>
+ </message>
+ <message>
+ <source>Unable to write</source>
+ <translation>Неможливо записати</translation>
+ </message>
+ <message>
+ <source>Network error</source>
+ <translation>Помилка мережі</translation>
+ </message>
+ <message>
+ <source>Another socket is already listening on the same port</source>
+ <translation>Інший сокет вже слухає цей самий порт</translation>
+ </message>
+ <message>
+ <source>Operation on non-socket</source>
+ <translation>Операція з не-сокетом</translation>
+ </message>
+ <message>
+ <source>The proxy type is invalid for this operation</source>
+ <translation>Неправильний тип проксі-серверу для цієї операції</translation>
+ </message>
+ <message>
+ <source>The address is invalid for this operation</source>
+ <translation>Неправильна адреса для цієї операції</translation>
+ </message>
+ <message>
+ <source>The specified network session is not opened</source>
+ <translation>Вказаний мережевий сеанс не відкрито</translation>
+ </message>
+ <message>
+ <source>Unknown error</source>
+ <translation>Невідома помилка</translation>
+ </message>
+</context>
+<context>
<name>QSystemSemaphore</name>
<message>
<source>%1: permission denied</source>
@@ -6693,6 +6921,10 @@ Do you want to overwrite it?</source>
<translation>%1: недостатньо ресурсів</translation>
</message>
<message>
+ <source>%1: name error</source>
+ <translation>%1: помилка імені</translation>
+ </message>
+ <message>
<source>%1: unknown error %2</source>
<translation>%1: невідома помилка %2</translation>
</message>
@@ -6782,11 +7014,21 @@ Do you want to overwrite it?</source>
<context>
<name>QUndoGroup</name>
<message>
+ <source>Undo %1</source>
+ <translation>Повернути %1</translation>
+ </message>
+ <message>
<source>Undo</source>
+ <comment>Default text for undo action</comment>
<translation>Повернути</translation>
</message>
<message>
+ <source>Redo %1</source>
+ <translation>Повторити %1</translation>
+ </message>
+ <message>
<source>Redo</source>
+ <comment>Default text for redo action</comment>
<translation>Повторити</translation>
</message>
</context>
@@ -6800,11 +7042,21 @@ Do you want to overwrite it?</source>
<context>
<name>QUndoStack</name>
<message>
+ <source>Undo %1</source>
+ <translation>Повернути %1</translation>
+ </message>
+ <message>
<source>Undo</source>
+ <comment>Default text for undo action</comment>
<translation>Повернути</translation>
</message>
<message>
+ <source>Redo %1</source>
+ <translation>Повторити %1</translation>
+ </message>
+ <message>
<source>Redo</source>
+ <comment>Default text for redo action</comment>
<translation>Повторити</translation>
</message>
</context>
@@ -6862,6 +7114,10 @@ Do you want to overwrite it?</source>
<translation>Запит скасовано</translation>
</message>
<message>
+ <source>Request canceled</source>
+ <translation>Запит скасовано</translation>
+ </message>
+ <message>
<source>Request blocked</source>
<translation>Запит блоковано</translation>
</message>
@@ -6881,6 +7137,10 @@ Do you want to overwrite it?</source>
<source>File does not exist</source>
<translation>Файл не існує</translation>
</message>
+ <message>
+ <source>Loading is handled by the media engine</source>
+ <translation>Звантаження оброблене рушієм мультимедіа</translation>
+ </message>
</context>
<context>
<name>QWebPage</name>
@@ -6888,10 +7148,6 @@ Do you want to overwrite it?</source>
<source>Redirection limit reached</source>
<translation>Ліміт перенаправлень вичерпано</translation>
</message>
- <message>
- <source>Bad HTTP request</source>
- <translation>Поганий запит HTTP</translation>
- </message>
<message numerus="yes">
<source>%n file(s)</source>
<comment>number of chosen file</comment>
@@ -6932,6 +7188,11 @@ Do you want to overwrite it?</source>
<translation>Файл не обрано</translation>
</message>
<message>
+ <source>Details</source>
+ <comment>text to display in &lt;details&gt; tag when it has no &lt;summary&gt; child</comment>
+ <translation>Деталі</translation>
+ </message>
+ <message>
<source>Open in New Window</source>
<comment>Open in New Window context menu item</comment>
<translation>Відкрити в новому вікні</translation>
@@ -6962,6 +7223,61 @@ Do you want to overwrite it?</source>
<translation>Копіювати зображення</translation>
</message>
<message>
+ <source>Copy Image Address</source>
+ <comment>Copy Image Address menu item</comment>
+ <translation>Скопіювати адресу зображення</translation>
+ </message>
+ <message>
+ <source>Open Video</source>
+ <comment>Open Video in New Window</comment>
+ <translation>Відкрити відео</translation>
+ </message>
+ <message>
+ <source>Open Audio</source>
+ <comment>Open Audio in New Window</comment>
+ <translation>Відкрити аудіо</translation>
+ </message>
+ <message>
+ <source>Copy Video</source>
+ <comment>Copy Video Link Location</comment>
+ <translation>Копіювати відео</translation>
+ </message>
+ <message>
+ <source>Copy Audio</source>
+ <comment>Copy Audio Link Location</comment>
+ <translation>Копіювати аудіо</translation>
+ </message>
+ <message>
+ <source>Toggle Controls</source>
+ <comment>Toggle Media Controls</comment>
+ <translation>Увімкнути/викнути управління</translation>
+ </message>
+ <message>
+ <source>Toggle Loop</source>
+ <comment>Toggle Media Loop Playback</comment>
+ <translation>Увімкнути/викнути програвання по колу</translation>
+ </message>
+ <message>
+ <source>Enter Fullscreen</source>
+ <comment>Switch Video to Fullscreen</comment>
+ <translation>На повний екран</translation>
+ </message>
+ <message>
+ <source>Play</source>
+ <comment>Play</comment>
+ <translation>Грати</translation>
+ </message>
+ <message>
+ <source>Pause</source>
+ <comment>Pause</comment>
+ <translation>Пауза</translation>
+ </message>
+ <message>
+ <source>Mute</source>
+ <comment>Mute</comment>
+ <translation>Без звуку</translation>
+ </message>
+ <message>
<source>Open Frame</source>
<comment>Open Frame in New Window context menu item</comment>
<translation>Відкрити фрейм</translation>
@@ -7002,6 +7318,11 @@ Do you want to overwrite it?</source>
<translation>Вставити</translation>
</message>
<message>
+ <source>Select All</source>
+ <comment>Select All context menu item</comment>
+ <translation>Виділити все</translation>
+ </message>
+ <message>
<source>No Guesses Found</source>
<comment>No Guesses Found context menu item</comment>
<translation>Підказок не знайдено</translation>
@@ -7467,10 +7788,6 @@ Do you want to overwrite it?</source>
<translation>Пересунути курсор в кінець документа</translation>
</message>
<message>
- <source>Select all</source>
- <translation>Виділити все</translation>
- </message>
- <message>
<source>Select to the next character</source>
<translation>Виділити до наступного символу</translation>
</message>
@@ -7969,6 +8286,94 @@ Do you want to overwrite it?</source>
</message>
</context>
<context>
+ <name>QmlJSDebugger::LiveSelectionTool</name>
+ <message>
+ <source>Items</source>
+ <translation>Елементи</translation>
+ </message>
+</context>
+<context>
+ <name>QmlJSDebugger::QmlToolBar</name>
+ <message>
+ <source>Inspector Mode</source>
+ <translation>Режим інспектора</translation>
+ </message>
+ <message>
+ <source>Play/Pause Animations</source>
+ <translation>Грати/зупинити анімації</translation>
+ </message>
+ <message>
+ <source>Select</source>
+ <translation>Обрати</translation>
+ </message>
+ <message>
+ <source>Select (Marquee)</source>
+ <translation>Обрати (Marquee)</translation>
+ </message>
+ <message>
+ <source>Zoom</source>
+ <translation>Масштабувати</translation>
+ </message>
+ <message>
+ <source>Color Picker</source>
+ <translation>Вибір кольору</translation>
+ </message>
+ <message>
+ <source>Apply Changes to QML Viewer</source>
+ <translation>Застосувати зміни до переглядача QML</translation>
+ </message>
+ <message>
+ <source>Apply Changes to Document</source>
+ <translation>Застосувати зміни до документа</translation>
+ </message>
+ <message>
+ <source>Tools</source>
+ <translation>Інструменти</translation>
+ </message>
+ <message>
+ <source>1x</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>0.5x</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>0.25x</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>0.125x</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>0.1x</source>
+ <translation></translation>
+ </message>
+</context>
+<context>
+ <name>QmlJSDebugger::ToolBarColorBox</name>
+ <message>
+ <source>Copy Color</source>
+ <translation>Копіювати колір</translation>
+ </message>
+</context>
+<context>
+ <name>QmlJSDebugger::ZoomTool</name>
+ <message>
+ <source>Zoom to &amp;100%</source>
+ <translation>Масштабувати до &amp;100%</translation>
+ </message>
+ <message>
+ <source>Zoom In</source>
+ <translation>Збільшити</translation>
+ </message>
+ <message>
+ <source>Zoom Out</source>
+ <translation>Зменшити</translation>
+ </message>
+</context>
+<context>
<name>QtXmlPatterns</name>
<message>
<source>%1 is an unsupported encoding.</source>
@@ -8431,7 +8836,7 @@ Do you want to overwrite it?</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this)</source>
+ <source>The namespace for a user defined function cannot be empty (try the predefined prefix %1, which exists for cases like this)</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -9275,7 +9680,7 @@ Do you want to overwrite it?</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type.</source>
+ <source>Content model of complex type %1 contains %2 element, so it cannot be derived by extension from a non-empty type.</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -9683,7 +10088,7 @@ Do you want to overwrite it?</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Element %1 cannot contain other elements, as it has a fixed content.</source>
+ <source>Element %1 cannot contain other elements, as it has fixed content.</source>
<translation type="unfinished"></translation>
</message>
<message>
diff --git a/translations/qtconfig_pl.ts b/translations/qtconfig_pl.ts
index b2a0c52..dda344f 100644
--- a/translations/qtconfig_pl.ts
+++ b/translations/qtconfig_pl.ts
@@ -52,6 +52,10 @@
<translation>Użyj prostego oprogramowania renderującego</translation>
</message>
<message>
+ <source>Saved changes.</source>
+ <translation>Zachowano zmiany.</translation>
+ </message>
+ <message>
<source>Over The Spot</source>
<translation>Nad oknem dokumentu (Over-The-Spot)</translation>
</message>
@@ -85,15 +89,15 @@
</message>
<message>
<source>&amp;Yes</source>
- <translation>&amp;Tak</translation>
+ <translation type="obsolete">&amp;Tak</translation>
</message>
<message>
<source>&amp;No</source>
- <translation>&amp;Nie</translation>
+ <translation type="obsolete">&amp;Nie</translation>
</message>
<message>
<source>&amp;Cancel</source>
- <translation>&amp;Anuluj</translation>
+ <translation type="obsolete">&amp;Anuluj</translation>
</message>
<message>
<source>No changes to be saved.</source>
@@ -128,6 +132,10 @@
<translation>Wybierz styl i paletę na podstawie ustawień Twojego pulpitu.</translation>
</message>
<message>
+ <source>Unknown</source>
+ <translation>Nieznany</translation>
+ </message>
+ <message>
<source>Use OpenGL if available</source>
<translation>Użyj OpenGL jeśli jest dostępny</translation>
</message>
@@ -135,13 +143,6 @@
<source>Saving changes...</source>
<translation>Zapisywanie zmian...</translation>
</message>
-</context>
-<context>
- <name>MainWindowBase</name>
- <message>
- <source>Qt Configuration</source>
- <translation>Konfiguracja Qt</translation>
- </message>
<message>
<source>Appearance</source>
<translation>Wygląd</translation>
@@ -155,44 +156,44 @@
<translation>Wybierz &amp;styl GUI:</translation>
</message>
<message>
- <source>Build Palette</source>
- <translation>Wersje palety</translation>
+ <source>Preview</source>
+ <translation>Podgląd</translation>
</message>
<message>
- <source>&amp;3-D Effects:</source>
- <translation>&amp;Efekty 3-D:</translation>
+ <source>Select &amp;Palette:</source>
+ <translation>Wybierz &amp;paletę:</translation>
</message>
<message>
- <source>Window Back&amp;ground:</source>
- <translation>&amp;Tło okna:</translation>
+ <source>Active Palette</source>
+ <translation>Paleta &quot;aktywna&quot;</translation>
</message>
<message>
- <source>&amp;Tune Palette...</source>
- <translation>&amp;Ustaw paletę...</translation>
+ <source>Inactive Palette</source>
+ <translation>Paleta &quot;nieaktywna&quot;</translation>
</message>
<message>
- <source>Please use the KDE Control Center to set the palette.</source>
- <translation>Użyj Centrum Kontroli KDE aby zmienić paletę.</translation>
+ <source>Disabled Palette</source>
+ <translation>Paleta &quot;zablokowana&quot;</translation>
</message>
<message>
- <source>Preview</source>
- <translation>Podgląd</translation>
+ <source>Build Palette</source>
+ <translation>Wersje palety</translation>
</message>
<message>
- <source>Select &amp;Palette:</source>
- <translation>Wybierz &amp;paletę:</translation>
+ <source>&amp;Button Background:</source>
+ <translation>Tło &amp;przycisku:</translation>
</message>
<message>
- <source>Active Palette</source>
- <translation>Aktywna paleta</translation>
+ <source>Window Back&amp;ground:</source>
+ <translation>Tło &amp;okna:</translation>
</message>
<message>
- <source>Inactive Palette</source>
- <translation>Nieaktywna paleta</translation>
+ <source>&amp;Tune Palette...</source>
+ <translation>&amp;Modyfikuj paletę...</translation>
</message>
<message>
- <source>Disabled Palette</source>
- <translation>Paleta &quot;zablokowane&quot;</translation>
+ <source>Please use the KDE Control Center to set the palette.</source>
+ <translation>Użyj Centrum Kontroli KDE aby zmienić paletę.</translation>
</message>
<message>
<source>Fonts</source>
@@ -220,7 +221,7 @@
</message>
<message>
<source>Font Substitution</source>
- <translation>Zamiana czcionki</translation>
+ <translation>Czcionki zastępcze</translation>
</message>
<message>
<source>S&amp;elect or Enter a Family:</source>
@@ -228,7 +229,7 @@
</message>
<message>
<source>Current Substitutions:</source>
- <translation>Bieżące zamiany:</translation>
+ <translation>Bieżące zastępstwa:</translation>
</message>
<message>
<source>Up</source>
@@ -244,7 +245,7 @@
</message>
<message>
<source>Select s&amp;ubstitute Family:</source>
- <translation>Wybierz &amp;nazwę czcionki do zamiany na:</translation>
+ <translation>Wybierz &amp;nazwę czcionki zastępczej:</translation>
</message>
<message>
<source>Add</source>
@@ -264,7 +265,7 @@
</message>
<message>
<source>&amp;Double Click Interval:</source>
- <translation>&amp;Odstęp pomiędzy dwukrotnym kliknięciem:</translation>
+ <translation>Odstęp pomiędzy &amp;dwukrotnym kliknięciem:</translation>
</message>
<message>
<source>No blinking</source>
@@ -272,15 +273,15 @@
</message>
<message>
<source>&amp;Cursor Flash Time:</source>
- <translation>&amp;Czas zmiany kursora:</translation>
+ <translation>Okres &amp;migotania kursora:</translation>
</message>
<message>
<source> lines</source>
- <translation> linie</translation>
+ <translation> </translation>
</message>
<message>
<source>Wheel &amp;Scroll Lines:</source>
- <translation>Obrócenie kółkiem powoduje &amp;przesunięcie o tyle linii:</translation>
+ <translation>Ilość &amp;przewiniętych linii po obrocie kółkiem:</translation>
</message>
<message>
<source>Resolve symlinks in URLs</source>
@@ -308,7 +309,7 @@
</message>
<message>
<source>&amp;ToolTip Effect:</source>
- <translation>Efekt &amp;chmurki:</translation>
+ <translation>Efekty &amp;podpowiedzi:</translation>
</message>
<message>
<source>Tool&amp;Box Effect:</source>
@@ -316,15 +317,15 @@
</message>
<message>
<source>Disable</source>
- <translation>Wyłącz</translation>
+ <translation>Wyłączone</translation>
</message>
<message>
<source>Animate</source>
- <translation>Animacja</translation>
+ <translation>Animowane</translation>
</message>
<message>
<source>Fade</source>
- <translation>Wyłanianie</translation>
+ <translation>Blaknące</translation>
</message>
<message>
<source>Global Strut</source>
@@ -348,67 +349,410 @@
</message>
<message>
<source>XIM Input Style:</source>
- <translation>Rodzaje wprowadzania znaków (XIM):</translation>
+ <translation>Style wprowadzania znaków (XIM):</translation>
+ </message>
+ <message>
+ <source>Default Input Method:</source>
+ <translation>Domyślna metoda wprowadzania:</translation>
+ </message>
+ <message>
+ <source>Printer</source>
+ <translation>Drukarka</translation>
+ </message>
+ <message>
+ <source>Enable Font embedding</source>
+ <translation>Włącz osadzanie czcionek</translation>
+ </message>
+ <message>
+ <source>Font Paths</source>
+ <translation>Ścieżki do czcionek</translation>
+ </message>
+ <message>
+ <source>Browse...</source>
+ <translation>Przeglądaj...</translation>
+ </message>
+ <message>
+ <source>Press the &lt;b&gt;Browse&lt;/b&gt; button or enter a directory and press Enter to add them to the list.</source>
+ <translation>Naciśnij przycisk &lt;b&gt;Przeglądaj&lt;/b&gt; lub wpisz nazwę katalogu i naciśnij Enter aby dodać do listy.</translation>
+ </message>
+ <message>
+ <source>Phonon</source>
+ <translation>Phonon</translation>
+ </message>
+ <message>
+ <source>About Phonon</source>
+ <translation>Informacje o Phonon</translation>
+ </message>
+ <message>
+ <source>Current Version:</source>
+ <translation>Bieżąca wersja:</translation>
+ </message>
+ <message>
+ <source>Not available</source>
+ <translation>Nie dostępna</translation>
+ </message>
+ <message>
+ <source>Website:</source>
+ <translation>Witryna:</translation>
+ </message>
+ <message>
+ <source>&lt;a href=&quot;http://phonon.kde.org&quot;&gt;http://phonon.kde.org/&lt;/a&gt;</source>
+ <translation>&lt;a href=&quot;http://phonon.kde.org&quot;&gt;http://phonon.kde.org/&lt;/a&gt;</translation>
+ </message>
+ <message>
+ <source>About GStreamer</source>
+ <translation>Informacje o GStreamer</translation>
+ </message>
+ <message>
+ <source>&lt;a href=&quot;http://gstreamer.freedesktop.org/&quot;&gt;http://gstreamer.freedesktop.org/&lt;/a&gt;</source>
+ <translation>&lt;a href=&quot;http://gstreamer.freedesktop.org/&quot;&gt;http://gstreamer.freedesktop.org/&lt;/a&gt;</translation>
+ </message>
+ <message>
+ <source>GStreamer backend settings</source>
+ <translation>Ustawienia końcówki GStreamer</translation>
+ </message>
+ <message>
+ <source>Preferred audio sink:</source>
+ <translation>Preferowane ujście dźwiękowe:</translation>
+ </message>
+ <message>
+ <source>Preferred render method:</source>
+ <translation>Preferowana metoda renderowania:</translation>
+ </message>
+ <message>
+ <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Note: changes to these settings may prevent applications from starting up correctly.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Zwróć uwagę, że zmiany tych ustawień mogą spowodować nieprawidłowe działanie aplikacji&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation>&amp;Plik</translation>
+ </message>
+ <message>
+ <source>&amp;Help</source>
+ <translation>&amp;Pomoc</translation>
+ </message>
+ <message>
+ <source>&amp;Save</source>
+ <translation>&amp;Zachowaj</translation>
+ </message>
+ <message>
+ <source>Save</source>
+ <translation>Zachowaj</translation>
+ </message>
+ <message>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation>Za&amp;kończ</translation>
+ </message>
+ <message>
+ <source>Exit</source>
+ <translation>Zakończ</translation>
+ </message>
+ <message>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+ <message>
+ <source>&amp;About</source>
+ <translation>&amp;Informacje o</translation>
+ </message>
+ <message>
+ <source>About</source>
+ <translation>Informacje o</translation>
+ </message>
+ <message>
+ <source>About &amp;Qt</source>
+ <translation>Informacje o &amp;Qt</translation>
+ </message>
+ <message>
+ <source>About Qt</source>
+ <translation>Informacje o Qt</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindowBase</name>
+ <message>
+ <source>Qt Configuration</source>
+ <translation type="obsolete">Konfiguracja Qt</translation>
+ </message>
+ <message>
+ <source>Appearance</source>
+ <translation type="obsolete">Wygląd</translation>
+ </message>
+ <message>
+ <source>GUI Style</source>
+ <translation type="obsolete">Styl GUI</translation>
+ </message>
+ <message>
+ <source>Select GUI &amp;Style:</source>
+ <translation type="obsolete">Wybierz &amp;styl GUI:</translation>
+ </message>
+ <message>
+ <source>Build Palette</source>
+ <translation type="obsolete">Wersje palety</translation>
+ </message>
+ <message>
+ <source>&amp;3-D Effects:</source>
+ <translation type="obsolete">&amp;Efekty 3-D:</translation>
+ </message>
+ <message>
+ <source>Window Back&amp;ground:</source>
+ <translation type="obsolete">&amp;Tło okna:</translation>
+ </message>
+ <message>
+ <source>&amp;Tune Palette...</source>
+ <translation type="obsolete">&amp;Ustaw paletę...</translation>
+ </message>
+ <message>
+ <source>Please use the KDE Control Center to set the palette.</source>
+ <translation type="obsolete">Użyj Centrum Kontroli KDE aby zmienić paletę.</translation>
+ </message>
+ <message>
+ <source>Preview</source>
+ <translation type="obsolete">Podgląd</translation>
+ </message>
+ <message>
+ <source>Select &amp;Palette:</source>
+ <translation type="obsolete">Wybierz &amp;paletę:</translation>
+ </message>
+ <message>
+ <source>Active Palette</source>
+ <translation type="obsolete">Aktywna paleta</translation>
+ </message>
+ <message>
+ <source>Inactive Palette</source>
+ <translation type="obsolete">Nieaktywna paleta</translation>
+ </message>
+ <message>
+ <source>Disabled Palette</source>
+ <translation type="obsolete">Paleta &quot;zablokowane&quot;</translation>
+ </message>
+ <message>
+ <source>Fonts</source>
+ <translation type="obsolete">Czcionki</translation>
+ </message>
+ <message>
+ <source>Default Font</source>
+ <translation type="obsolete">Domyślna czcionka</translation>
+ </message>
+ <message>
+ <source>&amp;Style:</source>
+ <translation type="obsolete">&amp;Styl:</translation>
+ </message>
+ <message>
+ <source>&amp;Point Size:</source>
+ <translation type="obsolete">&amp;Rozmiar czcionki:</translation>
+ </message>
+ <message>
+ <source>F&amp;amily:</source>
+ <translation type="obsolete">&amp;Nazwa czcionki:</translation>
+ </message>
+ <message>
+ <source>Sample Text</source>
+ <translation type="obsolete">Przykładowy tekst</translation>
+ </message>
+ <message>
+ <source>Font Substitution</source>
+ <translation type="obsolete">Zamiana czcionki</translation>
+ </message>
+ <message>
+ <source>S&amp;elect or Enter a Family:</source>
+ <translation type="obsolete">&amp;Wybierz lub wpisz nazwę czcionki:</translation>
+ </message>
+ <message>
+ <source>Current Substitutions:</source>
+ <translation type="obsolete">Bieżące zamiany:</translation>
+ </message>
+ <message>
+ <source>Up</source>
+ <translation type="obsolete">W górę</translation>
+ </message>
+ <message>
+ <source>Down</source>
+ <translation type="obsolete">W dół</translation>
+ </message>
+ <message>
+ <source>Remove</source>
+ <translation type="obsolete">Usuń</translation>
+ </message>
+ <message>
+ <source>Select s&amp;ubstitute Family:</source>
+ <translation type="obsolete">Wybierz &amp;nazwę czcionki do zamiany na:</translation>
+ </message>
+ <message>
+ <source>Add</source>
+ <translation type="obsolete">Dodaj</translation>
+ </message>
+ <message>
+ <source>Interface</source>
+ <translation type="obsolete">Interfejs</translation>
+ </message>
+ <message>
+ <source>Feel Settings</source>
+ <translation type="obsolete">Ustawienia działania</translation>
+ </message>
+ <message>
+ <source> ms</source>
+ <translation type="obsolete"> ms</translation>
+ </message>
+ <message>
+ <source>&amp;Double Click Interval:</source>
+ <translation type="obsolete">&amp;Odstęp pomiędzy dwukrotnym kliknięciem:</translation>
+ </message>
+ <message>
+ <source>No blinking</source>
+ <translation type="obsolete">Brak migotania</translation>
+ </message>
+ <message>
+ <source>&amp;Cursor Flash Time:</source>
+ <translation type="obsolete">&amp;Czas zmiany kursora:</translation>
+ </message>
+ <message>
+ <source> lines</source>
+ <translation type="obsolete"> linie</translation>
+ </message>
+ <message>
+ <source>Wheel &amp;Scroll Lines:</source>
+ <translation type="obsolete">Obrócenie kółkiem powoduje &amp;przesunięcie o tyle linii:</translation>
+ </message>
+ <message>
+ <source>Resolve symlinks in URLs</source>
+ <translation type="obsolete">Rozwiązuj dowiązania symboliczne w adresach URL</translation>
+ </message>
+ <message>
+ <source>GUI Effects</source>
+ <translation type="obsolete">Efekty GUI</translation>
+ </message>
+ <message>
+ <source>&amp;Enable</source>
+ <translation type="obsolete">&amp;Włącz</translation>
+ </message>
+ <message>
+ <source>Alt+E</source>
+ <translation type="obsolete">Alt+E</translation>
+ </message>
+ <message>
+ <source>&amp;Menu Effect:</source>
+ <translation type="obsolete">Efekty &amp;menu:</translation>
+ </message>
+ <message>
+ <source>C&amp;omboBox Effect:</source>
+ <translation type="obsolete">Efekty c&amp;ombobox&apos;a:</translation>
+ </message>
+ <message>
+ <source>&amp;ToolTip Effect:</source>
+ <translation type="obsolete">Efekt &amp;chmurki:</translation>
+ </message>
+ <message>
+ <source>Tool&amp;Box Effect:</source>
+ <translation type="obsolete">Efekty &amp;paska narzędzi:</translation>
+ </message>
+ <message>
+ <source>Disable</source>
+ <translation type="obsolete">Wyłącz</translation>
+ </message>
+ <message>
+ <source>Animate</source>
+ <translation type="obsolete">Animacja</translation>
+ </message>
+ <message>
+ <source>Fade</source>
+ <translation type="obsolete">Wyłanianie</translation>
+ </message>
+ <message>
+ <source>Global Strut</source>
+ <translation type="obsolete">Minimalny rozmiar widżetów</translation>
+ </message>
+ <message>
+ <source>Minimum &amp;Width:</source>
+ <translation type="obsolete">Minimalna &amp;szerokość:</translation>
+ </message>
+ <message>
+ <source>Minimum Hei&amp;ght:</source>
+ <translation type="obsolete">Minimalna &amp;wysokość:</translation>
+ </message>
+ <message>
+ <source> pixels</source>
+ <translation type="obsolete"> pikseli</translation>
+ </message>
+ <message>
+ <source>Enhanced support for languages written right-to-left</source>
+ <translation type="obsolete">Rozszerzona obsługa dla języków pisanych od prawej do lewej</translation>
+ </message>
+ <message>
+ <source>XIM Input Style:</source>
+ <translation type="obsolete">Rodzaje wprowadzania znaków (XIM):</translation>
</message>
<message>
<source>On The Spot</source>
- <translation>W oknie dokumentu (On-The-Spot)</translation>
+ <translation type="obsolete">W oknie dokumentu (On-The-Spot)</translation>
</message>
<message>
<source>Over The Spot</source>
- <translation>Nad oknem dokumentu (Over-The-Spot)</translation>
+ <translation type="obsolete">Nad oknem dokumentu (Over-The-Spot)</translation>
</message>
<message>
<source>Off The Spot</source>
- <translation>Na pasku stanu (Off-The-Spot)</translation>
+ <translation type="obsolete">Na pasku stanu (Off-The-Spot)</translation>
</message>
<message>
<source>Root</source>
- <translation>W dodatkowym oknie (Root)</translation>
+ <translation type="obsolete">W dodatkowym oknie (Root)</translation>
</message>
<message>
<source>Default Input Method:</source>
- <translation>Domyślna metoda wprowadzania:</translation>
+ <translation type="obsolete">Domyślna metoda wprowadzania:</translation>
</message>
<message>
<source>Printer</source>
- <translation>Drukarka</translation>
+ <translation type="obsolete">Drukarka</translation>
</message>
<message>
<source>Enable Font embedding</source>
- <translation>Włącz czcionki wbudowane</translation>
+ <translation type="obsolete">Włącz czcionki wbudowane</translation>
</message>
<message>
<source>Font Paths</source>
- <translation>Ścieżki czcionek</translation>
+ <translation type="obsolete">Ścieżki czcionek</translation>
</message>
<message>
<source>Browse...</source>
- <translation>Przeglądaj...</translation>
+ <translation type="obsolete">Przeglądaj...</translation>
</message>
<message>
<source>Press the &lt;b&gt;Browse&lt;/b&gt; button or enter a directory and press Enter to add them to the list.</source>
- <translation>Naciśnij przycisk &lt;b&gt;Przeglądaj&lt;/b&gt; lub wpisz nazwę katalogu i naciśnij Enter aby dodać do listy.</translation>
+ <translation type="obsolete">Naciśnij przycisk &lt;b&gt;Przeglądaj&lt;/b&gt; lub wpisz nazwę katalogu i naciśnij Enter aby dodać do listy.</translation>
</message>
<message>
<source>Phonon</source>
- <translation>Phonon</translation>
+ <translation type="obsolete">Phonon</translation>
</message>
<message>
<source>About Phonon</source>
- <translation>Informacje o Phonon</translation>
+ <translation type="obsolete">Informacje o Phonon</translation>
</message>
<message>
<source>Current Version:</source>
- <translation>Bieżąca wersja:</translation>
+ <translation type="obsolete">Bieżąca wersja:</translation>
</message>
<message>
<source>Not available</source>
- <translation>Nie dostępne</translation>
+ <translation type="obsolete">Nie dostępne</translation>
</message>
<message>
<source>Website:</source>
- <translation>Witryna:</translation>
+ <translation type="obsolete">Witryna:</translation>
</message>
<message>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
@@ -416,7 +760,7 @@
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;a href=&quot;http://phonon.kde.org&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;http://phonon.kde.org&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
- <translation>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+ <translation type="obsolete">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
@@ -424,7 +768,7 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>About GStreamer</source>
- <translation>Informacje o GStreamer</translation>
+ <translation type="obsolete">Informacje o GStreamer</translation>
</message>
<message>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
@@ -432,7 +776,7 @@ p, li { white-space: pre-wrap; }
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;a href=&quot;http://gstreamer.freedesktop.org/&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;http://gstreamer.freedesktop.org/&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
- <translation>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+ <translation type="obsolete">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
@@ -440,15 +784,15 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>GStreamer backend settings</source>
- <translation>Ustawienia końcówki GStreamer</translation>
+ <translation type="obsolete">Ustawienia końcówki GStreamer</translation>
</message>
<message>
<source>Preferred audio sink:</source>
- <translation>Preferowane ujście dźwiękowe:</translation>
+ <translation type="obsolete">Preferowane ujście dźwiękowe:</translation>
</message>
<message>
<source>Preferred render method:</source>
- <translation>Preferowana metoda renderowania:</translation>
+ <translation type="obsolete">Preferowana metoda renderowania:</translation>
</message>
<message>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
@@ -456,7 +800,7 @@ p, li { white-space: pre-wrap; }
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Note: changes to these settings may prevent applications from starting up correctly.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
- <translation>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+ <translation type="obsolete">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
@@ -464,86 +808,82 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>&amp;File</source>
- <translation>&amp;Plik</translation>
+ <translation type="obsolete">&amp;Plik</translation>
</message>
<message>
<source>&amp;Help</source>
- <translation>&amp;Pomoc</translation>
+ <translation type="obsolete">&amp;Pomoc</translation>
</message>
<message>
<source>&amp;Save</source>
- <translation>&amp;Zapisz</translation>
+ <translation type="obsolete">&amp;Zapisz</translation>
</message>
<message>
<source>Save</source>
- <translation>Zapisz</translation>
+ <translation type="obsolete">Zapisz</translation>
</message>
<message>
<source>Ctrl+S</source>
- <translation>Ctrl+S</translation>
+ <translation type="obsolete">Ctrl+S</translation>
</message>
<message>
<source>E&amp;xit</source>
- <translation>&amp;Zakończ</translation>
+ <translation type="obsolete">&amp;Zakończ</translation>
</message>
<message>
<source>Exit</source>
- <translation>Zakończ</translation>
+ <translation type="obsolete">Zakończ</translation>
</message>
<message>
<source>&amp;About</source>
- <translation>&amp;Informacje o</translation>
+ <translation type="obsolete">&amp;Informacje o</translation>
</message>
<message>
<source>About</source>
- <translation>Informacje o</translation>
+ <translation type="obsolete">Informacje o</translation>
</message>
<message>
<source>About &amp;Qt</source>
- <translation>Informacje o &amp;Qt</translation>
+ <translation type="obsolete">Informacje o &amp;Qt</translation>
</message>
<message>
<source>About Qt</source>
- <translation>Informacje o Qt</translation>
+ <translation type="obsolete">Informacje o Qt</translation>
</message>
</context>
<context>
- <name>PaletteEditorAdvancedBase</name>
+ <name>PaletteEditorAdvanced</name>
<message>
<source>Tune Palette</source>
<translation>Ustaw paletę</translation>
</message>
<message>
- <source>&lt;b&gt;Edit Palette&lt;/b&gt;&lt;p&gt;Change the palette of the current widget or form.&lt;/p&gt;&lt;p&gt;Use a generated palette or select colors for each color group and each color role.&lt;/p&gt;&lt;p&gt;The palette can be tested with different widget layouts in the preview section.&lt;/p&gt;</source>
- <translation>&lt;b&gt;Edycja palety&lt;/b&gt;&lt;p&gt;Zmień paletę bieżącego widżetu lub formularza.&lt;/p&gt;&lt;p&gt;Użyj wygenerowanej palety lub wybierz kolory dla każdej grupy i roli koloru.&lt;/p&gt;&lt;p&gt;Paleta może być przetestowana z różnymi rozmieszczeniami widżetów w sekcji podglądu.&lt;/p&gt;</translation>
- </message>
- <message>
<source>Select &amp;Palette:</source>
<translation>Wybierz &amp;paletę:</translation>
</message>
<message>
<source>Active Palette</source>
- <translation>Paleta &quot;aktywne&quot;</translation>
+ <translation>Paleta &quot;aktywna&quot;</translation>
</message>
<message>
<source>Inactive Palette</source>
- <translation>Paleta &quot;nieaktywne&quot;</translation>
+ <translation>Paleta &quot;nieaktywna&quot;</translation>
</message>
<message>
<source>Disabled Palette</source>
- <translation>Paleta &quot;zablokowane&quot;</translation>
+ <translation>Paleta &quot;zablokowana&quot;</translation>
</message>
<message>
<source>Auto</source>
- <translation>Automatycznie</translation>
+ <translation>Automatyczne tworzenie</translation>
</message>
<message>
<source>Build inactive palette from active</source>
- <translation>Twórz paletę &quot;nieaktywne&quot; z &quot;aktywne&quot;</translation>
+ <translation>Twórz paletę &quot;nieaktywną&quot; na podstawie palety &quot;aktywnej&quot;</translation>
</message>
<message>
<source>Build disabled palette from active</source>
- <translation>Twórz paletę &quot;zablokowane&quot; z &quot;aktywne&quot;</translation>
+ <translation>Twórz paletę &quot;zablokowaną&quot; na podstawie palety &quot;aktywnej&quot;</translation>
</message>
<message>
<source>Central color &amp;roles</source>
@@ -555,7 +895,7 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>&lt;b&gt;Select a color role.&lt;/b&gt;&lt;p&gt;Available central roles are: &lt;ul&gt; &lt;li&gt;Window - general background color.&lt;/li&gt; &lt;li&gt;WindowText - general foreground color. &lt;/li&gt; &lt;li&gt;Base - used as background color for e.g. text entry widgets, usually white or another light color. &lt;/li&gt; &lt;li&gt;Text - the foreground color used with Base. Usually this is the same as WindowText, in what case it must provide good contrast both with Window and Base. &lt;/li&gt; &lt;li&gt;Button - general button background color, where buttons need a background different from Window, as in the Macintosh style. &lt;/li&gt; &lt;li&gt;ButtonText - a foreground color used with the Button color. &lt;/li&gt; &lt;li&gt;Highlight - a color to indicate a selected or highlighted item. &lt;/li&gt; &lt;li&gt;HighlightedText - a text color that contrasts to Highlight. &lt;/li&gt; &lt;li&gt;BrightText - a text color that is very different from WindowText and contrasts well with e.g. black. &lt;/li&gt; &lt;/ul&gt; &lt;/p&gt;</source>
- <translation>&lt;b&gt;Wybierz rolę koloru.&lt;/b&gt;&lt;p&gt;Dostępne role główne: &lt;ul&gt; &lt;li&gt;Okno - główny kolor tła.&lt;/li&gt; &lt;li&gt;Tekst Okna - główny kolor pierwszoplanowy. &lt;/li&gt; &lt;li&gt;Bazowy - używany jako kolor tła dla np. widżetów wejściowych, zwykle biały lub inny jasny kolor. &lt;/li&gt; &lt;li&gt;Tekst - kolor pierwszoplanowy używany z Bazowym. Zwykle jest on taki sam jak Tekst Okna i wtedy powinien dobrze kontrastować jednocześnie z Oknem i Bazowym &lt;/li&gt; &lt;li&gt;Przycisk - główny kolor tła przycisku, gdy przyciski potrzebują innego tła niż Okno, jak np. w stylu Macintosh. &lt;/li&gt; &lt;li&gt;Tekst Przycisku - kolor pierwszoplanowy używany z Przyciskiem. &lt;/li&gt; &lt;li&gt;Podświetlony - kolor użyty w zaznaczonych lub podświetlonych elementach. &lt;/li&gt; &lt;li&gt;Podświetlony Tekst - kolor tekstu który kontrastuje z Podświetlonym. &lt;/li&gt; &lt;li&gt;Jasny Tekst - kolor teksty który znacznie różni się od Tekstu Okna i dobrze kontrastuje z np. czarnym. &lt;/li&gt; &lt;/ul&gt; &lt;/p&gt;</translation>
+ <translation>&lt;b&gt;Wybierz rolę koloru.&lt;/b&gt;&lt;p&gt;Dostępne role główne: &lt;ul&gt; &lt;li&gt;Okno - główny kolor tła.&lt;/li&gt; &lt;li&gt;Tekst Okna - główny kolor pierwszoplanowy. &lt;/li&gt; &lt;li&gt;Bazowy - używany jako kolor tła dla np. widżetów wejściowych, zwykle biały lub inny jasny kolor. &lt;/li&gt; &lt;li&gt;Tekst - kolor pierwszoplanowy używany z Bazowym. Zwykle jest on taki sam jak Tekst Okna i wtedy powinien dobrze kontrastować jednocześnie z Oknem i Bazowym &lt;/li&gt; &lt;li&gt;Przycisk - główny kolor tła przycisku, gdy przyciski potrzebują innego tła niż Okno, jak np. w stylu Macintosh. &lt;/li&gt; &lt;li&gt;Tekst Przycisku - kolor pierwszoplanowy używany z Przyciskiem. &lt;/li&gt; &lt;li&gt;Wyróżnienie - kolor użyty w zaznaczonych lub podświetlonych elementach. &lt;/li&gt; &lt;li&gt;Wyróżniony Tekst - kolor tekstu który kontrastuje z Podświetlonym. &lt;/li&gt; &lt;li&gt;Jasny Tekst - kolor teksty który znacznie różni się od Tekstu Okna i dobrze kontrastuje z np. czarnym. &lt;/li&gt; &lt;/ul&gt; &lt;/p&gt;</translation>
</message>
<message>
<source>Window</source>
@@ -566,24 +906,36 @@ p, li { white-space: pre-wrap; }
<translation>Tekst Okna</translation>
</message>
<message>
- <source>Button</source>
- <translation>Przycisk</translation>
+ <source>Base</source>
+ <translation>Bazowy</translation>
</message>
<message>
- <source>Base</source>
- <translation>Podstawa</translation>
+ <source>AlternateBase</source>
+ <translation>Bazowy Alternatywny</translation>
+ </message>
+ <message>
+ <source>ToolTipBase</source>
+ <translation>Bazowy dla podpowiedzi</translation>
+ </message>
+ <message>
+ <source>ToolTipText</source>
+ <translation>Tekst podpowiedzi</translation>
</message>
<message>
<source>Text</source>
<translation>Tekst</translation>
</message>
<message>
- <source>BrightText</source>
- <translation>Jasny tekst</translation>
+ <source>Button</source>
+ <translation>Przycisk</translation>
</message>
<message>
<source>ButtonText</source>
- <translation>Tekst przycisku</translation>
+ <translation>Tekst Przycisku</translation>
+ </message>
+ <message>
+ <source>BrightText</source>
+ <translation>Jasny Tekst</translation>
</message>
<message>
<source>Highlight</source>
@@ -591,27 +943,23 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>HighlightedText</source>
- <translation>Tekst wyróżniony</translation>
+ <translation>Wyróżniony tekst</translation>
</message>
<message>
- <source>&amp;Select Color:</source>
- <translation>&amp;Wybierz kolor:</translation>
+ <source>Link</source>
+ <translation>Odsyłacz</translation>
</message>
<message>
- <source>Choose a color</source>
- <translation>Wybierz kolor</translation>
+ <source>LinkVisited</source>
+ <translation>Zwiedzony Odsyłacz</translation>
</message>
<message>
- <source>Choose a color for the selected central color role.</source>
- <translation>Wybierz kolor dla zaznaczonej głównej roli koloru.</translation>
+ <source>&amp;Select Color:</source>
+ <translation>&amp;Wybierz kolor:</translation>
</message>
<message>
<source>3-D shadow &amp;effects</source>
- <translation>&amp;Efekty cień 3-D </translation>
- </message>
- <message>
- <source>Build &amp;from button color</source>
- <translation>&amp;Zbuduj w oparciu o kolor przycisku</translation>
+ <translation>&amp;Efekty cienia 3-D </translation>
</message>
<message>
<source>Generate shadings</source>
@@ -619,7 +967,11 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>Check to let 3D-effect colors be calculated from button-color.</source>
- <translation>Zaznacz aby kolory efektów trójwymiarowych były obliczone na podstawie koloru przycisku.</translation>
+ <translation>Zaznacz, aby kolory efektów trójwymiarowych były obliczone na podstawie koloru przycisku.</translation>
+ </message>
+ <message>
+ <source>Build &amp;from button color</source>
+ <translation>&amp;Zbuduj w oparciu o kolor przycisku</translation>
</message>
<message>
<source>Choose 3D-effect color role</source>
@@ -654,24 +1006,183 @@ p, li { white-space: pre-wrap; }
<translation>Wybierz &amp;kolor:</translation>
</message>
<message>
+ <source>Choose a color</source>
+ <translation>Wybierz kolor</translation>
+ </message>
+ <message>
+ <source>Choose a color for the selected central color role.</source>
+ <translation>Wybierz kolor dla zaznaczonej głównej roli koloru.</translation>
+ </message>
+ <message>
<source>Choose a color for the selected effect color role.</source>
<translation>Wybierz kolor dla zaznaczonej roli koloru dla efektu.</translation>
</message>
+</context>
+<context>
+ <name>PaletteEditorAdvancedBase</name>
+ <message>
+ <source>Tune Palette</source>
+ <translation type="obsolete">Ustaw paletę</translation>
+ </message>
+ <message>
+ <source>&lt;b&gt;Edit Palette&lt;/b&gt;&lt;p&gt;Change the palette of the current widget or form.&lt;/p&gt;&lt;p&gt;Use a generated palette or select colors for each color group and each color role.&lt;/p&gt;&lt;p&gt;The palette can be tested with different widget layouts in the preview section.&lt;/p&gt;</source>
+ <translation type="obsolete">&lt;b&gt;Edycja palety&lt;/b&gt;&lt;p&gt;Zmień paletę bieżącego widżetu lub formularza.&lt;/p&gt;&lt;p&gt;Użyj wygenerowanej palety lub wybierz kolory dla każdej grupy i roli koloru.&lt;/p&gt;&lt;p&gt;Paleta może być przetestowana z różnymi rozmieszczeniami widżetów w sekcji podglądu.&lt;/p&gt;</translation>
+ </message>
+ <message>
+ <source>Select &amp;Palette:</source>
+ <translation type="obsolete">Wybierz &amp;paletę:</translation>
+ </message>
+ <message>
+ <source>Active Palette</source>
+ <translation type="obsolete">Paleta &quot;aktywne&quot;</translation>
+ </message>
+ <message>
+ <source>Inactive Palette</source>
+ <translation type="obsolete">Paleta &quot;nieaktywne&quot;</translation>
+ </message>
+ <message>
+ <source>Disabled Palette</source>
+ <translation type="obsolete">Paleta &quot;zablokowane&quot;</translation>
+ </message>
+ <message>
+ <source>Auto</source>
+ <translation type="obsolete">Automatycznie</translation>
+ </message>
+ <message>
+ <source>Build inactive palette from active</source>
+ <translation type="obsolete">Twórz paletę &quot;nieaktywne&quot; z &quot;aktywne&quot;</translation>
+ </message>
+ <message>
+ <source>Build disabled palette from active</source>
+ <translation type="obsolete">Twórz paletę &quot;zablokowane&quot; z &quot;aktywne&quot;</translation>
+ </message>
+ <message>
+ <source>Central color &amp;roles</source>
+ <translation type="obsolete">Główne &amp;role koloru</translation>
+ </message>
+ <message>
+ <source>Choose central color role</source>
+ <translation type="obsolete">Wybierz główną rolę koloru</translation>
+ </message>
+ <message>
+ <source>&lt;b&gt;Select a color role.&lt;/b&gt;&lt;p&gt;Available central roles are: &lt;ul&gt; &lt;li&gt;Window - general background color.&lt;/li&gt; &lt;li&gt;WindowText - general foreground color. &lt;/li&gt; &lt;li&gt;Base - used as background color for e.g. text entry widgets, usually white or another light color. &lt;/li&gt; &lt;li&gt;Text - the foreground color used with Base. Usually this is the same as WindowText, in what case it must provide good contrast both with Window and Base. &lt;/li&gt; &lt;li&gt;Button - general button background color, where buttons need a background different from Window, as in the Macintosh style. &lt;/li&gt; &lt;li&gt;ButtonText - a foreground color used with the Button color. &lt;/li&gt; &lt;li&gt;Highlight - a color to indicate a selected or highlighted item. &lt;/li&gt; &lt;li&gt;HighlightedText - a text color that contrasts to Highlight. &lt;/li&gt; &lt;li&gt;BrightText - a text color that is very different from WindowText and contrasts well with e.g. black. &lt;/li&gt; &lt;/ul&gt; &lt;/p&gt;</source>
+ <translation type="obsolete">&lt;b&gt;Wybierz rolę koloru.&lt;/b&gt;&lt;p&gt;Dostępne role główne: &lt;ul&gt; &lt;li&gt;Okno - główny kolor tła.&lt;/li&gt; &lt;li&gt;Tekst Okna - główny kolor pierwszoplanowy. &lt;/li&gt; &lt;li&gt;Bazowy - używany jako kolor tła dla np. widżetów wejściowych, zwykle biały lub inny jasny kolor. &lt;/li&gt; &lt;li&gt;Tekst - kolor pierwszoplanowy używany z Bazowym. Zwykle jest on taki sam jak Tekst Okna i wtedy powinien dobrze kontrastować jednocześnie z Oknem i Bazowym &lt;/li&gt; &lt;li&gt;Przycisk - główny kolor tła przycisku, gdy przyciski potrzebują innego tła niż Okno, jak np. w stylu Macintosh. &lt;/li&gt; &lt;li&gt;Tekst Przycisku - kolor pierwszoplanowy używany z Przyciskiem. &lt;/li&gt; &lt;li&gt;Podświetlony - kolor użyty w zaznaczonych lub podświetlonych elementach. &lt;/li&gt; &lt;li&gt;Podświetlony Tekst - kolor tekstu który kontrastuje z Podświetlonym. &lt;/li&gt; &lt;li&gt;Jasny Tekst - kolor teksty który znacznie różni się od Tekstu Okna i dobrze kontrastuje z np. czarnym. &lt;/li&gt; &lt;/ul&gt; &lt;/p&gt;</translation>
+ </message>
+ <message>
+ <source>Window</source>
+ <translation type="obsolete">Okno</translation>
+ </message>
+ <message>
+ <source>WindowText</source>
+ <translation type="obsolete">Tekst Okna</translation>
+ </message>
+ <message>
+ <source>Button</source>
+ <translation type="obsolete">Przycisk</translation>
+ </message>
+ <message>
+ <source>Base</source>
+ <translation type="obsolete">Podstawa</translation>
+ </message>
+ <message>
+ <source>Text</source>
+ <translation type="obsolete">Tekst</translation>
+ </message>
+ <message>
+ <source>BrightText</source>
+ <translation type="obsolete">Jasny tekst</translation>
+ </message>
+ <message>
+ <source>ButtonText</source>
+ <translation type="obsolete">Tekst przycisku</translation>
+ </message>
+ <message>
+ <source>Highlight</source>
+ <translation type="obsolete">Wyróżnienie</translation>
+ </message>
+ <message>
+ <source>HighlightedText</source>
+ <translation type="obsolete">Tekst wyróżniony</translation>
+ </message>
+ <message>
+ <source>&amp;Select Color:</source>
+ <translation type="obsolete">&amp;Wybierz kolor:</translation>
+ </message>
+ <message>
+ <source>Choose a color</source>
+ <translation type="obsolete">Wybierz kolor</translation>
+ </message>
+ <message>
+ <source>Choose a color for the selected central color role.</source>
+ <translation type="obsolete">Wybierz kolor dla zaznaczonej głównej roli koloru.</translation>
+ </message>
+ <message>
+ <source>3-D shadow &amp;effects</source>
+ <translation type="obsolete">&amp;Efekty cień 3-D </translation>
+ </message>
+ <message>
+ <source>Build &amp;from button color</source>
+ <translation type="obsolete">&amp;Zbuduj w oparciu o kolor przycisku</translation>
+ </message>
+ <message>
+ <source>Generate shadings</source>
+ <translation type="obsolete">Wygeneruj cienie</translation>
+ </message>
+ <message>
+ <source>Check to let 3D-effect colors be calculated from button-color.</source>
+ <translation type="obsolete">Zaznacz aby kolory efektów trójwymiarowych były obliczone na podstawie koloru przycisku.</translation>
+ </message>
+ <message>
+ <source>Choose 3D-effect color role</source>
+ <translation type="obsolete">Wybierz rolę koloru efektu trójwymiarowego</translation>
+ </message>
+ <message>
+ <source>&lt;b&gt;Select a color role.&lt;/b&gt;&lt;p&gt;Available effect roles are: &lt;ul&gt; &lt;li&gt;Light - lighter than Button color. &lt;/li&gt; &lt;li&gt;Midlight - between Button and Light. &lt;/li&gt; &lt;li&gt;Mid - between Button and Dark. &lt;/li&gt; &lt;li&gt;Dark - darker than Button. &lt;/li&gt; &lt;li&gt;Shadow - a very dark color. &lt;/li&gt; &lt;/ul&gt;</source>
+ <translation type="obsolete">&lt;b&gt;Wybierz rolę koloru.&lt;/b&gt;&lt;p&gt;Dostępne role kolorów: &lt;ul&gt; &lt;li&gt;Jasny - jaśniejszy od koloru Przycisku. &lt;/li&gt; &lt;li&gt;Średnio Jasny - pomiędzy kolorem Przycisku i Jasnym. &lt;/li&gt; &lt;li&gt;Średni - pomiędzy kolorem Przycisku i Ciemnym. &lt;/li&gt; &lt;li&gt;Ciemny - ciemniejszy od koloru Przycisku. &lt;/li&gt; &lt;li&gt;Cień - bardzo ciemny kolor. &lt;/li&gt; &lt;/ul&gt;</translation>
+ </message>
+ <message>
+ <source>Light</source>
+ <translation type="obsolete">Jasny</translation>
+ </message>
+ <message>
+ <source>Midlight</source>
+ <translation type="obsolete">Średnio jasny</translation>
+ </message>
+ <message>
+ <source>Mid</source>
+ <translation type="obsolete">Średni</translation>
+ </message>
+ <message>
+ <source>Dark</source>
+ <translation type="obsolete">Ciemny</translation>
+ </message>
+ <message>
+ <source>Shadow</source>
+ <translation type="obsolete">Cień</translation>
+ </message>
+ <message>
+ <source>Select Co&amp;lor:</source>
+ <translation type="obsolete">Wybierz &amp;kolor:</translation>
+ </message>
+ <message>
+ <source>Choose a color for the selected effect color role.</source>
+ <translation type="obsolete">Wybierz kolor dla zaznaczonej roli koloru dla efektu.</translation>
+ </message>
<message>
<source>OK</source>
- <translation>OK</translation>
+ <translation type="obsolete">OK</translation>
</message>
<message>
<source>Close dialog and apply all changes.</source>
- <translation>Zamknij okno i zastosuj wszystkie zmiany.</translation>
+ <translation type="obsolete">Zamknij okno i zastosuj wszystkie zmiany.</translation>
</message>
<message>
<source>Cancel</source>
- <translation>Anuluj</translation>
+ <translation type="obsolete">Anuluj</translation>
</message>
<message>
<source>Close dialog and discard all changes.</source>
- <translation>Zamknij okno i anuluj wszystkie zmiany.</translation>
+ <translation type="obsolete">Zamknij okno i anuluj wszystkie zmiany.</translation>
</message>
</context>
<context>
@@ -682,14 +1193,14 @@ p, li { white-space: pre-wrap; }
</message>
</context>
<context>
- <name>PreviewWidgetBase</name>
+ <name>PreviewWidget</name>
<message>
<source>Preview Window</source>
<translation>Okno podglądu</translation>
</message>
<message>
- <source>ButtonGroup</source>
- <translation>ButtonGroup</translation>
+ <source>GroupBox</source>
+ <translation>GroupBox</translation>
</message>
<message>
<source>RadioButton1</source>
@@ -704,8 +1215,8 @@ p, li { white-space: pre-wrap; }
<translation>RadioButton3</translation>
</message>
<message>
- <source>ButtonGroup2</source>
- <translation>ButtonGroup2</translation>
+ <source>GroupBox2</source>
+ <translation>GroupBox2</translation>
</message>
<message>
<source>CheckBox1</source>
@@ -728,13 +1239,66 @@ p, li { white-space: pre-wrap; }
<translation>PushButton</translation>
</message>
<message>
+ <source>&lt;p&gt;&lt;a href=&quot;http://qt.nokia.com&quot;&gt;http://qt.nokia.com&lt;/a&gt;&lt;/p&gt;
+&lt;p&gt;&lt;a href=&quot;http://www.kde.org&quot;&gt;http://www.kde.org&lt;/a&gt;&lt;/p&gt;</source>
+ <translation>&lt;p&gt;&lt;a href=&quot;http://qt.nokia.com&quot;&gt;http://qt.nokia.com&lt;/a&gt;&lt;/p&gt;
+&lt;p&gt;&lt;a href=&quot;http://www.kde.org&quot;&gt;http://www.kde.org&lt;/a&gt;&lt;/p&gt;</translation>
+ </message>
+</context>
+<context>
+ <name>PreviewWidgetBase</name>
+ <message>
+ <source>Preview Window</source>
+ <translation type="obsolete">Okno podglądu</translation>
+ </message>
+ <message>
+ <source>ButtonGroup</source>
+ <translation type="obsolete">ButtonGroup</translation>
+ </message>
+ <message>
+ <source>RadioButton1</source>
+ <translation type="obsolete">RadioButton1</translation>
+ </message>
+ <message>
+ <source>RadioButton2</source>
+ <translation type="obsolete">RadioButton2</translation>
+ </message>
+ <message>
+ <source>RadioButton3</source>
+ <translation type="obsolete">RadioButton3</translation>
+ </message>
+ <message>
+ <source>ButtonGroup2</source>
+ <translation type="obsolete">ButtonGroup2</translation>
+ </message>
+ <message>
+ <source>CheckBox1</source>
+ <translation type="obsolete">CheckBox1</translation>
+ </message>
+ <message>
+ <source>CheckBox2</source>
+ <translation type="obsolete">CheckBox2</translation>
+ </message>
+ <message>
+ <source>LineEdit</source>
+ <translation type="obsolete">LineEdit</translation>
+ </message>
+ <message>
+ <source>ComboBox</source>
+ <translation type="obsolete">ComboBox</translation>
+ </message>
+ <message>
+ <source>PushButton</source>
+ <translation type="obsolete">PushButton</translation>
+ </message>
+ <message>
<source>&lt;p&gt;
&lt;a href=&quot;http://qt.nokia.com&quot;&gt;http://qt.nokia.com&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;http://www.kde.org&quot;&gt;http://www.kde.org&lt;/a&gt;
&lt;/p&gt;</source>
- <translation>&lt;p&gt;
+ <translation type="obsolete">&lt;p&gt;
&lt;a href=&quot;http://qt.nokia.com&quot;&gt;http://qt.nokia.com&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
diff --git a/translations/qtconfig_ru.ts b/translations/qtconfig_ru.ts
index a200ac1..c5ddbb0 100644
--- a/translations/qtconfig_ru.ts
+++ b/translations/qtconfig_ru.ts
@@ -33,7 +33,7 @@
</message>
<message>
<source>On The Spot</source>
- <translation type="unfinished"></translation>
+ <translation>В тексте</translation>
</message>
<message>
<source>Unknown</source>
@@ -101,15 +101,15 @@
</message>
<message>
<source>Over The Spot</source>
- <translation type="unfinished"></translation>
+ <translation>Поверх текста</translation>
</message>
<message>
<source>Off The Spot</source>
- <translation type="unfinished"></translation>
+ <translation>Вне текста</translation>
</message>
<message>
<source>Root</source>
- <translation type="unfinished"></translation>
+ <translation>Общий</translation>
</message>
<message>
<source>Select a Directory</source>
diff --git a/translations/qtconfig_uk.ts b/translations/qtconfig_uk.ts
index 24a9b7d..6cdae56 100644
--- a/translations/qtconfig_uk.ts
+++ b/translations/qtconfig_uk.ts
@@ -36,6 +36,10 @@
<translation>У вікні документу</translation>
</message>
<message>
+ <source>Unknown</source>
+ <translation>Невідомий</translation>
+ </message>
+ <message>
<source>Auto (default)</source>
<translation>Автоматично (типово)</translation>
</message>
@@ -92,6 +96,10 @@
<translation>Збереження змін...</translation>
</message>
<message>
+ <source>Saved changes.</source>
+ <translation>Зміни збережено.</translation>
+ </message>
+ <message>
<source>Over The Spot</source>
<translation>Над вікном документу</translation>
</message>
@@ -124,25 +132,6 @@
<translation>Зберегти зміни до налаштувань?</translation>
</message>
<message>
- <source>&amp;Yes</source>
- <translation>&amp;Так</translation>
- </message>
- <message>
- <source>&amp;No</source>
- <translation>&amp;Ні</translation>
- </message>
- <message>
- <source>&amp;Cancel</source>
- <translation>&amp;Скасувати</translation>
- </message>
-</context>
-<context>
- <name>MainWindowBase</name>
- <message>
- <source>Qt Configuration</source>
- <translation>Налаштування Qt</translation>
- </message>
- <message>
<source>Appearance</source>
<translation>Вигляд</translation>
</message>
@@ -179,8 +168,8 @@
<translation>Створити палітру</translation>
</message>
<message>
- <source>&amp;3-D Effects:</source>
- <translation>&amp;3-D ефекти:</translation>
+ <source>&amp;Button Background:</source>
+ <translation>Фон &amp;кнопки:</translation>
</message>
<message>
<source>Window Back&amp;ground:</source>
@@ -351,22 +340,6 @@
<translation>Стиль введення XIM:</translation>
</message>
<message>
- <source>On The Spot</source>
- <translation>У вікні документу</translation>
- </message>
- <message>
- <source>Over The Spot</source>
- <translation>Над вікном документу</translation>
- </message>
- <message>
- <source>Off The Spot</source>
- <translation>В рядку стану</translation>
- </message>
- <message>
- <source>Root</source>
- <translation>В додатковому вікні</translation>
- </message>
- <message>
<source>Default Input Method:</source>
<translation>Типовий метод введення:</translation>
</message>
@@ -411,11 +384,7 @@
<translation>Веб-сайт:</translation>
</message>
<message>
- <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
-&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
-p, li { white-space: pre-wrap; }
-&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;a href=&quot;http://phonon.kde.org&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;http://phonon.kde.org&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <source>&lt;a href=&quot;http://phonon.kde.org&quot;&gt;http://phonon.kde.org/&lt;/a&gt;</source>
<translation></translation>
</message>
<message>
@@ -423,11 +392,7 @@ p, li { white-space: pre-wrap; }
<translation>Про GStreamer</translation>
</message>
<message>
- <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
-&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
-p, li { white-space: pre-wrap; }
-&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;a href=&quot;http://gstreamer.freedesktop.org/&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;http://gstreamer.freedesktop.org/&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <source>&lt;a href=&quot;http://gstreamer.freedesktop.org/&quot;&gt;http://gstreamer.freedesktop.org/&lt;/a&gt;</source>
<translation></translation>
</message>
<message>
@@ -472,7 +437,7 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<source>Ctrl+S</source>
- <translation>Ctrl+S</translation>
+ <translation></translation>
</message>
<message>
<source>E&amp;xit</source>
@@ -483,6 +448,10 @@ p, li { white-space: pre-wrap; }
<translation>Вийти</translation>
</message>
<message>
+ <source>Ctrl+Q</source>
+ <translation></translation>
+ </message>
+ <message>
<source>&amp;About</source>
<translation>&amp;Про</translation>
</message>
@@ -500,16 +469,12 @@ p, li { white-space: pre-wrap; }
</message>
</context>
<context>
- <name>PaletteEditorAdvancedBase</name>
+ <name>PaletteEditorAdvanced</name>
<message>
<source>Tune Palette</source>
<translation>Налаштувати палітру</translation>
</message>
<message>
- <source>&lt;b&gt;Edit Palette&lt;/b&gt;&lt;p&gt;Change the palette of the current widget or form.&lt;/p&gt;&lt;p&gt;Use a generated palette or select colors for each color group and each color role.&lt;/p&gt;&lt;p&gt;The palette can be tested with different widget layouts in the preview section.&lt;/p&gt;</source>
- <translation>&lt;b&gt;Редагування палітри&lt;/b&gt;&lt;p&gt;Змінити палітру поточного віджета чи форми.&lt;/p&gt;&lt;p&gt;Використовуйте згенеровану палітру чи оберіть кольори для кожної групи кольорів та кожної кольорової ролі.&lt;/p&gt;&lt;p&gt;Палітру можна протестувати з різними розміщеннями віджетів в секції попереднього перегляду.&lt;/p&gt;</translation>
- </message>
- <message>
<source>Select &amp;Palette:</source>
<translation>Виберіть &amp;палітру:</translation>
</message>
@@ -558,26 +523,38 @@ p, li { white-space: pre-wrap; }
<translation>Текст вікна</translation>
</message>
<message>
- <source>Button</source>
- <translation>Кнопка</translation>
- </message>
- <message>
<source>Base</source>
<translation>Базовий</translation>
</message>
<message>
+ <source>AlternateBase</source>
+ <translation>Альтернативний базовий</translation>
+ </message>
+ <message>
+ <source>ToolTipBase</source>
+ <translation>Базовий спливаючої підказки</translation>
+ </message>
+ <message>
+ <source>ToolTipText</source>
+ <translation>Текст спливаючої підказки</translation>
+ </message>
+ <message>
<source>Text</source>
<translation>Текст</translation>
</message>
<message>
- <source>BrightText</source>
- <translation>Яскравий текст</translation>
+ <source>Button</source>
+ <translation>Кнопка</translation>
</message>
<message>
<source>ButtonText</source>
<translation>Текст кнопки</translation>
</message>
<message>
+ <source>BrightText</source>
+ <translation>Яскравий текст</translation>
+ </message>
+ <message>
<source>Highlight</source>
<translation>Підсвічений</translation>
</message>
@@ -586,26 +563,22 @@ p, li { white-space: pre-wrap; }
<translation>Підсвічений текст</translation>
</message>
<message>
- <source>&amp;Select Color:</source>
- <translation>&amp;Оберіть колір:</translation>
+ <source>Link</source>
+ <translation>Посилання</translation>
</message>
<message>
- <source>Choose a color</source>
- <translation>Оберіть колір</translation>
+ <source>LinkVisited</source>
+ <translation>Відвідане посилання</translation>
</message>
<message>
- <source>Choose a color for the selected central color role.</source>
- <translation>Виберіть колір для вказаної головної кольорової ролі.</translation>
+ <source>&amp;Select Color:</source>
+ <translation>&amp;Оберіть колір:</translation>
</message>
<message>
<source>3-D shadow &amp;effects</source>
<translation>3-D &amp;ефекти тіні</translation>
</message>
<message>
- <source>Build &amp;from button color</source>
- <translation>Будувати &amp;з кольору кнопки</translation>
- </message>
- <message>
<source>Generate shadings</source>
<translation>Генерувати тіні</translation>
</message>
@@ -614,6 +587,10 @@ p, li { white-space: pre-wrap; }
<translation>Увімкніть, щоб кольори 3D-ефектів розраховувались з кольору кнопки.</translation>
</message>
<message>
+ <source>Build &amp;from button color</source>
+ <translation>Будувати &amp;з кольору кнопки</translation>
+ </message>
+ <message>
<source>Choose 3D-effect color role</source>
<translation>Оберіть роль для 3D-ефектів</translation>
</message>
@@ -646,24 +623,16 @@ p, li { white-space: pre-wrap; }
<translation>Оберіть &amp;колір:</translation>
</message>
<message>
- <source>Choose a color for the selected effect color role.</source>
- <translation>Оберіть колір для вказаної кольорової ролі ефектів.</translation>
- </message>
- <message>
- <source>OK</source>
- <translation>OK</translation>
- </message>
- <message>
- <source>Close dialog and apply all changes.</source>
- <translation>Закрити діалог та застосувати усі зміни.</translation>
+ <source>Choose a color</source>
+ <translation>Оберіть колір</translation>
</message>
<message>
- <source>Cancel</source>
- <translation>Скасувати</translation>
+ <source>Choose a color for the selected central color role.</source>
+ <translation>Виберіть колір для вказаної головної кольорової ролі.</translation>
</message>
<message>
- <source>Close dialog and discard all changes.</source>
- <translation>Закрити діалог та відкинути усі зміни.</translation>
+ <source>Choose a color for the selected effect color role.</source>
+ <translation>Оберіть колір для вказаної кольорової ролі ефектів.</translation>
</message>
</context>
<context>
@@ -674,14 +643,14 @@ p, li { white-space: pre-wrap; }
</message>
</context>
<context>
- <name>PreviewWidgetBase</name>
+ <name>PreviewWidget</name>
<message>
<source>Preview Window</source>
<translation>Вікно попереднього перегляду</translation>
</message>
<message>
- <source>ButtonGroup</source>
- <translation>Група кнопок</translation>
+ <source>GroupBox</source>
+ <translation>Контейнер</translation>
</message>
<message>
<source>RadioButton1</source>
@@ -696,8 +665,8 @@ p, li { white-space: pre-wrap; }
<translation>Перемикач 3</translation>
</message>
<message>
- <source>ButtonGroup2</source>
- <translation>Група кнопок 2</translation>
+ <source>GroupBox2</source>
+ <translation>Контейнер 2</translation>
</message>
<message>
<source>CheckBox1</source>
@@ -720,18 +689,9 @@ p, li { white-space: pre-wrap; }
<translation>Кнопка</translation>
</message>
<message>
- <source>&lt;p&gt;
-&lt;a href=&quot;http://qt.nokia.com&quot;&gt;http://qt.nokia.com&lt;/a&gt;
-&lt;/p&gt;
-&lt;p&gt;
-&lt;a href=&quot;http://www.kde.org&quot;&gt;http://www.kde.org&lt;/a&gt;
-&lt;/p&gt;</source>
- <translation>&lt;p&gt;
-&lt;a href=&quot;http://qt.nokia.com&quot;&gt;http://qt.nokia.com&lt;/a&gt;
-&lt;/p&gt;
-&lt;p&gt;
-&lt;a href=&quot;http://www.kde.org&quot;&gt;http://www.kde.org&lt;/a&gt;
-&lt;/p&gt;</translation>
+ <source>&lt;p&gt;&lt;a href=&quot;http://qt.nokia.com&quot;&gt;http://qt.nokia.com&lt;/a&gt;&lt;/p&gt;
+&lt;p&gt;&lt;a href=&quot;http://www.kde.org&quot;&gt;http://www.kde.org&lt;/a&gt;&lt;/p&gt;</source>
+ <translation></translation>
</message>
</context>
</TS>
diff --git a/translations/qvfb_pl.ts b/translations/qvfb_pl.ts
index 7c18a5b..0d2db1d 100644
--- a/translations/qvfb_pl.ts
+++ b/translations/qvfb_pl.ts
@@ -262,11 +262,11 @@
<name>QVFb</name>
<message>
<source>&amp;File</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Plik</translation>
</message>
<message>
<source>&amp;Configure...</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Konfiguruj...</translation>
</message>
<message>
<source>&amp;Save image...</source>
@@ -274,19 +274,19 @@
</message>
<message>
<source>&amp;Animation...</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Animacja...</translation>
</message>
<message>
<source>&amp;Quit</source>
- <translation type="unfinished"></translation>
+ <translation>Za&amp;kończ</translation>
</message>
<message>
<source>&amp;View</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Widok</translation>
</message>
<message>
<source>Show &amp;Cursor</source>
- <translation type="unfinished"></translation>
+ <translation>Pokaż ku&amp;rsor</translation>
</message>
<message>
<source>&amp;Refresh Rate...</source>
@@ -294,55 +294,55 @@
</message>
<message>
<source>&amp;No rotation</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Brak rotacji</translation>
</message>
<message>
<source>&amp;90° rotation</source>
- <translation type="unfinished"></translation>
+ <translation>Rotacja &amp;90°</translation>
</message>
<message>
<source>1&amp;80° rotation</source>
- <translation type="unfinished"></translation>
+ <translation>Rotacja 1&amp;80°</translation>
</message>
<message>
<source>2&amp;70° rotation</source>
- <translation type="unfinished"></translation>
+ <translation>Rotacja 2&amp;70°</translation>
</message>
<message>
<source>Zoom scale &amp;0.5</source>
- <translation type="unfinished"></translation>
+ <translation>Powiększenie &amp;0.5</translation>
</message>
<message>
<source>Zoom scale 0.7&amp;5</source>
- <translation type="unfinished"></translation>
+ <translation>Powiększenie 0.7&amp;5</translation>
</message>
<message>
<source>Zoom scale &amp;1</source>
- <translation type="unfinished"></translation>
+ <translation>Powiększenie &amp;1</translation>
</message>
<message>
<source>Zoom scale &amp;2</source>
- <translation type="unfinished"></translation>
+ <translation>Powiększenie &amp;2</translation>
</message>
<message>
<source>Zoom scale &amp;3</source>
- <translation type="unfinished"></translation>
+ <translation>Powiększenie &amp;3</translation>
</message>
<message>
<source>Zoom scale &amp;4</source>
- <translation type="unfinished"></translation>
+ <translation>Powiększenie &amp;4</translation>
</message>
<message>
<source>Zoom &amp;scale...</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Powiększenie...</translation>
</message>
<message>
<source>&amp;Help</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Pomoc</translation>
</message>
<message>
<source>&amp;About...</source>
- <translation type="unfinished"></translation>
+ <translation>&amp;Informacje o...</translation>
</message>
<message>
<source>Save Main Screen image</source>
@@ -397,19 +397,19 @@
<name>QVFbRateDialog</name>
<message>
<source>Target frame rate:</source>
- <translation type="unfinished"></translation>
+ <translation>Docelowa częstotliwość:</translation>
</message>
<message>
<source>%1fps</source>
- <translation type="unfinished"></translation>
+ <translation>%1fps</translation>
</message>
<message>
<source>OK</source>
- <translation type="unfinished"></translation>
+ <translation>OK</translation>
</message>
<message>
<source>Cancel</source>
- <translation type="unfinished"></translation>
+ <translation>Anuluj</translation>
</message>
</context>
</TS>