From a2a5a8c5e203fe9d55f9addba1533a30c6f2ba19 Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Thu, 10 Jun 2010 18:54:11 +0200 Subject: Doc: Started organizing Symbian platform deployment information. Reviewed-by: Trust Me --- doc/src/deployment/deployment.qdoc | 27 ++++++++-- doc/src/external-resources.qdoc | 10 ++++ doc/src/platforms/symbian-introduction.qdoc | 76 +++++++++++++++++------------ 3 files changed, 78 insertions(+), 35 deletions(-) diff --git a/doc/src/deployment/deployment.qdoc b/doc/src/deployment/deployment.qdoc index 51974af..286c080 100644 --- a/doc/src/deployment/deployment.qdoc +++ b/doc/src/deployment/deployment.qdoc @@ -1472,8 +1472,10 @@ /*! \page deployment-symbian.html \contentspage Deploying Qt Applications + \ingroup qtsymbian + \title Deploying an Application on the Symbian Platform - \title Deploying an Application on the Symbian platform + \section1 Overview Applications are deployed to Symbian devices in signed \c .sis package files. The \c .sis file content is controlled with \c .pkg files. The \c .pkg file contains a set @@ -1483,10 +1485,17 @@ to end-users some changes are needed. This document describes what changes are typically needed and how to implement them. + \section1 Requirements + + Download the latest release of the Smart Installer from + \l{http://get.qt.nokia.com/nokiasmartinstaller/}, and install it on top + of the Qt package. + \section1 Static Linking - Qt for the Symbian platform does currently not support static linking of - Qt libraries. + Qt for the Symbian platform does not currently support static linking of + Qt libraries with application binaries. You will need to build shared + libraries as described below and link your application with them. \section1 Shared Libraries @@ -1532,7 +1541,7 @@ S60 3rd edition FP1, S60 3rd edition FP2 and S60 5th edition devices. Now we are ready to compile the application and create the application - deployment file. Run \c qmake to create Symbian specific makefiles, resources (\.rss) + deployment file. Run \c qmake to create Symbian specific makefiles, resources (\c .rss) and deployment packaging files (\c .pkg). And do build to create the application binaries and resources. @@ -1562,4 +1571,14 @@ For more information about creating a \c .sis file and installing it to device see also \l {The Symbian platform - Introduction to Qt#Installing your own applications}{here}. + \section1 Further Reading + + This document aims to cover the common case for developers who want to + deploy Qt applications on devices using the Smart Installer. It does not + aim to cover every possible way of installing applications, Qt and other + dependencies on a device. + + A wider selection of deployment methods is described in the + \l{Deploying a Qt Application article} on the Symbian Foundation + Developer Wiki. */ diff --git a/doc/src/external-resources.qdoc b/doc/src/external-resources.qdoc index 249c10a1..6f22f00 100644 --- a/doc/src/external-resources.qdoc +++ b/doc/src/external-resources.qdoc @@ -427,3 +427,13 @@ \externalpage http://opensource.org/licenses/bsd-license.php \title New and Modified BSD Licenses */ + +/*! + \externalpage http://developer.symbian.org/wiki/index.php/Platform_Security_%28Fundamentals_of_Symbian_C%2B%2B%29#Self-Signed_Applications + \title Symbian Platform Security +*/ + +/*! + \externalpage http://developer.symbian.org/wiki/index.php/Deploying_a_Qt_Application + \title Deploying a Qt Application article +*/ diff --git a/doc/src/platforms/symbian-introduction.qdoc b/doc/src/platforms/symbian-introduction.qdoc index 6ffc568..9563a8e 100644 --- a/doc/src/platforms/symbian-introduction.qdoc +++ b/doc/src/platforms/symbian-introduction.qdoc @@ -83,12 +83,12 @@ \tableofcontents - \section1 Required tools + \section1 Required Tools See \l{Qt for the Symbian platform Requirements} to see what tools are required to use Qt for the Symbian platform. - \section1 Installing Qt and running demos + \section1 Installing Qt and Running Demos Follow the instructions found in \l{Installing Qt on the Symbian platform from a Binary Package} to learn how to install Qt using a binary package and how to build and run Qt demos. @@ -96,7 +96,7 @@ Follow the instructions found in \l{Installing Qt on the Symbian platform} to learn how to install Qt using using source package and how to build and run the Qt demos. - \section1 Building your own applications + \section1 Building Your Own Applications If you are new to Qt development, have a look at \l{How to Learn Qt}. In general, the difference between developing a @@ -109,12 +109,19 @@ \snippet doc/src/snippets/code/doc_src_symbian-introduction.qdoc 0 For more information on how to use qmake have a look at the \l - {qmake Tutorial}. + {qmake Tutorial}. In particular, see the + \l{qmake Platform Notes#Symbian platform}{qmake Platform Notes} for + details of Symbian-specific build settings. Now you can build the Qt for the Symbian platform application with - standard build tools. By default, running \c make will produce binaries for - the emulator. However, the Symbian platform comes with several alternative - build targets, as shown in the table below: + standard build tools. + + \section2 Alternative Build Targets + + By default, running \c make will produce binaries for the emulator. + However, the Symbian platform comes with several alternative + build targets that can be used to create binaries for target hardware + and deploy them on devices, as shown in the table below: \table \row \o \c debug-winscw \o Build debug binaries for the emulator (default). @@ -144,19 +151,30 @@ To work on your project in Carbide, simply import the \c .pro file by right clicking on the project explorer and executing "Import...". - \section2 Smart Installer + \section1 Running Applications from the Command Line - The Smart Installer makes sure that deployed applications have all the Qt dependencies - they need to run on a device. + The application can be launched on the emulator using \c{make run} command. - Download the latest release of the Smart Installer from \l{http://get.qt.nokia.com/nokiasmartinstaller/}, - and install it on top of the Qt package. + The application can be launched on a device using \c{make runonphone} command. + When this command is invoked, a \c .sis file is first created as if \c{make sis} + command was invoked (see above for details). + \bold{Note:} Running the application on a device using this command requires + \c TRK application to be running on the device. - \section1 Installing your own applications + Additional environment variables that can be utilized with these commands are: + \table + \row \o \c QT_RUN_OPTIONS \o Any command line parameters you wish to pass + to your application. + \row \o \c QT_RUN_ON_PHONE_OPTIONS \o Options for runonphone application. + Execute \c runonphone from command line for + more information about available options. + \c{make runonphone} only. + \endtable + + \section1 Installing Your Own Applications To install your own applications on hardware, you need a signed \c .sis file. - (Refer to the \l{http://developer.symbian.org/wiki/index.php/Platform_Security_%28Fundamentals_of_Symbian_C%2B%2B%29#Self-Signed_Applications} - {Platform Security Article} for more informations about self-signing.) + (Refer to the \l{Symbian Platform Security} article for more informations about self-signing.) The signed \c .sis file can be created with \c make \c sis target. \c sis target is only supported for executables or projects with \c DEPLOYMENT statements. By default the \c sis target will create signed \c .sis file for last build @@ -214,23 +232,19 @@ \snippet doc/src/snippets/code/doc_src_symbian-introduction.qdoc 5 - \section1 Running applications from command line + \section1 Deployment and the Smart Installer - The application can be launched on the emulator using \c{make run} command. + Although some Symbian devices may already have a version of Qt installed + on them, there needs to be a way to ensure that an appropriate version + of Qt is available for your application to use. Rather than deploy the + required Qt libraries with your application, the preferred way to + package Qt applications for deployment is to download and use the Smart + Installer. - The application can be launched on a device using \c{make runonphone} command. - When this command is invoked, a \c .sis file is first created as if \c{make sis} - command was invoked (see above for details). - \bold{Note:} Running the application on a device using this command requires - \c TRK application to be running on the device. + The Smart Installer makes sure that deployed applications have all the + Qt dependencies they need to run on a device, performing the necessary + updates when the user installs the application. - Additional environment variables that can be utilized with these commands are: - \table - \row \o \c QT_RUN_OPTIONS \o Any command line parameters you wish to pass - to your application. - \row \o \c QT_RUN_ON_PHONE_OPTIONS \o Options for runonphone application. - Execute \c runonphone from command line for - more information about available options. - \c{make runonphone} only. - \endtable + More information about deployment can be found in the + \l{Deploying an Application on the Symbian Platform} document. */ -- cgit v0.12 From 4aab0b33e7c34677b530553bb0a5493aca6547a5 Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Mon, 28 Jun 2010 18:42:41 +0200 Subject: Doc: Synchronize HTML templates for each language. Reviewed-by: Trust Me --- tools/qdoc3/test/qt-html-templates.qdocconf | 2 +- tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf | 14 +- tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf | 191 +++++++++++++++++++--- 3 files changed, 170 insertions(+), 37 deletions(-) diff --git a/tools/qdoc3/test/qt-html-templates.qdocconf b/tools/qdoc3/test/qt-html-templates.qdocconf index 1fb000b..8708f1b 100644 --- a/tools/qdoc3/test/qt-html-templates.qdocconf +++ b/tools/qdoc3/test/qt-html-templates.qdocconf @@ -160,7 +160,7 @@ HTML.footer = " <!-- /div -->\n" \ " <div id=\"feedbackBox\">\n" \ " <div id=\"feedcloseX\" class=\"feedclose t_button\">X</div>\n" \ " <form id=\"feedform\" action=\"http://doc.qt.nokia.com/docFeedbck/feedback.php\" method=\"get\">\n" \ - " <p><textarea id=\"feedbox\" name=\"feedText\" rows=\"5\" cols=\"40\">Please submit you feedback...</textarea></p>\n" \ + " <p><textarea id=\"feedbox\" name=\"feedText\" rows=\"5\" cols=\"40\">Please submit your feedback...</textarea></p>\n" \ " <p><input id=\"feedsubmit\" class=\"feedclose\" type=\"submit\" name=\"feedback\" /></p>\n" \ " </form>\n" \ " </div>\n" \ diff --git a/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf b/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf index 027548e..e2abd2a 100644 --- a/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf +++ b/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf @@ -160,19 +160,9 @@ HTML.footer = " <!-- /div -->\n" \ " <div id=\"feedbackBox\">\n" \ " <div id=\"feedcloseX\" class=\"feedclose t_button\">X</div>\n" \ " <form id=\"feedform\" action=\"http://doc.qt.nokia.com/docFeedbck/feedback.php\" method=\"get\">\n" \ - " <p><textarea id=\"feedbox\" name=\"feedText\" rows=\"5\" cols=\"40\">Please submit you feedback...</textarea></p>\n" \ + " <p><textarea id=\"feedbox\" name=\"feedText\" rows=\"5\" cols=\"40\">Please submit your feedback...</textarea></p>\n" \ " <p><input id=\"feedsubmit\" class=\"feedclose\" type=\"submit\" name=\"feedback\" /></p>\n" \ " </form>\n" \ " </div>\n" \ " <div id=\"blurpage\">\n" \ - " </div>\n" \ - "<script type=\"text/javascript\">\n" \ - " var _gaq = _gaq || [];\n" \ - " _gaq.push([\'_setAccount\', \'UA-4457116-5\']);\n" \ - " _gaq.push([\'_trackPageview\']);\n" \ - " (function() {\n" \ - " var ga = document.createElement(\'script\'); ga.type = \'text/javascript\'; ga.async = true;\n" \ - " ga.src = (\'https:\' == document.location.protocol ? \'https://ssl\' : \'http://www\') + \'.google-analytics.com/ga.js\';\n" \ - " var s = document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga, s);\n" \ - " })();\n" \ - "</script>\n" + " </div>\n" diff --git a/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf b/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf index 5fb68cf..e00bef9 100644 --- a/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf +++ b/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf @@ -1,25 +1,168 @@ -HTML.stylesheets = classic.css -HTML.postheader = "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">\n" \ - "<tr>\n" \ - "<td align=\"left\" valign=\"top\" width=\"32\">" \ - "<a href=\"http://qt.nokia.com/\"><img src=\"images/qt-logo.png\" align=\"left\" border=\"0\" /></a>" \ - "</td>\n" \ - "<td width=\"1\"> </td>" \ - "<td class=\"postheader\" valign=\"center\">" \ - "<a href=\"http://qt.nokia.com/doc/4.7/index.html\">" \ - "<font color=\"#004faf\">主页</font></a> ·" \ - " <a href=\"http://qt.nokia.com/doc/4.7/classes.html\">" \ - "<font color=\"#004faf\">所有类</font></a> ·" \ - " <a href=\"http://qt.nokia.com/doc/4.7/functions.html\">" \ - "<font color=\"#004faf\">所有函数</font></a> ·" \ - " <a href=\"http://qt.nokia.com/doc/4.7/overviews.html\">" \ - "<font color=\"#004faf\">简介</font></a>" \ - "</td>" \ - "</tr></table>" +HTML.stylesheets = style/style.css \ + style/OfflineStyle.css \ + style/style_ie7.css \ + style/style_ie8.css \ + style/style_ie6.css -HTML.footer = "<p /><address><hr /><div align=\"center\">\n" \ - "<table width=\"100%\" cellspacing=\"0\" border=\"0\"><tr class=\"address\">\n" \ - "<td width=\"40%\" align=\"left\">版权所有 © 2010 诺基亚公司和/或其子公司</td>\n" \ - "<td width=\"20%\" align=\"center\"><a href=\"trademarks.html\">商标</a></td>\n" \ - "<td width=\"40%\" align=\"right\"><div align=\"right\">Qt \\version</div></td>\n" \ - "</tr></table></div></address>" +HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ + " <div class=\"content\"> \n" \ + " <div id=\"nav-logo\">\n" \ + " <a href=\"index.html\">Home</a></div>\n" \ + " <a href=\"index.html\" class=\"qtref\"><span>Qt Reference Documentation</span></a>\n" \ + " <div id=\"narrowsearch\"><form onsubmit=\"return false;\" action=\"\" id=\"qtdocsearch\">\n" \ + " <fieldset>\n" \ + " <input type=\"text\" value=\"\" id=\"pageType\" name=\"searchstring\">\n" \ + " </fieldset>\n" \ + " </form></div>\n" \ + " <div id=\"nav-topright\">\n" \ + " <ul>\n" \ + " <li class=\"nav-topright-home\"><a href=\"http://qt.nokia.com/\">Qt HOME</a></li>\n" \ + " <li class=\"nav-topright-dev\"><a href=\"http://qt.nokia.com/developer\">DEV</a></li>\n" \ + " <li class=\"nav-topright-labs\"><a href=\"http://labs.qt.nokia.com/blogs/\">LABS</a></li>\n" \ + " <li class=\"nav-topright-doc nav-topright-doc-active\"><a href=\"http://doc.qt.nokia.com/\">\n" \ + " DOC</a></li>\n" \ + " <li class=\"nav-topright-blog\"><a href=\"http://blog.qt.nokia.com/\">BLOG</a></li>\n" \ + " <li class=\"nav-topright-shop\"><a title=\"SHOP\" href=\"http://shop.qt.nokia.com\">SHOP</a></li>\n" \ + " </ul>\n" \ + " </div>\n" \ + " <div id=\"shortCut\">\n" \ + " <ul>\n" \ + " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.7</a></span></li>\n" \ + " <li class=\"shortCut-topleft-active\"><a href=\"http://qt.nokia.com/doc/\">ALL VERSIONS" \ + " </a></li>\n" \ + " </ul>\n" \ + " </div>\n" \ + " <ul class=\"sf-menu sf-js-enabled sf-shadow\" id=\"narrowmenu\"> \n" \ + " <li><a href=\"#\">API Lookup</a> \n" \ + " <ul id=\"topmenuLook\"> \n" \ + " <li><a href=\"classes.html\">所有类</a></li> \n" \ + " <li><a href=\"functions.html\">所有函数</a></li> \n" \ + " <li><a href=\"modules.html\">Modules</a></li> \n" \ + " <li><a href=\"namespaces.html\">Namespaces</a></li> \n" \ + " <li><a href=\"qtglobal.html\">Global stuff</a></li> \n" \ + " <li><a href=\"qdeclarativeelements.html\">QML elements</a></li> \n" \ + " </ul> \n" \ + " </li> \n" \ + " <li><a href=\"#\">Qt Topics</a> \n" \ + " <ul id=\"topmenuTopic\"> \n" \ + " <li><a href=\"qt-basic-concepts.html\">Basic Qt architecture</a></li> \n" \ + " <li><a href=\"declarativeui.html\">Device UI's & Qt Quick</a></li> \n" \ + " <li><a href=\"qt-gui-concepts.html\">Desktop UI components</a></li> \n" \ + " <li><a href=\"platform-specific.html\">Platform-specific info</a></li> \n" \ + " </ul> \n" \ + " </li> \n" \ + " <li><a href=\"#\">Examples</a> \n" \ + " <ul id=\"topmenuexample\"> \n" \ + " <li><a href=\"all-examples.html\">Examples</a></li> \n" \ + " <li><a href=\"tutorials.html\">Tutorials</a></li> \n" \ + " <li><a href=\"demos.html\">Demos</a></li> \n" \ + " <li><a href=\"qdeclarativeexamples.html\">QML Examples</a></li> \n" \ + " <li><a href=\"qdeclarativeexamples.html#Demos\">QML Demos</a></li> \n" \ + " </ul> \n" \ + " </li> \n" \ + " </ul> \n" \ + " </div>\n" \ + " </div>\n" \ + " <div class=\"wrapper\">\n" \ + " <div class=\"hd\">\n" \ + " <span></span>\n" \ + " </div>\n" \ + " <div class=\"bd group\">\n" \ + " <div class=\"sidebar\">\n" \ + " <div class=\"searchlabel\">\n" \ + " Search index:</div>\n" \ + " <div class=\"search\">\n" \ + " <form id=\"qtdocsearch\" action=\"\" onsubmit=\"return false;\">\n" \ + " <fieldset>\n" \ + " <input type=\"text\" name=\"searchstring\" id=\"pageType\" value=\"\" />\n" \ + " </fieldset>\n" \ + " </form>\n" \ + " </div>\n" \ + " <div class=\"box first bottombar\" id=\"lookup\">\n" \ + " <h2 title=\"API Lookup\"><span></span>\n" \ + " API Lookup</h2>\n" \ + " <div id=\"list001\" class=\"list\">\n" \ + " <ul id=\"ul001\" >\n" \ + " <li class=\"defaultLink\"><a href=\"classes.html\">所有类</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"functions.html\">所有函数</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"modules.html\">Modules</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"namespaces.html\">Namespaces</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"qtglobal.html\">Global stuff</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"qdeclarativeelements.html\">QML elements</a></li>\n" \ + " </ul> \n" \ + " </div>\n" \ + " </div>\n" \ + " <div class=\"box bottombar\" id=\"topics\">\n" \ + " <h2 title=\"Qt Topics\"><span></span>\n" \ + " Qt Topics</h2>\n" \ + " <div id=\"list002\" class=\"list\">\n" \ + " <ul id=\"ul002\" >\n" \ + " <li class=\"defaultLink\"><a href=\"qt-basic-concepts.html\">Basic Qt architecture</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"declarativeui.html\">Device UI's & Qt Quick</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"qt-gui-concepts.html\">Desktop UI components</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"platform-specific.html\">Platform-specific info</a></li>\n" \ + " </ul> \n" \ + " </div>\n" \ + " </div>\n" \ + " <div class=\"box\" id=\"examples\">\n" \ + " <h2 title=\"Examples\"><span></span>\n" \ + " Examples</h2>\n" \ + " <div id=\"list003\" class=\"list\">\n" \ + " <ul id=\"ul003\">\n" \ + " <li class=\"defaultLink\"><a href=\"all-examples.html\">Examples</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"tutorials.html\">Tutorials</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"demos.html\">Demos</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"qdeclarativeexamples.html\">QML Examples</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"qdeclarativeexamples.html#Demos\">QML Demos</a></li>\n" \ + " </ul> \n" \ + " </div>\n" \ + " </div>\n" \ + " </div>\n" \ + " <div class=\"wrap\">\n" \ + " <div class=\"toolbar\">\n" \ + " <div class=\"breadcrumb toolblock\">\n" \ + " <ul>\n" \ + " <li class=\"first\"><a href=\"index.html\">Home</a></li>\n" \ + " <!-- Bread crumbs goes here -->\n" + +HTML.postpostheader = " </ul>\n" \ + " </div>\n" \ + " <div class=\"toolbuttons toolblock\">\n" \ + " <ul>\n" \ + " <li id=\"smallA\" class=\"t_button\">A</li>\n" \ + " <li id=\"medA\" class=\"t_button active\">A</li>\n" \ + " <li id=\"bigA\" class=\"t_button\">A</li>\n" \ + " <li id=\"print\" class=\"t_button\"><a href=\"javascript:this.print();\">\n" \ + " <span>Print</span></a></li>\n" \ + " </ul>\n" \ + " </div>\n" \ + " </div>\n" \ + " <div class=\"content\">\n" + +HTML.footer = " <!-- /div -->\n" \ + " <div class=\"feedback t_button\">\n" \ + " [+] Documentation Feedback</div>\n" \ + " </div>\n" \ + " </div>\n" \ + " <div class=\"ft\">\n" \ + " <span></span>\n" \ + " </div>\n" \ + " </div> \n" \ + " <div class=\"footer\">\n" \ + " <p>\n" \ + " <acronym title=\"Copyright\">©</acronym> 2008-2010 Nokia Corporation and/or its\n" \ + " subsidiaries. Nokia, Qt and their respective logos are trademarks of Nokia Corporation \n" \ + " in Finland and/or other countries worldwide.</p>\n" \ + " <p>\n" \ + " All other trademarks are property of their respective owners. <a title=\"Privacy Policy\"\n" \ + " href=\"http://qt.nokia.com/about/privacy-policy\">Privacy Policy</a></p>\n" \ + " </div>\n" \ + " <div id=\"feedbackBox\">\n" \ + " <div id=\"feedcloseX\" class=\"feedclose t_button\">X</div>\n" \ + " <form id=\"feedform\" action=\"http://doc.qt.nokia.com/docFeedbck/feedback.php\" method=\"get\">\n" \ + " <p><textarea id=\"feedbox\" name=\"feedText\" rows=\"5\" cols=\"40\">Please submit your feedback...</textarea></p>\n" \ + " <p><input id=\"feedsubmit\" class=\"feedclose\" type=\"submit\" name=\"feedback\" /></p>\n" \ + " </form>\n" \ + " </div>\n" \ + " <div id=\"blurpage\">\n" \ + " </div>\n" -- cgit v0.12 From 08478207ee9a6563ae63ebcef833925db6426bd8 Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Wed, 30 Jun 2010 19:03:53 +0200 Subject: Doc: Made the Gestures Programming document more visible. Reviewed-by: Trust Me --- src/gui/kernel/qevent.cpp | 5 +++++ src/gui/kernel/qgesture.cpp | 28 +++++++++++++++++++++++----- src/gui/kernel/qgesturerecognizer.cpp | 3 +++ 3 files changed, 31 insertions(+), 5 deletions(-) diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp index 92eed33..0c0eabb 100644 --- a/src/gui/kernel/qevent.cpp +++ b/src/gui/kernel/qevent.cpp @@ -4281,6 +4281,11 @@ QTouchEvent::TouchPoint &QTouchEvent::TouchPoint::operator=(const QTouchEvent::T QGestureEvent::accept() for each of them, or an event filter consumes the event. + \section1 Further Reading + + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + \sa QGesture, QGestureRecognizer, QWidget::grabGesture(), QGraphicsObject::grabGesture() */ diff --git a/src/gui/kernel/qgesture.cpp b/src/gui/kernel/qgesture.cpp index f5688f4..8264422 100644 --- a/src/gui/kernel/qgesture.cpp +++ b/src/gui/kernel/qgesture.cpp @@ -58,6 +58,9 @@ QT_BEGIN_NAMESPACE the QGestureRecognizer object that is registered with the application; see QGestureRecognizer::registerRecognizer(). + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + \section1 Gesture Properties The class has a list of properties that can be queried by the user to get @@ -218,7 +221,10 @@ QGesture::GestureCancelPolicy QGesture::gestureCancelPolicy() const \image pangesture.png - \sa {Gestures Programming}, QPinchGesture, QSwipeGesture + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + + \sa QPinchGesture, QSwipeGesture */ /*! @@ -313,6 +319,9 @@ void QPanGesture::setAcceleration(qreal value) them closer together or further apart to change the scale factor, zoom, or level of detail of the user interface. + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + \image pinchgesture.png Instead of repeatedly applying the same pinching gesture, the user may @@ -321,7 +330,7 @@ void QPanGesture::setAcceleration(qreal value) will continue to be delivered to the target object, containing an instance of QPinchGesture in the Qt::GestureUpdated state. - \sa {Gestures Programming}, QPanGesture, QSwipeGesture + \sa QPanGesture, QSwipeGesture */ /*! @@ -571,7 +580,10 @@ void QPinchGesture::setRotationAngle(qreal value) \image swipegesture.png - \sa {Gestures Programming}, QPanGesture, QPinchGesture + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + + \sa QPanGesture, QPinchGesture */ /*! @@ -666,7 +678,10 @@ void QSwipeGesture::setSwipeAngle(qreal value) \brief The QTapGesture class describes a tap gesture made by the user. \ingroup gestures - \sa {Gestures Programming}, QPanGesture, QPinchGesture + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + + \sa QPanGesture, QPinchGesture */ /*! @@ -699,7 +714,10 @@ void QTapGesture::setPosition(const QPointF &value) gesture made by the user. \ingroup gestures - \sa {Gestures Programming}, QPanGesture, QPinchGesture + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + + \sa QPanGesture, QPinchGesture */ /*! diff --git a/src/gui/kernel/qgesturerecognizer.cpp b/src/gui/kernel/qgesturerecognizer.cpp index 3e23bbf..e0e7784 100644 --- a/src/gui/kernel/qgesturerecognizer.cpp +++ b/src/gui/kernel/qgesturerecognizer.cpp @@ -62,6 +62,9 @@ QT_BEGIN_NAMESPACE need to use this class directly. Instances will be created behind the scenes by the framework. + For an overview of gesture handling in Qt and information on using gestures + in your applications, see the \l{Gestures Programming} document. + \section1 Recognizing Gestures The process of recognizing gestures involves filtering input events sent to specific -- cgit v0.12 From bbc7aa139308ff304f2e4c2611ed57d855d00d80 Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Fri, 16 Jul 2010 14:04:08 +0200 Subject: Doc: Fixed name clash. Reviewed-by: Trust Me --- doc/src/examples/qml-examples.qdoc | 1 - 1 file changed, 1 deletion(-) diff --git a/doc/src/examples/qml-examples.qdoc b/doc/src/examples/qml-examples.qdoc index ce53677..db6e657 100644 --- a/doc/src/examples/qml-examples.qdoc +++ b/doc/src/examples/qml-examples.qdoc @@ -165,7 +165,6 @@ \image qml-layoutitem-example.png */ /*! - \title QGraphicsGridLayout \example declarative/cppextensions/qgraphicslayouts/qgraphicsgridlayout This example shows how to use QGraphicsGridLayout to lay out QML items. This is -- cgit v0.12 From 4ed51b7160471ae3a7db1fbb12a8f265ff7c3239 Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Fri, 16 Jul 2010 14:06:50 +0200 Subject: Doc: Merged in some of Thomas Zander's suggestions. Reviewed-by: Trust Me --- doc/src/frameworks-technologies/gestures.qdoc | 49 +++++++++++++++++++++++++-- 1 file changed, 47 insertions(+), 2 deletions(-) diff --git a/doc/src/frameworks-technologies/gestures.qdoc b/doc/src/frameworks-technologies/gestures.qdoc index 927df22..f7c8312 100644 --- a/doc/src/frameworks-technologies/gestures.qdoc +++ b/doc/src/frameworks-technologies/gestures.qdoc @@ -60,7 +60,8 @@ \section1 Using Standard Gestures with Widgets Gestures can be enabled for instances of QWidget and QGraphicsObject subclasses. - An object that accepts gesture input is referred to as a \e{target object}. + An object that accepts gesture input is referred to throughout the documentation + as a \e{target object}. To enable a gesture for a target object, call its QWidget::grabGesture() or QGraphicsObject::grabGesture() function with an argument describing the @@ -69,13 +70,57 @@ \snippet examples/gestures/imagegestures/imagewidget.cpp enable gestures - In the above code, the gesture is set up in the constructor of the target object + In the above code, the gestures are set up in the constructor of the target object itself. + \section1 Handling Events + When the user performs a gesture, QGestureEvent events will be delivered to the target object, and these can be handled by reimplementing the QWidget::event() handler function for widgets or QGraphicsItem::sceneEvent() for graphics objects. + As one target object can subscribe to more than one gesture type, the QGestureEvent + can contain more than one QGesture, indicating several possible gestures are active + at the same time. It is then up to the widget to determine how to handle those + multiple gestures and choose if some should be canceled in favor of others. + + Each QGesture contained within a QGestureEvent object can be accepted() or ignored() + individually, or all together. Additionally, you can query the individual QGesture + data objects (the state) using several getters. + + \section2 Standard Procedure for Event Handling + + A QGesture is by default accepted when it arrives at your widget. However, it is good + practice to always explicitly accept or reject a gesture. The general rule is that, if + you accept a gesture, you are using it. If you are ignoring it you are not interested + in it. Ignoring a gesture may mean it gets offered to another target object, or it will + get canceled. + + Each QGesture has several states it goes through; there is a well defined way to change + the state, typically the user input is the cause of state changes (by starting and + stopping interaction, for instance) but the widget can also cause state changes. + + The first time a particular QGesture is delivered to a widget or graphics item, it will + be in the Qt::GestureStarted state. The way you handle the gesture at this point + influences whether you can interact with it later. + + \list + \o Accepting the gesture means the widget acts on the gesture and there will follow + gestures with the Qt::GestureUpdatedstate. + \o Ignoring the gesture will mean the gesture will never be offered to you again. + It will be offered to a parent widget or item as well. + \o Calling setGestureCancelPolicy() on the gesture when it is in its starting state, + and is also accepted can cause other gestures to be canceled. + \endlist + + Using QGesture::CancelAllInContext to cancel a gesture will cause all gestures, in any + state, to be canceled unless they are explicitly accepted. This means that active + gestures on children will get canceled. It also means that gestures delivered in the + same QGestureEvent will get canceled if the widget ignores them. This can be a useful + way to filter out all gestures except the one you are interested in. + + \section2 Example Event Handling + For convenience, the \l{Image Gestures Example} reimplements the general \l{QWidget::}{event()} handler function and delegates gesture events to a specialized gestureEvent() function: -- cgit v0.12 From d59380458cce6fc52b6de91d8380b31d46c3f83f Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Fri, 16 Jul 2010 14:09:11 +0200 Subject: Doc: Fixed QML documentation errors. Reviewed-by: Trust Me --- src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp | 2 +- src/declarative/graphicsitems/qdeclarativepathview.cpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp index 0342c9f..9dcba60 100644 --- a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp +++ b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp @@ -612,7 +612,7 @@ QAction* QDeclarativeWebView::stopAction() const #endif // QT_NO_ACTION /*! - \qmlproperty real WebView::title + \qmlproperty string WebView::title This property holds the title of the web page currently viewed By default, this property contains an empty string. diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp index f4ebd13..1224c73 100644 --- a/src/declarative/graphicsitems/qdeclarativepathview.cpp +++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp @@ -403,7 +403,7 @@ QDeclarativePathView::~QDeclarativePathView() The model provides a set of data that is used to create the items for the view. For large or dynamic datasets the model is usually provided by a C++ model object. - Models can also be created directly in XML, using the ListModel element. + Models can also be created directly in QML, using the ListModel element. \sa {qmlmodels}{Data Models} */ @@ -627,8 +627,8 @@ void QDeclarativePathViewPrivate::setOffset(qreal o) so as to stay with the current item. The below example demonstrates how to make a simple highlight. Note the use - of the PathView.onPath property to ensure that the highlight is hidden - when flicked off of the path. + of the \l{PathView::onPath}{PathView.onPath} attached property to ensure that + the highlight is hidden when flicked away from the path. \code Component { -- cgit v0.12 From e2fb9c4df301678719cb0cff78838b35435c3b38 Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Fri, 16 Jul 2010 14:09:59 +0200 Subject: Doc: Fixed typo. Reviewed-by: Trust Me --- src/xmlpatterns/api/qabstractxmlnodemodel.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/xmlpatterns/api/qabstractxmlnodemodel.cpp b/src/xmlpatterns/api/qabstractxmlnodemodel.cpp index 7f2ad9f..0f9760d 100644 --- a/src/xmlpatterns/api/qabstractxmlnodemodel.cpp +++ b/src/xmlpatterns/api/qabstractxmlnodemodel.cpp @@ -1355,7 +1355,7 @@ bool QXmlItem::isNull() const QAbstractXmlNodeModel for its existence, the only way you can create an instance of QXmlNodeModelIndex is by asking the node model to create one for you with QAbstractXmlNodeModel::createIndex(). Since - that function is protected, it is usually a good ide to write a + that function is protected, it is usually a good idea to write a public function that creates a QXmlNodeModelIndex from arguments that are appropriate for your particular node model. -- cgit v0.12 From 8f0e2e8a995f16fe737e538ce6f35e91b5a100b5 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Mon, 26 Jul 2010 14:04:52 +0100 Subject: Clear Qt::WA_OutsideWSRange when making window fullscreen Task-number: QTBUG-10269 Reviewed-by: Jason Barron --- src/gui/kernel/qwidget_s60.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp index 46f3254..d06328c 100644 --- a/src/gui/kernel/qwidget_s60.cpp +++ b/src/gui/kernel/qwidget_s60.cpp @@ -1130,8 +1130,10 @@ void QWidget::setWindowState(Qt::WindowStates newstate) const bool cbaVisibilityHint = windowFlags() & Qt::WindowSoftkeysVisibleHint; if (newstate & Qt::WindowFullScreen && !cbaVisibilityHint) { + setAttribute(Qt::WA_OutsideWSRange, false); window->SetExtentToWholeScreen(); } else if (newstate & Qt::WindowMaximized || ((newstate & Qt::WindowFullScreen) && cbaVisibilityHint)) { + setAttribute(Qt::WA_OutsideWSRange, false); TRect maxExtent = qt_QRect2TRect(qApp->desktop()->availableGeometry(this)); window->SetExtent(maxExtent.iTl, maxExtent.Size()); } else { -- cgit v0.12 From f1257358b4432abf874460f58cba73bce17981ab Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Tue, 27 Jul 2010 16:23:52 +0100 Subject: Ensure that window rectangle is updated when CBA visibility changes In S60, there are two pieces of screen furniture, changes in whose visibility or size can affect the size of the Qt application window. These are the status pane, at the top of the screen, and the CBA at the bottom. QSymbianControl listens for changes in status pane visibility and size by implementing MEikStatusPaneObserver. Notifications received via this interface trigger a call to QSymbianControl::handleClientAreaChange() which resizes the control. There is no corresponding interface through which to receive notifications of changes in CBA visibility. This patch introduces a utility function for setting the visibility of both the status pane and CBA, which ensures that the control's rectangle is updated when either one changes. Task-number: QTBUG-5320 Reviewed-by: Jason Barron --- src/gui/kernel/qapplication_s60.cpp | 36 +++++++++++++++++++++++++----------- src/gui/kernel/qt_s60_p.h | 3 +++ src/gui/kernel/qwidget_s60.cpp | 15 +++++---------- 3 files changed, 33 insertions(+), 21 deletions(-) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index d5ff792..7dbf4b7 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -102,6 +102,25 @@ QS60Data* qGlobalS60Data() return qt_s60Data(); } +#ifdef Q_WS_S60 +void QS60Data::setStatusPaneAndButtonGroupVisibility(bool statusPaneVisible, bool buttonGroupVisible) +{ + bool buttonGroupVisibilityChanged = false; + if (CEikButtonGroupContainer *const b = buttonGroupContainer()) { + buttonGroupVisibilityChanged = (b->IsVisible() != buttonGroupVisible); + b->MakeVisible(buttonGroupVisible); + } + bool statusPaneVisibilityChanged = false; + if (CEikStatusPane *const s = statusPane()) { + statusPaneVisibilityChanged = (s->IsVisible() != statusPaneVisible); + s->MakeVisible(statusPaneVisible); + } + if (buttonGroupVisibilityChanged && !statusPaneVisibilityChanged) + // Ensure that control rectangle is updated + static_cast<QSymbianControl *>(QApplication::activeWindow()->winId())->handleClientAreaChange(); +} +#endif + bool qt_nograb() // application no-grab option { #if defined(QT_DEBUG) @@ -999,17 +1018,12 @@ void QSymbianControl::FocusChanged(TDrawNow /* aDrawNow */) qwidget->d_func()->setWindowTitle_sys(qwidget->windowTitle()); #ifdef Q_WS_S60 // If widget is fullscreen/minimized, hide status pane and button container otherwise show them. - CEikStatusPane *statusPane = S60->statusPane(); - CEikButtonGroupContainer *buttonGroup = S60->buttonGroupContainer(); - TBool visible = !(qwidget->windowState() & (Qt::WindowFullScreen | Qt::WindowMinimized)); - if (statusPane) - statusPane->MakeVisible(visible); - if (buttonGroup) { - // Visibility - const TBool isFullscreen = qwidget->windowState() & Qt::WindowFullScreen; - const TBool cbaVisibilityHint = qwidget->windowFlags() & Qt::WindowSoftkeysVisibleHint; - buttonGroup->MakeVisible(visible || (isFullscreen && cbaVisibilityHint)); - } + const bool visible = !(qwidget->windowState() & (Qt::WindowFullScreen | Qt::WindowMinimized)); + const bool statusPaneVisibility = visible; + const bool isFullscreen = qwidget->windowState() & Qt::WindowFullScreen; + const bool cbaVisibilityHint = qwidget->windowFlags() & Qt::WindowSoftkeysVisibleHint; + const bool buttonGroupVisibility = (visible || (isFullscreen && cbaVisibilityHint)); + S60->setStatusPaneAndButtonGroupVisibility(statusPaneVisibility, buttonGroupVisibility); #endif } else if (QApplication::activeWindow() == qwidget->window()) { if (CCoeEnv::Static()->AppUi()->IsDisplayingMenuOrDialog() || S60->menuBeingConstructed) { diff --git a/src/gui/kernel/qt_s60_p.h b/src/gui/kernel/qt_s60_p.h index bec51b8..bf71062 100644 --- a/src/gui/kernel/qt_s60_p.h +++ b/src/gui/kernel/qt_s60_p.h @@ -148,6 +148,7 @@ public: static inline CAknTitlePane* titlePane(); static inline CAknContextPane* contextPane(); static inline CEikButtonGroupContainer* buttonGroupContainer(); + static void setStatusPaneAndButtonGroupVisibility(bool statusPaneVisible, bool buttonGroupVisible); TTrapHandler *s60InstalledTrapHandler; #endif @@ -226,6 +227,8 @@ private: #ifdef QT_SYMBIAN_SUPPORTS_ADVANCED_POINTER void translateAdvancedPointerEvent(const TAdvancedPointerEvent *event); #endif + +public: void handleClientAreaChange(); private: diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp index d06328c..fe0d083 100644 --- a/src/gui/kernel/qwidget_s60.cpp +++ b/src/gui/kernel/qwidget_s60.cpp @@ -1110,15 +1110,10 @@ void QWidget::setWindowState(Qt::WindowStates newstate) // The window decoration visibility has to be changed before doing actual window state // change since in that order the availableGeometry will return directly the right size and // we will avoid unnecessarty redraws - CEikStatusPane *statusPane = S60->statusPane(); - CEikButtonGroupContainer *buttonGroup = S60->buttonGroupContainer(); - TBool visible = !(newstate & (Qt::WindowFullScreen | Qt::WindowMinimized)); - if (statusPane) - statusPane->MakeVisible(visible); - if (buttonGroup) { - // Visibility - buttonGroup->MakeVisible(visible || (isFullscreen && cbaRequested)); - } + const bool visible = !(newstate & (Qt::WindowFullScreen | Qt::WindowMinimized)); + const bool statusPaneVisibility = visible; + const bool buttonGroupVisibility = (visible || (isFullscreen && cbaRequested)); + S60->setStatusPaneAndButtonGroupVisibility(statusPaneVisibility, buttonGroupVisibility); #endif // Q_WS_S60 // Ensure the initial size is valid, since we store it as normalGeometry below. @@ -1142,7 +1137,7 @@ void QWidget::setWindowState(Qt::WindowStates newstate) // accurate because it did not consider the status pane. This means that when returning // normal mode after showing the status pane, the geometry would overlap so we should // move it if it never had an explicit position. - if (!wasMoved && statusPane && visible) { + if (!wasMoved && S60->statusPane() && visible) { TPoint tl = static_cast<CEikAppUi*>(S60->appUi())->ClientRect().iTl; normalGeometry.setTopLeft(QPoint(tl.iX, tl.iY)); } -- cgit v0.12 From 9a059c53caaf19cd2ff722df6e47870a2843ee43 Mon Sep 17 00:00:00 2001 From: Jason Barron <jason.barron@nokia.com> Date: Fri, 30 Jul 2010 11:38:37 +0200 Subject: Fix proxy widgets with the OpenVG paint engine. Proxy widgets use the shared painter functionality and this implies that the paint engine's begin function does not get called for each new widget that gets painted. This causes a problem because the system clip gets modified by QPainter, but the paint engine does not realize that this happened and fails to use the new clip. The result is that you can end up painting outside the intended clip area. The fix is to reimplement the virtual systemStateChanged() function in QVGPaintEnginePrivate and make it call updateScissor() to re-evaluate the clipping flags and update the current clip accordingly. A similar fix was done to the OpenGL paint engine way back in 307c2954. Task-number: QTBUG-12486 Reviewed-by: Rhys Weatherley --- src/openvg/qpaintengine_vg.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/openvg/qpaintengine_vg.cpp b/src/openvg/qpaintengine_vg.cpp index 7de09ce..e368c32 100644 --- a/src/openvg/qpaintengine_vg.cpp +++ b/src/openvg/qpaintengine_vg.cpp @@ -120,6 +120,7 @@ private: class QVGPaintEnginePrivate : public QPaintEngineExPrivate { + Q_DECLARE_PUBLIC(QVGPaintEngine) public: // Extra blending modes from VG_KHR_advanced_blending extension. // Use the QT_VG prefix to avoid conflicts with any definitions @@ -150,7 +151,7 @@ public: QT_VG_BLEND_XOR_KHR = 0x2026 }; - QVGPaintEnginePrivate(); + QVGPaintEnginePrivate(QVGPaintEngine *q_ptr); ~QVGPaintEnginePrivate(); void init(); @@ -171,6 +172,7 @@ public: void setBrushTransform(const QBrush& brush, VGMatrixMode mode); void setupColorRamp(const QGradient *grad, VGPaint paint); void setImageOptions(); + void systemStateChanged(); #if !defined(QVG_SCISSOR_CLIP) void ensureMask(QVGPaintEngine *engine, int width, int height); void modifyMask @@ -299,6 +301,9 @@ public: // Clear all lazily-set modes. void clearModes(); + +private: + QVGPaintEngine *q; }; inline void QVGPaintEnginePrivate::setImageMode(VGImageMode mode) @@ -350,7 +355,7 @@ void QVGPaintEnginePrivate::clearModes() imageQuality = (VGImageQuality)0; } -QVGPaintEnginePrivate::QVGPaintEnginePrivate() +QVGPaintEnginePrivate::QVGPaintEnginePrivate(QVGPaintEngine *q_ptr) : q(q_ptr) { init(); } @@ -1452,7 +1457,7 @@ QVGPainterState::~QVGPainterState() } QVGPaintEngine::QVGPaintEngine() - : QPaintEngineEx(*new QVGPaintEnginePrivate) + : QPaintEngineEx(*new QVGPaintEnginePrivate(this)) { } @@ -2995,6 +3000,11 @@ void QVGPaintEnginePrivate::setImageOptions() } } +void QVGPaintEnginePrivate::systemStateChanged() +{ + q->updateScissor(); +} + static void drawVGImage(QVGPaintEnginePrivate *d, const QRectF& r, VGImage vgImg, const QSize& imageSize, const QRectF& sr) -- cgit v0.12 From 4cf313be8d440e2ef9bdb4a586fbcba20c3ee317 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Wed, 28 Jul 2010 14:05:52 +0100 Subject: Added support to Phonon MMF backend for playback of Qt resource files The backend accesses the resource file path via MediaSource::url(). A small patch to Phonon was required to enable this, because by default, Phonon passes a QIODevice, rather than the resource file path, to the backend. The backend uses this path to create a QResource object, through which the memory buffer into which the resource file has been read can be accessed. This buffer is wrapped in a Symbian 8-bit descriptor and passed to the OpenDesL() function of the appropriate MMF client utility API. Task-number: QTBUG-6562 --- src/3rdparty/phonon/mmf/abstractmediaplayer.cpp | 28 ++++++++-- src/3rdparty/phonon/mmf/abstractmediaplayer.h | 6 ++- src/3rdparty/phonon/mmf/abstractplayer.h | 4 +- src/3rdparty/phonon/mmf/abstractvideoplayer.cpp | 6 +++ src/3rdparty/phonon/mmf/abstractvideoplayer.h | 1 + src/3rdparty/phonon/mmf/audioplayer.cpp | 6 +++ src/3rdparty/phonon/mmf/audioplayer.h | 1 + src/3rdparty/phonon/mmf/dummyplayer.cpp | 2 +- src/3rdparty/phonon/mmf/dummyplayer.h | 2 +- src/3rdparty/phonon/mmf/mediaobject.cpp | 71 ++++++++++++++++++++++--- src/3rdparty/phonon/mmf/mediaobject.h | 11 ++-- src/3rdparty/phonon/phonon/mediasource.cpp | 5 ++ 12 files changed, 123 insertions(+), 20 deletions(-) diff --git a/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp b/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp index be2a568..bca0891 100644 --- a/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp +++ b/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp @@ -16,6 +16,7 @@ along with this library. If not, see <http://www.gnu.org/licenses/>. */ +#include <QResource> #include <QUrl> #include "abstractmediaplayer.h" @@ -216,9 +217,10 @@ void MMF::AbstractMediaPlayer::doSetTickInterval(qint32 interval) TRACE_EXIT_0(); } -void MMF::AbstractMediaPlayer::open(const MediaSource &source, RFile& file) +void MMF::AbstractMediaPlayer::open() { - TRACE_CONTEXT(AbstractMediaPlayer::setFileSource, EAudioApi); + TRACE_CONTEXT(AbstractMediaPlayer::open, EAudioApi); + const MediaSource source = m_parent->source(); TRACE_ENTRY("state %d source.type %d", privateState(), source.type()); close(); @@ -229,7 +231,9 @@ void MMF::AbstractMediaPlayer::open(const MediaSource &source, RFile& file) switch (source.type()) { case MediaSource::LocalFile: { - symbianErr = openFile(file); + RFile *const file = m_parent->file(); + Q_ASSERT(file); + symbianErr = openFile(*file); if (KErrNone != symbianErr) errorMessage = tr("Error opening file"); break; @@ -237,9 +241,10 @@ void MMF::AbstractMediaPlayer::open(const MediaSource &source, RFile& file) case MediaSource::Url: { const QUrl url(source.url()); - if (url.scheme() == QLatin1String("file")) { - symbianErr = openFile(file); + RFile *const file = m_parent->file(); + Q_ASSERT(file); + symbianErr = openFile(*file); if (KErrNone != symbianErr) errorMessage = tr("Error opening file"); } else { @@ -251,6 +256,19 @@ void MMF::AbstractMediaPlayer::open(const MediaSource &source, RFile& file) break; } + case MediaSource::Stream: { + QResource *const resource = m_parent->resource(); + if (resource && resource->isValid()) { + m_buffer.Set(resource->data(), resource->size()); + symbianErr = openDescriptor(m_buffer); + if (KErrNone != symbianErr) + errorMessage = tr("Error opening resource"); + } else { + errorMessage = tr("Error opening source: resource not valid"); + } + break; + } + // Other source types are handled in MediaObject::createPlayer // Protection against adding new media types and forgetting to update this switch diff --git a/src/3rdparty/phonon/mmf/abstractmediaplayer.h b/src/3rdparty/phonon/mmf/abstractmediaplayer.h index 7d28caf..e795ecb 100644 --- a/src/3rdparty/phonon/mmf/abstractmediaplayer.h +++ b/src/3rdparty/phonon/mmf/abstractmediaplayer.h @@ -47,7 +47,7 @@ protected: AbstractMediaPlayer(MediaObject *parent, const AbstractPlayer *player); public: - virtual void open(const Phonon::MediaSource&, RFile&); + virtual void open(); // MediaObjectInterface virtual void play(); @@ -70,6 +70,7 @@ protected: virtual int setDeviceVolume(int mmfVolume) = 0; virtual int openFile(RFile& file) = 0; virtual int openUrl(const QString& url) = 0; + virtual int openDescriptor(const TDesC8 &des) = 0; virtual int bufferStatus() const = 0; void updateMetaData(); @@ -123,6 +124,9 @@ private: bool m_prefinishMarkSent; bool m_aboutToFinishSent; + // Used for playback of resource files + TPtrC8 m_buffer; + QMultiMap<QString, QString> m_metaData; }; diff --git a/src/3rdparty/phonon/mmf/abstractplayer.h b/src/3rdparty/phonon/mmf/abstractplayer.h index 30d5243..dd98c7c 100644 --- a/src/3rdparty/phonon/mmf/abstractplayer.h +++ b/src/3rdparty/phonon/mmf/abstractplayer.h @@ -26,8 +26,6 @@ along with this library. If not, see <http://www.gnu.org/licenses/>. #include "abstractvideooutput.h" -class RFile; - QT_BEGIN_NAMESPACE namespace Phonon @@ -54,7 +52,7 @@ class AbstractPlayer : public QObject public: AbstractPlayer(const AbstractPlayer *player); - virtual void open(const Phonon::MediaSource&, RFile&) = 0; + virtual void open() = 0; virtual void close() = 0; // MediaObjectInterface (implemented) diff --git a/src/3rdparty/phonon/mmf/abstractvideoplayer.cpp b/src/3rdparty/phonon/mmf/abstractvideoplayer.cpp index 9ea4d18..fb20bea 100644 --- a/src/3rdparty/phonon/mmf/abstractvideoplayer.cpp +++ b/src/3rdparty/phonon/mmf/abstractvideoplayer.cpp @@ -144,6 +144,12 @@ int MMF::AbstractVideoPlayer::openUrl(const QString &url) return err; } +int MMF::AbstractVideoPlayer::openDescriptor(const TDesC8 &des) +{ + TRAPD(err, m_player->OpenDesL(des)); + return err; +} + int MMF::AbstractVideoPlayer::bufferStatus() const { int result = 0; diff --git a/src/3rdparty/phonon/mmf/abstractvideoplayer.h b/src/3rdparty/phonon/mmf/abstractvideoplayer.h index d854793..3ff3c75 100644 --- a/src/3rdparty/phonon/mmf/abstractvideoplayer.h +++ b/src/3rdparty/phonon/mmf/abstractvideoplayer.h @@ -66,6 +66,7 @@ public: virtual int setDeviceVolume(int mmfVolume); virtual int openFile(RFile &file); virtual int openUrl(const QString &url); + virtual int openDescriptor(const TDesC8 &des); virtual int bufferStatus() const; virtual void close(); diff --git a/src/3rdparty/phonon/mmf/audioplayer.cpp b/src/3rdparty/phonon/mmf/audioplayer.cpp index f49e898..7c8b9bd 100644 --- a/src/3rdparty/phonon/mmf/audioplayer.cpp +++ b/src/3rdparty/phonon/mmf/audioplayer.cpp @@ -137,6 +137,12 @@ int MMF::AudioPlayer::openUrl(const QString& /*url*/) return 0; } +int MMF::AudioPlayer::openDescriptor(const TDesC8 &des) +{ + TRAPD(err, m_player->OpenDesL(des)); + return err; +} + int MMF::AudioPlayer::bufferStatus() const { int result = 0; diff --git a/src/3rdparty/phonon/mmf/audioplayer.h b/src/3rdparty/phonon/mmf/audioplayer.h index 0eb8bb7..e43cadd 100644 --- a/src/3rdparty/phonon/mmf/audioplayer.h +++ b/src/3rdparty/phonon/mmf/audioplayer.h @@ -67,6 +67,7 @@ typedef CMdaAudioPlayerUtility NativePlayer; virtual int setDeviceVolume(int mmfVolume); virtual int openFile(RFile& file); virtual int openUrl(const QString& url); + virtual int openDescriptor(const TDesC8 &des); virtual int bufferStatus() const; virtual void close(); diff --git a/src/3rdparty/phonon/mmf/dummyplayer.cpp b/src/3rdparty/phonon/mmf/dummyplayer.cpp index d39ef76..ba75b02 100644 --- a/src/3rdparty/phonon/mmf/dummyplayer.cpp +++ b/src/3rdparty/phonon/mmf/dummyplayer.cpp @@ -92,7 +92,7 @@ qint64 MMF::DummyPlayer::totalTime() const return 0; } -void MMF::DummyPlayer::open(const Phonon::MediaSource &, RFile &) +void MMF::DummyPlayer::open() { } diff --git a/src/3rdparty/phonon/mmf/dummyplayer.h b/src/3rdparty/phonon/mmf/dummyplayer.h index 9d45696..5b00411 100644 --- a/src/3rdparty/phonon/mmf/dummyplayer.h +++ b/src/3rdparty/phonon/mmf/dummyplayer.h @@ -57,7 +57,7 @@ public: virtual qint64 totalTime() const; // AbstractPlayer - virtual void open(const Phonon::MediaSource&, RFile&); + virtual void open(); virtual void close(); virtual void doSetTickInterval(qint32 interval); }; diff --git a/src/3rdparty/phonon/mmf/mediaobject.cpp b/src/3rdparty/phonon/mmf/mediaobject.cpp index d264377..e16bdf3 100644 --- a/src/3rdparty/phonon/mmf/mediaobject.cpp +++ b/src/3rdparty/phonon/mmf/mediaobject.cpp @@ -34,6 +34,7 @@ along with this library. If not, see <http://www.gnu.org/licenses/>. #include "mediaobject.h" #include <QDir> +#include <QResource> #include <QUrl> QT_BEGIN_NAMESPACE @@ -52,6 +53,8 @@ using namespace Phonon::MMF; MMF::MediaObject::MediaObject(QObject *parent) : MMF::MediaNode::MediaNode(parent) , m_recognizerOpened(false) , m_nextSourceSet(false) + , m_file(0) + , m_resource(0) { m_player.reset(new DummyPlayer()); @@ -68,7 +71,12 @@ MMF::MediaObject::~MediaObject() TRACE_CONTEXT(MediaObject::~MediaObject, EAudioApi); TRACE_ENTRY_0(); - m_file.Close(); + delete m_resource; + + if (m_file) + m_file->Close(); + delete m_file; + m_fileServer.Close(); m_recognizer.Close(); @@ -122,12 +130,13 @@ MMF::MediaType MMF::MediaObject::fileMediaType const QHBufC fileNameSymbian(QDir::toNativeSeparators(fileName)); - m_file.Close(); - TInt err = m_file.Open(m_fileServer, *fileNameSymbian, EFileRead | EFileShareReadersOnly); + Q_ASSERT(!m_file); + m_file = new RFile; + TInt err = m_file->Open(m_fileServer, *fileNameSymbian, EFileRead | EFileShareReadersOnly); if (KErrNone == err) { TDataRecognitionResult recognizerResult; - err = m_recognizer.RecognizeData(m_file, recognizerResult); + err = m_recognizer.RecognizeData(*m_file, recognizerResult); if (KErrNone == err) { const TPtrC mimeType = recognizerResult.iDataType.Des(); result = Utils::mimeTypeToMediaType(mimeType); @@ -142,6 +151,23 @@ MMF::MediaType MMF::MediaObject::fileMediaType return result; } +MMF::MediaType MMF::MediaObject::bufferMediaType(const uchar *data, qint64 size) +{ + TRACE_CONTEXT(MediaObject::bufferMediaType, EAudioInternal); + MediaType result = MediaTypeUnknown; + if (openRecognizer()) { + TDataRecognitionResult recognizerResult; + const TPtrC8 des(data, size); + const TInt err = m_recognizer.RecognizeData(des, recognizerResult); + if (KErrNone == err) { + const TPtrC mimeType = recognizerResult.iDataType.Des(); + result = Utils::mimeTypeToMediaType(mimeType); + } else { + TRACE("RApaLsSession::RecognizeData error %d", err); + } + } + return result; +} //----------------------------------------------------------------------------- // MediaObjectInterface @@ -228,9 +254,17 @@ void MMF::MediaObject::setSource(const MediaSource &source) void MMF::MediaObject::switchToSource(const MediaSource &source) { + if (m_file) + m_file->Close(); + delete m_file; + m_file = 0; + + delete m_resource; + m_resource = 0; + createPlayer(source); m_source = source; - m_player->open(m_source, m_file); + m_player->open(); emit currentSourceChanged(m_source); } @@ -272,10 +306,25 @@ void MMF::MediaObject::createPlayer(const MediaSource &source) case MediaSource::Invalid: case MediaSource::Disc: - case MediaSource::Stream: errorMessage = tr("Error opening source: type not supported"); break; + case MediaSource::Stream: + { + const QString fileName = source.url().toLocalFile(); + if (fileName.startsWith(QLatin1String(":/")) || fileName.startsWith(QLatin1String("qrc://"))) { + Q_ASSERT(!m_resource); + m_resource = new QResource(fileName); + if (m_resource->isValid()) + mediaType = bufferMediaType(m_resource->data(), m_resource->size()); + else + errorMessage = tr("Error opening source: resource not valid"); + } else { + errorMessage = tr("Error opening source: type not supported"); + } + } + break; + case MediaSource::Empty: TRACE_0("Empty media source"); break; @@ -374,6 +423,16 @@ void MMF::MediaObject::volumeChanged(qreal volume) m_player->volumeChanged(volume); } +RFile* MMF::MediaObject::file() const +{ + return m_file; +} + +QResource* MMF::MediaObject::resource() const +{ + return m_resource; +} + //----------------------------------------------------------------------------- // MediaNode //----------------------------------------------------------------------------- diff --git a/src/3rdparty/phonon/mmf/mediaobject.h b/src/3rdparty/phonon/mmf/mediaobject.h index f15eb21..5399e27 100644 --- a/src/3rdparty/phonon/mmf/mediaobject.h +++ b/src/3rdparty/phonon/mmf/mediaobject.h @@ -33,6 +33,8 @@ along with this library. If not, see <http://www.gnu.org/licenses/>. QT_BEGIN_NAMESPACE +class QResource; + namespace Phonon { namespace MMF @@ -87,6 +89,9 @@ public: void setVideoOutput(AbstractVideoOutput* videoOutput); + RFile* file() const; + QResource* resource() const; + public Q_SLOTS: void volumeChanged(qreal volume); void switchToNextSource(); @@ -117,6 +122,7 @@ private: // Audio / video media type recognition MediaType fileMediaType(const QString& fileName); + MediaType bufferMediaType(const uchar *data, qint64 size); // TODO: urlMediaType function static qint64 toMilliSeconds(const TTimeIntervalMicroSeconds &); @@ -132,9 +138,8 @@ private: MediaSource m_nextSource; bool m_nextSourceSet; - // Storing the file handle here to work around KErrInUse error - // from MMF player utility OpenFileL functions - RFile m_file; + RFile* m_file; + QResource* m_resource; QScopedPointer<AbstractPlayer> m_player; diff --git a/src/3rdparty/phonon/phonon/mediasource.cpp b/src/3rdparty/phonon/phonon/mediasource.cpp index be22dc3..925ff32 100644 --- a/src/3rdparty/phonon/phonon/mediasource.cpp +++ b/src/3rdparty/phonon/phonon/mediasource.cpp @@ -58,6 +58,11 @@ MediaSource::MediaSource(const QString &filename) d->type = Stream; d->ioDevice = new QFile(filename); d->setStream(new IODeviceStream(d->ioDevice, d->ioDevice)); +#ifdef Q_OS_SYMBIAN + // On Symbian, we need to access the resource buffer directly, rather than + // via QFile indirection + d->url = QUrl::fromLocalFile(fileInfo.absoluteFilePath()); +#endif #else d->type = Invalid; #endif //QT_NO_PHONON_ABSTRACTMEDIASTREAM -- cgit v0.12 From 2e0a41f304e7505602699c9623a96b6174165150 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Wed, 28 Jul 2010 17:12:10 +0100 Subject: Updated tst_mediaobject resource playback test cases * Removed Q_SKIP on Symbian * Divided test into two, to exercise the two possible ways of providing the resource path to Phonon::MediaSource Task-number: QTBUG-6562 --- tests/auto/mediaobject/tst_mediaobject.cpp | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/tests/auto/mediaobject/tst_mediaobject.cpp b/tests/auto/mediaobject/tst_mediaobject.cpp index 994057b..99a16db 100644 --- a/tests/auto/mediaobject/tst_mediaobject.cpp +++ b/tests/auto/mediaobject/tst_mediaobject.cpp @@ -124,7 +124,8 @@ class tst_MediaObject : public QObject void init(); void cleanup(); - void testPlayFromResource(); + void testPlayFromResourceDirect(); + void testPlayFromResourceFile(); void testPlayIllegalFile(); void initTestCase(); void checkForDefaults(); @@ -199,11 +200,22 @@ void tst_MediaObject::stateChanged(Phonon::State newstate, Phonon::State oldstat QWARN(QByteArray(QByteArray(QTest::toString(oldstate)) + " to " + QByteArray(QTest::toString(newstate)))); } -void tst_MediaObject::testPlayFromResource() +void tst_MediaObject::testPlayFromResourceDirect() +{ + MediaObject media; + media.setCurrentSource(Phonon::MediaSource(MEDIA_FILEPATH)); + QVERIFY(media.state() != Phonon::ErrorState); + if (media.state() != Phonon::StoppedState) + QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000); + QCOMPARE(media.state(), Phonon::StoppedState); + media.play(); + if (media.state() != Phonon::PlayingState) + QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000); + QCOMPARE(media.state(), Phonon::PlayingState); +} + +void tst_MediaObject::testPlayFromResourceFile() { -#ifdef Q_OS_SYMBIAN - QSKIP("Not implemented yet.", SkipAll); -#else QFile file(MEDIA_FILEPATH); MediaObject media; media.setCurrentSource(&file); @@ -215,7 +227,6 @@ void tst_MediaObject::testPlayFromResource() if (media.state() != Phonon::PlayingState) QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000); QCOMPARE(media.state(), Phonon::PlayingState); -#endif } void tst_MediaObject::testPlayIllegalFile() -- cgit v0.12 From 7b70dd1d7f5f6819b1aa28647826e2137504de54 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Wed, 28 Jul 2010 14:05:52 +0100 Subject: Added support to Phonon MMF backend for playback of Qt resource files The backend accesses the resource file path via MediaSource::url(). A small patch to Phonon was required to enable this, because by default, Phonon passes a QIODevice, rather than the resource file path, to the backend. The backend uses this path to create a QResource object, through which the memory buffer into which the resource file has been read can be accessed. This buffer is wrapped in a Symbian 8-bit descriptor and passed to the OpenDesL() function of the appropriate MMF client utility API. Playback only works for certain file formats, as the Symbian MIME type recognizer does not always work. For example, playback of an audio WAV resource file works, while playback of an MP3 resource file does not. Task-number: QTBUG-6562 Reviewed-by: Justin McPherson --- src/3rdparty/phonon/mmf/abstractmediaplayer.cpp | 4 ++-- src/3rdparty/phonon/mmf/mediaobject.cpp | 10 +++++++--- src/3rdparty/phonon/phonon/mediasource.cpp | 4 ---- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp b/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp index bca0891..3702560 100644 --- a/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp +++ b/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp @@ -258,13 +258,13 @@ void MMF::AbstractMediaPlayer::open() case MediaSource::Stream: { QResource *const resource = m_parent->resource(); - if (resource && resource->isValid()) { + if (resource) { m_buffer.Set(resource->data(), resource->size()); symbianErr = openDescriptor(m_buffer); if (KErrNone != symbianErr) errorMessage = tr("Error opening resource"); } else { - errorMessage = tr("Error opening source: resource not valid"); + errorMessage = tr("Error opening source: resource not opened"); } break; } diff --git a/src/3rdparty/phonon/mmf/mediaobject.cpp b/src/3rdparty/phonon/mmf/mediaobject.cpp index e16bdf3..b476535 100644 --- a/src/3rdparty/phonon/mmf/mediaobject.cpp +++ b/src/3rdparty/phonon/mmf/mediaobject.cpp @@ -315,10 +315,14 @@ void MMF::MediaObject::createPlayer(const MediaSource &source) if (fileName.startsWith(QLatin1String(":/")) || fileName.startsWith(QLatin1String("qrc://"))) { Q_ASSERT(!m_resource); m_resource = new QResource(fileName); - if (m_resource->isValid()) - mediaType = bufferMediaType(m_resource->data(), m_resource->size()); - else + if (m_resource->isValid()) { + if (m_resource->isCompressed()) + errorMessage = tr("Error opening source: resource is compressed"); + else + mediaType = bufferMediaType(m_resource->data(), m_resource->size()); + } else { errorMessage = tr("Error opening source: resource not valid"); + } } else { errorMessage = tr("Error opening source: type not supported"); } diff --git a/src/3rdparty/phonon/phonon/mediasource.cpp b/src/3rdparty/phonon/phonon/mediasource.cpp index 925ff32..8bde565 100644 --- a/src/3rdparty/phonon/phonon/mediasource.cpp +++ b/src/3rdparty/phonon/phonon/mediasource.cpp @@ -58,11 +58,7 @@ MediaSource::MediaSource(const QString &filename) d->type = Stream; d->ioDevice = new QFile(filename); d->setStream(new IODeviceStream(d->ioDevice, d->ioDevice)); -#ifdef Q_OS_SYMBIAN - // On Symbian, we need to access the resource buffer directly, rather than - // via QFile indirection d->url = QUrl::fromLocalFile(fileInfo.absoluteFilePath()); -#endif #else d->type = Invalid; #endif //QT_NO_PHONON_ABSTRACTMEDIASTREAM -- cgit v0.12 From 7f4e72f438362da7b862ea682f36ec959070e1cb Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Mon, 2 Aug 2010 10:09:49 +0100 Subject: Enabled tst_mediaobject::testPlayFromResource on Symbian Task-number: QTBUG-6562 Reviewed-by: Justin McPherson --- tests/auto/mediaobject/tst_mediaobject.cpp | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/tests/auto/mediaobject/tst_mediaobject.cpp b/tests/auto/mediaobject/tst_mediaobject.cpp index 99a16db..613a086 100644 --- a/tests/auto/mediaobject/tst_mediaobject.cpp +++ b/tests/auto/mediaobject/tst_mediaobject.cpp @@ -124,8 +124,7 @@ class tst_MediaObject : public QObject void init(); void cleanup(); - void testPlayFromResourceDirect(); - void testPlayFromResourceFile(); + void testPlayFromResource(); void testPlayIllegalFile(); void initTestCase(); void checkForDefaults(); @@ -200,7 +199,7 @@ void tst_MediaObject::stateChanged(Phonon::State newstate, Phonon::State oldstat QWARN(QByteArray(QByteArray(QTest::toString(oldstate)) + " to " + QByteArray(QTest::toString(newstate)))); } -void tst_MediaObject::testPlayFromResourceDirect() +void tst_MediaObject::testPlayFromResource() { MediaObject media; media.setCurrentSource(Phonon::MediaSource(MEDIA_FILEPATH)); @@ -214,21 +213,6 @@ void tst_MediaObject::testPlayFromResourceDirect() QCOMPARE(media.state(), Phonon::PlayingState); } -void tst_MediaObject::testPlayFromResourceFile() -{ - QFile file(MEDIA_FILEPATH); - MediaObject media; - media.setCurrentSource(&file); - QVERIFY(media.state() != Phonon::ErrorState); - if (media.state() != Phonon::StoppedState) - QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000); - QCOMPARE(media.state(), Phonon::StoppedState); - media.play(); - if (media.state() != Phonon::PlayingState) - QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000); - QCOMPARE(media.state(), Phonon::PlayingState); -} - void tst_MediaObject::testPlayIllegalFile() { QString filename = QDir::tempPath() + QString("/test.wav"); -- cgit v0.12 From 1c7c6e2326b2f89bdf564cebe89ff6f95c3f17d7 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Mon, 2 Aug 2010 12:10:14 +0100 Subject: Fixed build break on Symbian versions earlier than S^3 The following overload was added in S^3: TInt RApaLsSession::RecognizeData(const TDesC8& aBuffer, TDataRecognitionResult& aDataType) const In order to allow the backend to compile against earlier versions of the platform, this patch calls the RecognizeData overload which taking the same arguments as above, plus a filename (for which KNullDesC is passed). Task-number: QTBUG-6562 Reviewed-by: trustme --- src/3rdparty/phonon/mmf/mediaobject.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/3rdparty/phonon/mmf/mediaobject.cpp b/src/3rdparty/phonon/mmf/mediaobject.cpp index b476535..98326b8 100644 --- a/src/3rdparty/phonon/mmf/mediaobject.cpp +++ b/src/3rdparty/phonon/mmf/mediaobject.cpp @@ -158,7 +158,7 @@ MMF::MediaType MMF::MediaObject::bufferMediaType(const uchar *data, qint64 size) if (openRecognizer()) { TDataRecognitionResult recognizerResult; const TPtrC8 des(data, size); - const TInt err = m_recognizer.RecognizeData(des, recognizerResult); + const TInt err = m_recognizer.RecognizeData(KNullDesC, des, recognizerResult); if (KErrNone == err) { const TPtrC mimeType = recognizerResult.iDataType.Des(); result = Utils::mimeTypeToMediaType(mimeType); -- cgit v0.12 From 88917087b64a014a69d12946a162ab6588e733e6 Mon Sep 17 00:00:00 2001 From: Rhys Weatherley <rhys.weatherley@nokia.com> Date: Tue, 3 Aug 2010 10:52:26 +1000 Subject: setUniformValue(QSize) was setting (w,w) not (w,h) Task-number: QTBUG-12591 Reviewed-by: Daniel Pope --- src/opengl/qglshaderprogram.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/opengl/qglshaderprogram.cpp b/src/opengl/qglshaderprogram.cpp index bbfc2d5..edbb635 100644 --- a/src/opengl/qglshaderprogram.cpp +++ b/src/opengl/qglshaderprogram.cpp @@ -1971,7 +1971,7 @@ void QGLShaderProgram::setUniformValue(int location, const QSize& size) Q_D(QGLShaderProgram); Q_UNUSED(d); if (location != -1) { - GLfloat values[4] = {size.width(), size.width()}; + GLfloat values[4] = {size.width(), size.height()}; glUniform2fv(location, 1, values); } } -- cgit v0.12 From bf5c25c4e7571475255e1d9de307913bee228d10 Mon Sep 17 00:00:00 2001 From: Rhys Weatherley <rhys.weatherley@nokia.com> Date: Tue, 3 Aug 2010 11:23:37 +1000 Subject: Don't resolve GLSL extensions if no shaders If the GL server is 1.x, but the client is 2.x, then the qt_resolve_glsl_extensions() function was returning true because the functions existed client-side, when it should have returned false because the functionality didn't exist server-side. Task-number: QTBUG-12478 Reviewed-by: Sarah Smith --- src/opengl/qglextensions.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/opengl/qglextensions.cpp b/src/opengl/qglextensions.cpp index c091191..433ccae 100644 --- a/src/opengl/qglextensions.cpp +++ b/src/opengl/qglextensions.cpp @@ -233,6 +233,10 @@ bool qt_resolve_glsl_extensions(QGLContext *ctx) if (glCreateShader) return true; + // Must at least have the FragmentShader extension to continue. + if (!(QGLExtensions::glExtensions() & QGLExtensions::FragmentShader)) + return false; + glCreateShader = (_glCreateShader) ctx->getProcAddress(QLatin1String("glCreateShader")); if (glCreateShader) { glShaderSource = (_glShaderSource) ctx->getProcAddress(QLatin1String("glShaderSource")); -- cgit v0.12 From 3246586d5a98465c38c21f191e9714e821788958 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell <ext-gareth.stockwell@nokia.com> Date: Tue, 3 Aug 2010 10:17:33 +0100 Subject: Fixed test regression on Mac Mac Phonon backend does not support opening a resource file via the MediaSource(const QString &) overload. The MediaSource(QIODevice *) overload must be used. The Symbian backend, on the other hand, requires the former overload to be used. Task-number: QTBUG-6562 Reviewed-by: trustme --- tests/auto/mediaobject/tst_mediaobject.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/auto/mediaobject/tst_mediaobject.cpp b/tests/auto/mediaobject/tst_mediaobject.cpp index 613a086..6367392 100644 --- a/tests/auto/mediaobject/tst_mediaobject.cpp +++ b/tests/auto/mediaobject/tst_mediaobject.cpp @@ -202,7 +202,12 @@ void tst_MediaObject::stateChanged(Phonon::State newstate, Phonon::State oldstat void tst_MediaObject::testPlayFromResource() { MediaObject media; +#ifdef Q_OS_SYMBIAN media.setCurrentSource(Phonon::MediaSource(MEDIA_FILEPATH)); +#else + QFile file(MEDIA_FILEPATH); + media.setCurrentSource(&file); +#endif QVERIFY(media.state() != Phonon::ErrorState); if (media.state() != Phonon::StoppedState) QTest::waitForSignal(&media, SIGNAL(stateChanged(Phonon::State, Phonon::State)), 10000); -- cgit v0.12 From c7b9ee03339774bd1cae7793d91dad7809be987a Mon Sep 17 00:00:00 2001 From: Liang Qi <liang.qi@nokia.com> Date: Tue, 3 Aug 2010 19:41:55 +0200 Subject: Add QDir::homePath() for the log file in QTestFileLogger in testlib on Symbian, both hardware and emulator. Task-number: QTBUG-12622 Reviewed-by: Shane Kearns --- src/testlib/qtestfilelogger.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/testlib/qtestfilelogger.cpp b/src/testlib/qtestfilelogger.cpp index a5cdc80..9d1ee6a 100644 --- a/src/testlib/qtestfilelogger.cpp +++ b/src/testlib/qtestfilelogger.cpp @@ -44,6 +44,8 @@ #include "QtTest/private/qtestlog_p.h" #include "QtTest/private/qtestresult_p.h" +#include <QtCore/qdir.h> + #include <stdlib.h> #include <stdio.h> @@ -69,11 +71,19 @@ QTestFileLogger::~QTestFileLogger() void QTestFileLogger::init() { char filename[100]; + int index = 0; +#if defined(Q_OS_SYMBIAN) + QByteArray ba(QDir::toNativeSeparators(QString(QDir::homePath()+QDir::separator())).toUtf8()); + index = ba.length(); + QTest::qt_snprintf(filename, sizeof(filename), "%s%s.log", + ba.constData(), QTestResult::currentTestObjectName()); +#else QTest::qt_snprintf(filename, sizeof(filename), "%s.log", QTestResult::currentTestObjectName()); - - // Keep filenames simple - for (uint i = 0; i < sizeof(filename) && filename[i]; ++i) { +#endif + + // Keep filenames simple + for (uint i = index; i < sizeof(filename) && filename[i]; ++i) { char& c = filename[i]; if (!((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c == '-' || c == '.')) { -- cgit v0.12 From 22e95ba2502f893d741b774c37fc8c7bdc4b05c5 Mon Sep 17 00:00:00 2001 From: Alessandro Portale <alessandro.portale@nokia.com> Date: Wed, 4 Aug 2010 17:16:33 +0200 Subject: Improving text coordinate rounding in the OpenVG paint engine Commit b0bbabe728fedb8531fc2837403856bd5ed44e1b fixed text blurriness in the OpenVG paint engine by forcing the coordinates of the text items to integer coordinates (for unrotated, unscaled text). That was not yet enough. In addition to the coordinates, also the d->pathTransform in QVGPaintEngine can have a non-integer translation. This patch makes sure that the text item coordinate combined with the translation result in final integer coordinates. Since it is not possible to set an absolute translation of a QTransform (only relative is possible), first dx() is added to p.x(), then after rounding, it is again substracted. Sam for y, but with opposite prefix, since the y-axis in Qt and in transformation matrices are in opposite directions. The ceil stunt (which I cerated by trial and error) was replaced by floor(x + aliasedCoordinateDelta), which *exactly* what other paint engines do. Task-number: QTBUG-12330 Reviewed-by: Jason Barron --- src/openvg/qpaintengine_vg.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/openvg/qpaintengine_vg.cpp b/src/openvg/qpaintengine_vg.cpp index e368c32..318e2b1 100644 --- a/src/openvg/qpaintengine_vg.cpp +++ b/src/openvg/qpaintengine_vg.cpp @@ -76,6 +76,9 @@ QT_BEGIN_NAMESPACE #if !defined(QVG_NO_DRAW_GLYPHS) +// use the same rounding as in qrasterizer.cpp (6 bit fixed point) +static const qreal aliasedCoordinateDelta = 0.5 - 0.015625; + Q_DECL_IMPORT extern int qt_defaultDpiX(); Q_DECL_IMPORT extern int qt_defaultDpiY(); @@ -3439,9 +3442,10 @@ void QVGPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textItem) // Set the transformation to use for drawing the current glyphs. QTransform glyphTransform(d->pathTransform); if (d->transform.type() <= QTransform::TxTranslate) { - // Prevent blurriness of unscaled, unrotated text by using integer coordinates. - // Using ceil(x-0.5) instead of qRound() or int-cast, behave like other paint engines. - glyphTransform.translate(ceil(p.x() - 0.5), ceil(p.y() - 0.5)); + // Prevent blurriness of unscaled, unrotated text by forcing integer coordinates. + glyphTransform.translate( + floor(p.x() + glyphTransform.dx() + aliasedCoordinateDelta) - glyphTransform.dx(), + floor(p.y() - glyphTransform.dy() + aliasedCoordinateDelta) + glyphTransform.dy()); } else { glyphTransform.translate(p.x(), p.y()); } -- cgit v0.12 From eb8c7d19c98d547f89caa1b5866fd2b5e43b32bf Mon Sep 17 00:00:00 2001 From: Michael Brasser <michael.brasser@nokia.com> Date: Thu, 5 Aug 2010 14:36:57 +1000 Subject: Make sure onFocusChanged is correctly emitted for items in a FocusScope. Task-number: QTBUG-12649 Reviewed-by: Martin Jones --- src/declarative/graphicsitems/qdeclarativeitem.cpp | 13 +---- src/gui/graphicsview/qgraphicsitem.cpp | 5 ++ .../tst_qdeclarativefocusscope.cpp | 56 ++++++++++++++++++++++ 3 files changed, 62 insertions(+), 12 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp index 50998eb..5b74129 100644 --- a/src/declarative/graphicsitems/qdeclarativeitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp @@ -2406,18 +2406,7 @@ void QDeclarativeItemPrivate::focusChanged(bool flag) Q_Q(QDeclarativeItem); if (!(flags & QGraphicsItem::ItemIsFocusScope) && parent) emit q->activeFocusChanged(flag); //see also QDeclarativeItemPrivate::subFocusItemChange() - - bool inScope = false; - QGraphicsItem *p = parent; - while (p) { - if (p->flags() & QGraphicsItem::ItemIsFocusScope) { - inScope = true; - break; - } - p = p->parentItem(); - } - if (!inScope) - emit q->focusChanged(flag); + emit q->focusChanged(flag); } /*! \internal */ diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp index 1626d83..ff3dc1f 100644 --- a/src/gui/graphicsview/qgraphicsitem.cpp +++ b/src/gui/graphicsview/qgraphicsitem.cpp @@ -3259,8 +3259,12 @@ void QGraphicsItemPrivate::setFocusHelper(Qt::FocusReason focusReason, bool clim QGraphicsItem *p = parent; while (p) { if (p->flags() & QGraphicsItem::ItemIsFocusScope) { + QGraphicsItem *oldFocusScopeItem = p->d_ptr->focusScopeItem; p->d_ptr->focusScopeItem = q_ptr; if (!p->focusItem() && !focusFromShow) { + if (oldFocusScopeItem) + oldFocusScopeItem->d_ptr->focusScopeItemChange(false); + focusScopeItemChange(true); // If you call setFocus on a child of a focus scope that // doesn't currently have a focus item, then stop. return; @@ -5595,6 +5599,7 @@ void QGraphicsItemPrivate::subFocusItemChange() */ void QGraphicsItemPrivate::focusScopeItemChange(bool isSubFocusItem) { + Q_UNUSED(isSubFocusItem); } /*! diff --git a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp index b0c9c03..b138f61 100644 --- a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp +++ b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp @@ -69,6 +69,7 @@ private slots: void textEdit(); void forceFocus(); void noParentFocus(); + void signalEmission(); }; /* @@ -344,6 +345,61 @@ void tst_qdeclarativefocusscope::noParentFocus() delete view; } +void tst_qdeclarativefocusscope::signalEmission() +{ + QDeclarativeView *view = new QDeclarativeView; + view->setSource(QUrl::fromLocalFile(SRCDIR "/data/signalEmission.qml")); + + QDeclarativeRectangle *item1 = findItem<QDeclarativeRectangle>(view->rootObject(), QLatin1String("item1")); + QDeclarativeRectangle *item2 = findItem<QDeclarativeRectangle>(view->rootObject(), QLatin1String("item2")); + QDeclarativeRectangle *item3 = findItem<QDeclarativeRectangle>(view->rootObject(), QLatin1String("item3")); + QDeclarativeRectangle *item4 = findItem<QDeclarativeRectangle>(view->rootObject(), QLatin1String("item4")); + QVERIFY(item1 != 0); + QVERIFY(item2 != 0); + QVERIFY(item3 != 0); + QVERIFY(item4 != 0); + + view->show(); + qApp->setActiveWindow(view); + qApp->processEvents(); + +#ifdef Q_WS_X11 + // to be safe and avoid failing setFocus with window managers + qt_x11_wait_for_window_manager(view); +#endif + + QVariant blue(QColor("blue")); + QVariant red(QColor("red")); + + QVERIFY(view->hasFocus()); + QVERIFY(view->scene()->hasFocus()); + item1->setFocus(true); + QCOMPARE(item1->property("color"), red); + QCOMPARE(item2->property("color"), blue); + QCOMPARE(item3->property("color"), blue); + QCOMPARE(item4->property("color"), blue); + + item2->setFocus(true); + QCOMPARE(item1->property("color"), blue); + QCOMPARE(item2->property("color"), red); + QCOMPARE(item3->property("color"), blue); + QCOMPARE(item4->property("color"), blue); + + item3->setFocus(true); + QCOMPARE(item1->property("color"), blue); + QCOMPARE(item2->property("color"), red); + QCOMPARE(item3->property("color"), red); + QCOMPARE(item4->property("color"), blue); + + item4->setFocus(true); + QCOMPARE(item1->property("color"), blue); + QCOMPARE(item2->property("color"), red); + QCOMPARE(item3->property("color"), blue); + QCOMPARE(item4->property("color"), red); + + delete view; +} + QTEST_MAIN(tst_qdeclarativefocusscope) #include "tst_qdeclarativefocusscope.moc" -- cgit v0.12 From 4ad82cec67ce40dd167be214a2a4dcdcf6236d9d Mon Sep 17 00:00:00 2001 From: Michael Brasser <michael.brasser@nokia.com> Date: Thu, 5 Aug 2010 14:39:52 +1000 Subject: Add missing test file. --- .../qdeclarativefocusscope/data/signalEmission.qml | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 tests/auto/declarative/qdeclarativefocusscope/data/signalEmission.qml diff --git a/tests/auto/declarative/qdeclarativefocusscope/data/signalEmission.qml b/tests/auto/declarative/qdeclarativefocusscope/data/signalEmission.qml new file mode 100644 index 0000000..07601c7 --- /dev/null +++ b/tests/auto/declarative/qdeclarativefocusscope/data/signalEmission.qml @@ -0,0 +1,33 @@ +import Qt 4.7 + +Rectangle { + width: 200 + height: 200 + + FocusScope { + focus: true + Rectangle { + objectName: "item1" + color: "blue" + onFocusChanged: focus ? color = "red" : color = "blue" + } + Rectangle { + objectName: "item2" + color: "blue" + onFocusChanged: focus ? color = "red" : color = "blue" + } + } + + FocusScope { + Rectangle { + objectName: "item3" + color: "blue" + onFocusChanged: focus ? color = "red" : color = "blue" + } + Rectangle { + objectName: "item4" + color: "blue" + onFocusChanged: focus ? color = "red" : color = "blue" + } + } +} -- cgit v0.12 From 4692a507dcdfbc830a0885016b6bd0bab4480bad Mon Sep 17 00:00:00 2001 From: Joona Petrell <joona.t.petrell@nokia.com> Date: Wed, 4 Aug 2010 11:42:48 +1000 Subject: Increase maximum heap size of QML Viewer Task-number: QTBUG-12029 Reviewed-by: Martin Jones --- tools/qml/qml.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/qml/qml.pro b/tools/qml/qml.pro index efb82d1..d794005 100644 --- a/tools/qml/qml.pro +++ b/tools/qml/qml.pro @@ -35,7 +35,7 @@ maemo5 { symbian { TARGET.UID3 = 0x20021317 include($$QT_SOURCE_TREE/examples/symbianpkgrules.pri) - TARGET.EPOCHEAPSIZE = 0x20000 0x2000000 + TARGET.EPOCHEAPSIZE = 0x20000 0x4000000 TARGET.CAPABILITY = NetworkServices ReadUserData !contains(S60_VERSION, 3.1):!contains(S60_VERSION, 3.2) { LIBS += -lsensrvclient -lsensrvutil -- cgit v0.12 From 89e723153b15af5d3acbeb859d4f35bf52f8e250 Mon Sep 17 00:00:00 2001 From: Joona Petrell <joona.t.petrell@nokia.com> Date: Thu, 5 Aug 2010 14:03:57 +1000 Subject: Increase drag distance on Symbian to improve finger usability on capacitive screens Task-number: QTBUG-12594 Reviewed-by: Martin Jones --- src/gui/kernel/qapplication.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/kernel/qapplication.cpp b/src/gui/kernel/qapplication.cpp index 3303800..e164baf 100644 --- a/src/gui/kernel/qapplication.cpp +++ b/src/gui/kernel/qapplication.cpp @@ -474,7 +474,7 @@ int qt_antialiasing_threshold = -1; static int drag_time = 500; #ifdef Q_OS_SYMBIAN // The screens are a bit too small to for your thumb when using only 4 pixels drag distance. -static int drag_distance = 8; +static int drag_distance = 12; #else static int drag_distance = 4; #endif -- cgit v0.12 From 563b5891e2f918f901ffefe29872dfac1b9a60e7 Mon Sep 17 00:00:00 2001 From: Joona Petrell <joona.t.petrell@nokia.com> Date: Thu, 5 Aug 2010 14:10:43 +1000 Subject: Re-enable script program caching on Symbian (used to be disabled due to crash problems that no longer occur). Task-number: QTBUG-12599 Reviewed-by: Martin Jones --- src/declarative/qml/qdeclarativeexpression.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/declarative/qml/qdeclarativeexpression.cpp b/src/declarative/qml/qdeclarativeexpression.cpp index 585fb69..6fc4df0 100644 --- a/src/declarative/qml/qdeclarativeexpression.cpp +++ b/src/declarative/qml/qdeclarativeexpression.cpp @@ -143,16 +143,12 @@ void QDeclarativeExpressionPrivate::init(QDeclarativeContextData *ctxt, void *ex } else { -#if !defined(Q_OS_SYMBIAN) //XXX Why doesn't this work? if (!dd->cachedPrograms.at(progIdx)) { dd->cachedPrograms[progIdx] = new QScriptProgram(expression, url, line); } expressionFunction = evalInObjectScope(ctxt, me, *dd->cachedPrograms.at(progIdx), &expressionContext); -#else - expressionFunction = evalInObjectScope(ctxt, me, expression, &expressionContext); -#endif expressionFunctionMode = ExplicitContext; expressionFunctionValid = true; -- cgit v0.12 From 1ca575eaf7c166f823b82132110ea066be819540 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Thu, 5 Aug 2010 15:10:02 +1000 Subject: Fix warning from whining complier. Task-number: QTBUG-12473 Reviewed-by: Aaron Kennedy --- src/declarative/qml/qdeclarativeprivate.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/declarative/qml/qdeclarativeprivate.h b/src/declarative/qml/qdeclarativeprivate.h index b2d7451..cb916bf 100644 --- a/src/declarative/qml/qdeclarativeprivate.h +++ b/src/declarative/qml/qdeclarativeprivate.h @@ -132,6 +132,7 @@ namespace QDeclarativePrivate template <typename T, bool hasMember> class has_attachedPropertiesMethod { + public: typedef int yes_type; typedef char no_type; @@ -139,7 +140,6 @@ namespace QDeclarativePrivate static yes_type check(ReturnType *(*)(QObject *)); static no_type check(...); - public: static bool const value = sizeof(check(&T::qmlAttachedProperties)) == sizeof(yes_type); }; -- cgit v0.12 From a9aaaf30b6c542b5c9e3c1e1681088ab26a530c0 Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Thu, 5 Aug 2010 16:01:56 +1000 Subject: Improve docs on QML Animation page and associated elements Task-number: QTBUG-12666 --- doc/src/declarative/animation.qdoc | 345 +++++++++++++++------ .../snippets/declarative/animation-behavioral.qml | 61 ++++ doc/src/snippets/declarative/animation-easing.qml | 51 +++ .../snippets/declarative/animation-elements.qml | 66 ++++ doc/src/snippets/declarative/animation-groups.qml | 104 +++++++ .../declarative/animation-propertyvaluesource.qml | 51 +++ .../declarative/animation-signalhandler.qml | 55 ++++ .../snippets/declarative/animation-standalone.qml | 63 ++++ .../snippets/declarative/animation-transitions.qml | 62 ++++ doc/src/snippets/declarative/animation.qml | 181 ----------- doc/src/snippets/declarative/transition.qml | 9 +- src/declarative/util/qdeclarativeanimation.cpp | 52 +++- src/declarative/util/qdeclarativebehavior.cpp | 9 +- .../util/qdeclarativesmoothedanimation.cpp | 2 +- .../util/qdeclarativespringanimation.cpp | 3 +- src/declarative/util/qdeclarativestate.cpp | 2 +- src/declarative/util/qdeclarativestategroup.cpp | 4 +- src/declarative/util/qdeclarativetransition.cpp | 21 +- 18 files changed, 843 insertions(+), 298 deletions(-) create mode 100644 doc/src/snippets/declarative/animation-behavioral.qml create mode 100644 doc/src/snippets/declarative/animation-easing.qml create mode 100644 doc/src/snippets/declarative/animation-elements.qml create mode 100644 doc/src/snippets/declarative/animation-groups.qml create mode 100644 doc/src/snippets/declarative/animation-propertyvaluesource.qml create mode 100644 doc/src/snippets/declarative/animation-signalhandler.qml create mode 100644 doc/src/snippets/declarative/animation-standalone.qml create mode 100644 doc/src/snippets/declarative/animation-transitions.qml delete mode 100644 doc/src/snippets/declarative/animation.qml diff --git a/doc/src/declarative/animation.qdoc b/doc/src/declarative/animation.qdoc index 401cf16..7416341 100644 --- a/doc/src/declarative/animation.qdoc +++ b/doc/src/declarative/animation.qdoc @@ -29,134 +29,301 @@ \page qdeclarativeanimation.html \title QML Animation -Animation in QML is done by animating properties of objects. Properties of type -real, int, color, rect, point, size, and vector3d can all be animated. -QML supports three main forms of animation: basic property animation, -transitions, and property behaviors. +In QML, animations are created by applying animation objects to object property +values to gradually change them over time. Animation objects are created from +the built-in set of animation elements, which can be used to animate various +types of property values. In addition, animation objects can be applied in +different ways depending on the context in which they are required. + +To create an animation, use an appropriate animation element for the type of +the property that is to be animated, and apply the animation depending on the +type of behavior that is required. This page describes the \l {Types of +Animations} that can be created and the \l {Animation Elements} that are used +to create these animations. + + +\section1 Types of Animations + +An animation is created in different ways depending on the context in which it +is required. Suppose a \l Rectangle's movement - that is, changes in its \c x +or \c y property values - should be animated. The semantics of the animation +differ depending on whether you want to create: + +\list +\o An animation that moves the \l Rectangle as soon as it is created, to a +known position +\o An animation that only triggers when the \l Rectangle is moved by external +sources - for example, when the mouse is clicked, animate the movement to the +mouse position +\o An animation that triggers when a particular signal is received +\o A standalone animation that is not bound to the \l Rectangle's movement, but +instead can be started and stopped from script as required +\o An animation that only triggers during \l{QML States}{state changes} +\endlist + +To support these different types of animation methods, QML provides several +methods for defining an animation. These are: + +\list +\o Creating an \l{Animations as Property Value Sources}{animation using +property value sources}, to immediately animate a specific property +\o Using \l{Behavioral Animations}{behavioral animations}, which are triggered +when a property changes value +\o \l{Animations in a Signal Handler}{Within a signal handler}, to be triggered +when a signal is received +\o As a \l{Standalone Animation}{standalone animation}, that can be +started/stopped from script and can be rebound to different objects +\o Using \l{Transitions}{transitions}, to provide animations between \l{QML +States}{state changes} +\endlist + +These methods are demonstrated below. Notice these examples use +PropertyAnimation, which is one of several QML elements that can be used to +create an animation. See the \l {Animation Elements} section further below for +details. -\tableofcontents -\section1 Basic Property Animation -The simplest form of animation is a \l PropertyAnimation, which can animate all of the property -types listed above. If the property you are animating is a number or color, you can alternatively use -NumberAnimation or ColorAnimation. These elements don't add any additional functionality, -but will help enforce type correctness and are slightly more efficient. +\section2 Animations as Property Value Sources + +An animation is applied as a \l{QDeclarativePropertyValueSource}{property value +source} using the \e Animation \bold on \e Property syntax. Here is a \l +Rectangle whose movement is animated using this method: + +\snippet doc/src/snippets/declarative/animation-propertyvaluesource.qml 0 + +This applies a PropertyAnimation to the \l Rectangle's \c x and \c y properties +to animate from their current values (i.e. zero) to 50, over 1000 milliseconds. +The animation starts as soon as the \l Rectangle is loaded. To animate from +specific values rather than the current \c x and \c y values, set the +PropertyAnimation's \l {PropertyAnimation::}{from} property. + +Specifying an animation as a property value source is useful for animating a +property to a particular value as soon as the object is loaded. + + +\section2 Behavioral Animations + +Often an animation should be applied whenever a particular property value +changes. In these cases, a \l Behavior can be used to specify a default +animation for a property change. Here is an example: + +\snippet doc/src/snippets/declarative/animation-behavioral.qml 0 -A property animation can be specified as a value source using the \e Animation \bold on \e property syntax. This is especially useful -for repeating animations. +This \l Rectangle has \l Behavior objects applied to its \c x and \c y +properties. Whenever these properties change (in this case, when the mouse is +clicked within the parent \l Item), the PropertyAnimation objects defined +within the behaviors will be applied to these properties, thus animating the \l +Rectangle's movement to its new position. Unlike the method of \l {Animations +as Property Value Sources}{defining an animation as a property value source}, +which creates a one-time animation that animates a property to a known value, a +behavioral animation is an animation that is triggered \e {in response to} a +value change. -The following example creates a bouncing effect: -\snippet doc/src/snippets/declarative/animation.qml property-anim-1 +Any changes to these properties will trigger their animations. If \c x or \c y +were bound to other properties, and those properties changed, the animation +would be triggered. The \l{Behavior::}{enabled} property can be used to force a +\l Behavior to only apply under certain circumstances. -\image propanim.gif +Notice that unlike for property value source animations, the +PropertyAnimation's \l {PropertyAnimation::}{from} and \l +{PropertyAnimation::}{to} properties do not need to be defined because these +values are already provided, respectively, by the \l Rectangle's current values +and the new values set in the \c onClicked handler. If these properties were +defined anyway, they would override the default values. + +See the \l {declarative/animation/behaviors}{Behaviors example} for a +demonstration of behavioral animations. + + +\section2 Animations in a Signal Handler + +An animation can be created within a signal handler to be triggered when the +signal is received. For example: + +\snippet doc/src/snippets/declarative/animation-signalhandler.qml 0 + +The PropertyAnimation is triggered when the MouseArea is clicked, animating the +\c x and \c y properties to a value of 50 over 1000 milliseconds. Since the +animation is not bound to a particular object or property, it must define the +\l {PropertyAnimation::}{target} and \l {PropertyAnimation::}{property} (or \l +{PropertyAnimation::}{targets} and \l{PropertyAnimation::}{properties}) values. +The \l {PropertyAnimation::}{to} property is also required to specify the new +\c x and \c y values. + + +\section2 Standalone Animations + +Animations can also be created as ordinary QML objects that are not bound to +any particular objects and properties. An example: + +\snippet doc/src/snippets/declarative/animation-standalone.qml 0 + +A standalone animation is not running by default and must be started explicitly +using the \l {Animation::}{running} property or \l {Animation::}{start()} and +\l {Animation::}{stop()} methods. Since the animation is not bound to a +particular object or property, it must define the \l +{PropertyAnimation::}{target} and \l {PropertyAnimation::}{property} (or \l +{PropertyAnimation::}{targets} and \l{PropertyAnimation::}{properties}) values. +The \l {PropertyAnimation::}{to} property is also required to specify the new +\c x and \c y values. (The \l {PropertyAnimation::}{from} value can optionally +be provided.) + +Standalone animations are useful when an animation is not targeted towards a +single object property and the animation should be explicitly started and +stopped. + + +\section2 Transitions -When you assign an animation as a value source, you do not need to specify \c property -or \c target values; they are automatically selected for you. You do, however, need to specify a \c to value. -An animation specified as a value source will be \c running by default. +Transitions are used to describe the animations to be applied when a \l {QML +States}{state change} occurs. To create a transition, define a \l Transition +object and add it to an item's \l {Item::}{transitions} property. An example: -For example, here is a rectangle that uses a \l NumberAnimation value source to animate the movement -from its current position to an \c x value of 50. The animation starts immediately, and only the \c to -property is required: +\snippet doc/src/snippets/declarative/animation-transitions.qml 0 -\snippet doc/src/snippets/declarative/animation.qml property-anim-2 +When the \l Rectangle changes to the \e moved state, its \c x and \c y property +values are changed by the PropertyChanges object, and the PropertyAnimation +defined within the \l Transition is triggered on these properties. The +animation will not be applied at any time other than during the state change. -A property animation can also be specified as a resource that is manipulated from script. +Notice the example does not set any \l {PropertyAnimation::}{from} and \l +{PropertyAnimation::}{to} values for the PropertyAnimation. As a convenience, +these properties are automatically set to the values of \c x and \c y before +and after the state change, respectively. However, they can be explicitly set +if these values should be overrided. -\snippet doc/src/snippets/declarative/animation.qml property-anim-3 +Also notice the PropertyAnimation does not need to specify a \l +{PropertyAnimation::}{target} object; any \c x or \c y value of any object that +has changed during the state change will be animated. However, the target can +be set if the animation should be restricted to certain objects. -As can be seen, when an animation is used like this (as opposed to as a value source) you will need -to explicitly set the \c target and \c property to animate. This also the only case where -an animation needs to be started explictly by either setting the \c running property to -true or calling the \c start() method. +The top-level animations in a \l Transition are run in parallel. To run them +one after the other, use a SequentialAnimation, as shown below in \l {Grouping +Animations}. -Animations can be joined into a group using SequentialAnimation and ParallelAnimation. +See the \l Transition documentation for more information. -See the \l {declarative/animation/basics}{Animation basics example} for a demonstration of creating and combining multiple animations in QML. -\target state-transitions -\section1 Transitions +\section1 Animation Elements -\l Transition elements describe the animations to perform when \l{qmlstates}{state} changes occur. A transition -can only be triggered by a state change. +To create an animation, choose from one of the built-in QML animation elements. +While the above examples are demonstrated using PropertyAnimation, they could +have used other elements depending on the type of the property to be animated +and whether a single or multiple animations are required. -For example, a \l Transition could describe how an item moves from its initial position to its new position: +All animation elements inherit from the \l Animation element. It is not +possible to create \l Animation objects; instead, this element provides the +essential properties and methods for animation elements. For example, it allows +animations to be started and stopped through the \l {Animation::}{running} +property and the \l{Animation::}{start()} and \l{Animation::}{stop()} methods. +It can also define the number of \l {Animation::}{loops} for an animation. -\snippet doc/src/snippets/declarative/animation.qml transitions-1 -As can be seen, transitions make use of the same basic animation classes introduced above. -In the above example we have specified that we want to animate the \c x and \c y properties, but have not -specified the objects to animate or the \c to values. By default these values are supplied by the framework; -the animation will animate any \c targets whose \c x and \c y have changed, and the \c to values will be those -defined in the end state. You can always supply explicit values to override these implicit values when needed. +\section2 Property Animation Elements -\snippet doc/src/snippets/declarative/animation.qml transitions-2 +PropertyAnimation is the most basic animation element for animating a property. +It can be used to animate \c real, \c int, \c color, \c rect, \c point, \c size, and +\c vector3d properties. It is inherited by NumberAnimation, ColorAnimation, +RotationAnimation and Vector3dAnimation: NumberAnimation provides a more +efficient implementation for animating \c real and \c int properties, and +Vector3dAnimation does the same for \c vector3d properties. ColorAnimation +and RotationAnimation provide more specific attributes for animating color +and rotation changes. -QML transitions have selectors to determine which state changes a transition should apply to. -The following transition will only be triggered when we enter into the \c "details" state. -(The "*" value is a wildcard value that specifies the transition should be applied when changing -from \e any state to the "details" state.) +A ColorAnimation allows color values for the \l {ColorAnimation::}{from} +and \l {ColorAnimation::}{to} properties. The +following animates the rectangle's \l {Rectangle::color} property: -\code -Transition { - from: "*" - to: "details" - ... -} -\endcode +\snippet doc/src/snippets/declarative/animation-elements.qml color -Transitions can happen in parallel, in sequence, or in any combination of the two. By default, the top-level -animations in a transition will happen in parallel. The following example shows a rather complex transition -making use of both sequential and parallel animations: +RotationAnimation allows a rotation's direction to be specified. The following +animates the rectangle's \l {Item::rotation} property: -\snippet doc/src/snippets/declarative/animation.qml transitions-3 +\snippet doc/src/snippets/declarative/animation-elements.qml rotation +In addition, the following specialized animation elements are available: -See \l {declarative/animation/states}{States and Transitions example} for a simple example of how transitions can be applied. +\list +\o SmoothedAnimation: a specialized NumberAnimation that provides smooth +changes in animation when the target value changes +\o SpringAnimation: provides a spring-like animation with specialized +attributes such as \l {SpringAnimation::}{mass}, +\l{SpringAnimation::}{damping} and \l{SpringAnimation::}{epsilon} +\o ParentAnimation: used for animating a parent change (see ParentChange) +\o AnchorAnimation: used for animating an anchor change (see AnchorChanges) +\endlist +See their respective documentation pages for more details. -\section1 Property Behaviors -A property \l {Behavior}{behavior} specifies a default animation to run whenever the property's value changes, regardless -of what caused the change. The \c enabled property can be used to force a \l Behavior -to only apply under certain circumstances. +\section3 Easing + +Any PropertyAnimation-based animations can specify \l +{PropertyAnimation::easing.type}{easing attributes} to control the +easing curve applied when a property value is animated. These control the +effect of the animation on the property value, to provide visual effects like +bounce, acceleration and deceleration. + +For example, this modified version of an \l {Animations as Property Value +Sources}{earlier example} uses \c Easing.OutBounce to create a bouncing effect +when the animation reaches its target value: + +\snippet doc/src/snippets/declarative/animation-easing.qml 0 + +The \l{declarative/animation/easing}{easing example} visually demonstrates each +of the different easing types. + +\section2 Grouping Animations + +Multiple animations can be combined into a single animation using one of the +animation group elements: ParallelAnimation or SequentialAnimation. As their +names suggest, animations in a ParallelAnimation are run at the same time, +while animations in a SequentialAnimation are run one after the other. + +To run multiple animations, define the animations within an animation group. +The following example creates a SequentialAnimation that runs three animations +one after the other: a NumberAnimation, a PauseAnimation and another +NumberAnimation. The SequentialAnimation is applied as a \l{Animations as +Property Value Sources}{property value source animation} on the image's \c y +property, so that the animation starts as soon as the image is loaded, moving +the image up and down: + +\snippet doc/src/snippets/declarative/animation-groups.qml 0 +\image propanim.gif + +Since the SequentialAnimation is applied to the \c y property, the individual +animations within the group are automatically applied to the \c y property as +well; it is not required to set their \l{PropertyAnimation::}{properties} +values to a particular property. -In the following snippet, we specify that we want the \c x position of \c redRect to be animated -whenever it changes. The animation will last 300 milliseconds and use an \l{PropertyAnimation::easing.type}{Easing.InOutQuad} easing curve. +Animation groups can be nested. Here is a rather complex animation making use +of both sequential and parallel animations: -\snippet doc/src/snippets/declarative/animation.qml behavior +\snippet doc/src/snippets/declarative/animation-groups.qml 1 -Like using an animation as a value source, when used in a \l Behavior and animation does not need to specify -a \c target or \c property. +Once individual animations are placed into a SequentialAnimation or +ParallelAnimation, they can no longer be started and stopped independently. The +sequential or parallel animation must be started and stopped as a group. -To trigger this behavior, we could enter a state that changes \c x: +See the \l {declarative/animation/basics}{Animation basics example} for a +demonstration of creating and combining multiple animations in QML. -\qml -State { - name: "myState" - PropertyChanges { - target: redRect - x: 200 - ... - } -} -\endqml -Or, update \c x from a script: -\qml -MouseArea { - .... - onClicked: redRect.x = 24; -} -\endqml +\section2 Other Animation Elements -If \c x were bound to another property, triggering the binding would also trigger the behavior. +In addition, QML provides several other elements useful for animation: -If a state change has a transition animation matching a property with a \l Behavior, the transition animation -will override the \l Behavior for that state change. +\list +\o PauseAnimation: enables pauses during animations +\o ScriptAction: allows JavaScript to be executed during an animation, and can +be used together with StateChangeScript to reused existing scripts +\o PropertyAction: changes a property \e immediately during an animation, +without animating the property change +\endlist -The \l {declarative/animation/behaviors}{Behaviors example} shows how behaviors can be used to provide animations. +See their respective documentation pages for more details. */ diff --git a/doc/src/snippets/declarative/animation-behavioral.qml b/doc/src/snippets/declarative/animation-behavioral.qml new file mode 100644 index 0000000..dc79018 --- /dev/null +++ b/doc/src/snippets/declarative/animation-behavioral.qml @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Item { + width: 100; height: 100 + + Rectangle { + id: rect + width: 100; height: 100 + color: "red" + + Behavior on x { PropertyAnimation { duration: 500 } } + Behavior on y { PropertyAnimation { duration: 500 } } + } + + MouseArea { + anchors.fill: parent + onClicked: { rect.x = mouse.x; rect.y = mouse.y } + } +} +//![0] + diff --git a/doc/src/snippets/declarative/animation-easing.qml b/doc/src/snippets/declarative/animation-easing.qml new file mode 100644 index 0000000..e65c470 --- /dev/null +++ b/doc/src/snippets/declarative/animation-easing.qml @@ -0,0 +1,51 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Rectangle { + width: 100; height: 100 + color: "red" + + PropertyAnimation on x { to: 50; duration: 1000; easing.type: Easing.OutBounce } + PropertyAnimation on y { to: 50; duration: 1000; easing.type: Easing.OutBounce } +} +//![0] + diff --git a/doc/src/snippets/declarative/animation-elements.qml b/doc/src/snippets/declarative/animation-elements.qml new file mode 100644 index 0000000..7cb253e --- /dev/null +++ b/doc/src/snippets/declarative/animation-elements.qml @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Row { + +//![color] +Rectangle { + width: 100; height: 100 + + ColorAnimation on color { from: "red"; to: "yellow"; duration: 1000 } +} +//![color] + +//![rotation] +Item { + width: 300; height: 300 + + Rectangle { + width: 100; height: 100; anchors.centerIn: parent + color: "red" + + RotationAnimation on rotation { to: 90; direction: RotationAnimation.Clockwise } + } +} +//![rotation] + +} diff --git a/doc/src/snippets/declarative/animation-groups.qml b/doc/src/snippets/declarative/animation-groups.qml new file mode 100644 index 0000000..8a8f925 --- /dev/null +++ b/doc/src/snippets/declarative/animation-groups.qml @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +import Qt 4.7 + +Row { + +//![0] +Rectangle { + id: rect + width: 120; height: 200 + + Image { + id: img + source: "pics/qt.png" + anchors.horizontalCenter: parent.horizontalCenter + y: 0 + + SequentialAnimation on y { + loops: Animation.Infinite + NumberAnimation { to: rect.height - img.height; easing.type: Easing.OutBounce; duration: 2000 } + PauseAnimation { duration: 1000 } + NumberAnimation { to: 0; easing.type: Easing.OutQuad; duration: 1000 } + } + } +} +//![0] + +//![1] +Rectangle { + id: redRect + width: 100; height: 100 + color: "red" + + MouseArea { id: mouseArea; anchors.fill: parent } + + states: State { + name: "pressed"; when: mouseArea.pressed + PropertyChanges { target: redRect; color: "blue"; y: mouseArea.mouseY; width: mouseArea.mouseX } + } + + transitions: Transition { + + SequentialAnimation { + ColorAnimation { duration: 200 } + PauseAnimation { duration: 100 } + + ParallelAnimation { + NumberAnimation { + duration: 500 + easing.type: Easing.OutBounce + targets: redRect + properties: "y" + } + + NumberAnimation { + duration: 800 + easing.type: Easing.InOutQuad + targets: redRect + properties: "width" + } + } + } + } +} +//![1] + +} diff --git a/doc/src/snippets/declarative/animation-propertyvaluesource.qml b/doc/src/snippets/declarative/animation-propertyvaluesource.qml new file mode 100644 index 0000000..ac5f071 --- /dev/null +++ b/doc/src/snippets/declarative/animation-propertyvaluesource.qml @@ -0,0 +1,51 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Rectangle { + width: 100; height: 100 + color: "red" + + PropertyAnimation on x { to: 50; duration: 1000; loops: Animation.Infinite } + PropertyAnimation on y { to: 50; duration: 1000; loops: Animation.Infinite } +} +//![0] + diff --git a/doc/src/snippets/declarative/animation-signalhandler.qml b/doc/src/snippets/declarative/animation-signalhandler.qml new file mode 100644 index 0000000..749596c --- /dev/null +++ b/doc/src/snippets/declarative/animation-signalhandler.qml @@ -0,0 +1,55 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Rectangle { + id: rect + width: 100; height: 100 + color: "red" + + MouseArea { + anchors.fill: parent + onClicked: PropertyAnimation { target: rect; properties: "x,y"; to: 50; duration: 1000 } + } +} + +//![0] + diff --git a/doc/src/snippets/declarative/animation-standalone.qml b/doc/src/snippets/declarative/animation-standalone.qml new file mode 100644 index 0000000..d75fd92 --- /dev/null +++ b/doc/src/snippets/declarative/animation-standalone.qml @@ -0,0 +1,63 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Rectangle { + id: rect + width: 100; height: 100 + color: "red" + + PropertyAnimation { + id: animation + target: rect + properties: "x,y" + duration: 1000 + } + + MouseArea { + anchors.fill: parent + onClicked: { + animation.to = 50; + animation.running = true; + } + } +} +//![0] diff --git a/doc/src/snippets/declarative/animation-transitions.qml b/doc/src/snippets/declarative/animation-transitions.qml new file mode 100644 index 0000000..3265065 --- /dev/null +++ b/doc/src/snippets/declarative/animation-transitions.qml @@ -0,0 +1,62 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ +//![0] +import Qt 4.7 + +Rectangle { + id: rect + width: 100; height: 100 + color: "red" + + MouseArea { + anchors.fill: parent + onClicked: rect.state = "moved" + } + + states: State { + name: "moved" + PropertyChanges { target: rect; x: 50; y: 50 } + } + + transitions: Transition { + PropertyAnimation { properties: "x,y"; duration: 1000 } + } +} +//![0] diff --git a/doc/src/snippets/declarative/animation.qml b/doc/src/snippets/declarative/animation.qml deleted file mode 100644 index 65acd36..0000000 --- a/doc/src/snippets/declarative/animation.qml +++ /dev/null @@ -1,181 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import Qt 4.7 - -Row { - -//![property-anim-1] -Rectangle { - id: rect - width: 120; height: 200 - - Image { - id: img - source: "pics/qt.png" - x: 60 - img.width/2 - y: 0 - - SequentialAnimation on y { - loops: Animation.Infinite - NumberAnimation { to: 200 - img.height; easing.type: Easing.OutBounce; duration: 2000 } - PauseAnimation { duration: 1000 } - NumberAnimation { to: 0; easing.type: Easing.OutQuad; duration: 1000 } - } - } -} -//![property-anim-1] - -//![property-anim-2] -Rectangle { - width: 200; height: 200 - - Rectangle { - color: "red" - width: 50; height: 50 - NumberAnimation on x { to: 50 } - } -} -//![property-anim-2] - - -Item { -//![property-anim-3] -PropertyAnimation { - id: animation - target: image - property: "scale" - from: 1; to: 0.5 -} - -Image { - id: image - source: "pics/qt.png" - MouseArea { - anchors.fill: parent - onPressed: animation.start() - } -} -//![property-anim-3] -} - - -//![transitions-1] -transitions: [ - Transition { - NumberAnimation { - properties: "x,y" - easing.type: Easing.OutBounce - duration: 200 - } - } -] -//![transitions-1] - - -//![transitions-2] -Transition { - from: "*" - to: "MyState" - reversible: true - - SequentialAnimation { - NumberAnimation { - duration: 1000 - easing.type: Easing.OutBounce - - // animate myItem's x and y if they have changed in the state - target: myItem - properties: "x,y" - } - - NumberAnimation { - duration: 1000 - - // animate myItem2's y to 200, regardless of what happens in the state - target: myItem2 - property: "y" - to: 200 - } - } -} -//![transitions-2] - - -//![transitions-3] -Transition { - from: "*" - to: "MyState" - reversible: true - - SequentialAnimation { - ColorAnimation { duration: 1000 } - PauseAnimation { duration: 1000 } - - ParallelAnimation { - NumberAnimation { - duration: 1000 - easing.type: Easing.OutBounce - targets: box1 - properties: "x,y" - } - NumberAnimation { - duration: 1000 - targets: box2 - properties: "x,y" - } - } - } -} -//![transitions-3] - -//![behavior] -Rectangle { - id: redRect - color: "red" - width: 100; height: 100 - - Behavior on x { - NumberAnimation { duration: 300; easing.type: Easing.InOutQuad } - } -} -//![behavior] - -} diff --git a/doc/src/snippets/declarative/transition.qml b/doc/src/snippets/declarative/transition.qml index b884750..098d509 100644 --- a/doc/src/snippets/declarative/transition.qml +++ b/doc/src/snippets/declarative/transition.qml @@ -46,13 +46,18 @@ Rectangle { width: 100; height: 100 color: "red" + MouseArea { + id: mouseArea + anchors.fill: parent + } + states: State { - name: "moved" + name: "moved"; when: mouseArea.pressed PropertyChanges { target: rect; x: 50; y: 50 } } transitions: Transition { - PropertyAnimation { properties: "x,y"; easing.type: Easing.InOutQuad } + NumberAnimation { properties: "x,y"; easing.type: Easing.InOutQuad } } } //![0] diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp index 6a9cf95..b901bb3 100644 --- a/src/declarative/util/qdeclarativeanimation.cpp +++ b/src/declarative/util/qdeclarativeanimation.cpp @@ -645,12 +645,13 @@ QAbstractAnimation *QDeclarativePauseAnimation::qtAnimation() Like any other animation element, a ColorAnimation can be applied in a number of ways, including transitions, behaviors and property value - sources. The \l PropertyAnimation documentation shows a variety of methods + sources. The \l {QML Animation} documentation shows a variety of methods for creating animations. - When used in a transition, ColorAnimation will by default animate - all properties of type color that have changed. If a \l{PropertyAnimation::}{property} - or \l{PropertyAnimation::}{properties} are explicitly set for the animation, + For convenience, when a ColorAnimation is used in a \l Transition, it will + animate any \c color properties that have been modified during the state + change. If a \l{PropertyAnimation::}{property} or + \l{PropertyAnimation::}{properties} are explicitly set for the animation, then those are used instead. \sa {QML Animation}, {declarative/animation/basics}{Animation basics example} @@ -1143,7 +1144,7 @@ void QDeclarativePropertyAction::transition(QDeclarativeStateActions &actions, Like any other animation element, a NumberAnimation can be applied in a number of ways, including transitions, behaviors and property value - sources. The \l PropertyAnimation documentation shows a variety of methods + sources. The \l {QML Animation} documentation shows a variety of methods for creating animations. Note that NumberAnimation may not animate smoothly if there are irregular @@ -1244,6 +1245,11 @@ void QDeclarativeNumberAnimation::setTo(qreal t) Vector3dAnimation is a specialized PropertyAnimation that defines an animation to be applied when a Vector3d value changes. + Like any other animation element, a Vector3dAnimation can be applied in a + number of ways, including transitions, behaviors and property value + sources. The \l {QML Animation} documentation shows a variety of methods + for creating animations. + \sa {QML Animation}, {declarative/animation/basics}{Animation basics example} */ @@ -1323,7 +1329,7 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t) \snippet doc/src/snippets/declarative/rotationanimation.qml 0 - Notice the RotationAnimation did not need to set a \l {RotationAnimation::}{target} + Notice the RotationAnimation did not need to set a \l {PropertyAnimation::}{target} value. As a convenience, when used in a transition, RotationAnimation will rotate all properties named "rotation" or "angle". You can override this by providing your own properties via \l {PropertyAnimation::properties}{properties} or @@ -1331,7 +1337,7 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t) Like any other animation element, a RotationAnimation can be applied in a number of ways, including transitions, behaviors and property value - sources. The \l PropertyAnimation documentation shows a variety of methods + sources. The \l {QML Animation} documentation shows a variety of methods for creating animations. \sa {QML Animation}, {declarative/animation/basics}{Animation basics example} @@ -1554,7 +1560,7 @@ QDeclarativeListProperty<QDeclarativeAbstractAnimation> QDeclarativeAnimationGro Like any other animation element, a SequentialAnimation can be applied in a number of ways, including transitions, behaviors and property value - sources. The \l PropertyAnimation documentation shows a variety of methods + sources. The \l {QML Animation} documentation shows a variety of methods for creating animations. \note Once an animation has been grouped into a SequentialAnimation or @@ -1623,7 +1629,7 @@ void QDeclarativeSequentialAnimation::transition(QDeclarativeStateActions &actio Like any other animation element, a ParallelAnimation can be applied in a number of ways, including transitions, behaviors and property value - sources. The \l PropertyAnimation documentation shows a variety of methods + sources. The \l {QML Animation} documentation shows a variety of methods for creating animations. \note Once an animation has been grouped into a SequentialAnimation or @@ -2396,8 +2402,7 @@ void QDeclarativePropertyAnimation::transition(QDeclarativeStateActions &actions \inherits Animation \brief The ParentAnimation element animates changes in parent values. - ParentAnimation defines an animation to applied when a ParentChange - occurs. This allows parent changes to be smoothly animated. + ParentAnimation is used to animate a parent change for an \l Item. For example, the following ParentChange changes \c blueRect to become a child of \c redRect when it is clicked. The inclusion of the @@ -2415,10 +2420,16 @@ void QDeclarativePropertyAnimation::transition(QDeclarativeStateActions &actions to animate the parent change via another item that does not have clipping enabled. Such an item can be set using the \l via property. - By default, when used in a transition, ParentAnimation animates all parent - changes. This can be overridden by setting a specific target item using the + For convenience, when a ParentAnimation is used in a \l Transition, it will + animate any ParentChange that has occurred during the state change. + This can be overridden by setting a specific target item using the \l target property. + Like any other animation element, a ParentAnimation can be applied in a + number of ways, including transitions, behaviors and property value + sources. The \l {QML Animation} documentation shows a variety of methods + for creating animations. + \sa {QML Animation}, {declarative/animation/basics}{Animation basics example} */ @@ -2750,14 +2761,23 @@ QAbstractAnimation *QDeclarativeParentAnimation::qtAnimation() \inherits Animation \brief The AnchorAnimation element animates changes in anchor values. - AnchorAnimation is used to animate an AnchorChange. It will anchor all - anchor changes specified in a \l State. + AnchorAnimation is used to animate an anchor change. In the following snippet we animate the addition of a right anchor to a \l Rectangle: \snippet doc/src/snippets/declarative/anchoranimation.qml 0 - \sa AnchorChanges + For convenience, when an AnchorAnimation is used in a \l Transition, it will + animate any AnchorChanges that have occurred during the state change. + This can be overridden by setting a specific target item using the + \l target property. + + Like any other animation element, an AnchorAnimation can be applied in a + number of ways, including transitions, behaviors and property value + sources. The \l {QML Animation} documentation shows a variety of methods + for creating animations. + + \sa {QML Animation}, AnchorChanges */ QDeclarativeAnchorAnimation::QDeclarativeAnchorAnimation(QObject *parent) diff --git a/src/declarative/util/qdeclarativebehavior.cpp b/src/declarative/util/qdeclarativebehavior.cpp index fadb2ae..1e7f81a 100644 --- a/src/declarative/util/qdeclarativebehavior.cpp +++ b/src/declarative/util/qdeclarativebehavior.cpp @@ -84,12 +84,15 @@ public: \snippet doc/src/snippets/declarative/behavior.qml 0 - To run multiple animations within a Behavior, use ParallelAnimation or + Note that a property cannot have more than one assigned Behavior. To provide + multiple animations within a Behavior, use ParallelAnimation or SequentialAnimation. - Note that a property cannot have more than one assigned Behavior. + If a \l{QML States}{state change} has a \l Transition that matches the same property as a + Behavior, the \l Transition animation overrides the Behavior for that + state change. - \sa {Property Behaviors}, {declarative/animation/behaviors}{Behavior example}, QtDeclarative + \sa {QML Animation}, {declarative/animation/behaviors}{Behavior example}, QtDeclarative */ diff --git a/src/declarative/util/qdeclarativesmoothedanimation.cpp b/src/declarative/util/qdeclarativesmoothedanimation.cpp index 727f427..30e1491 100644 --- a/src/declarative/util/qdeclarativesmoothedanimation.cpp +++ b/src/declarative/util/qdeclarativesmoothedanimation.cpp @@ -287,7 +287,7 @@ void QSmoothedAnimation::init() Like any other animation element, a SmoothedAnimation can be applied in a number of ways, including transitions, behaviors and property value - sources. The \l PropertyAnimation documentation shows a variety of methods + sources. The \l {QML Animation} documentation shows a variety of methods for creating animations. \sa SpringAnimation, NumberAnimation, {QML Animation}, {declarative/animation/basics}{Animation basics example} diff --git a/src/declarative/util/qdeclarativespringanimation.cpp b/src/declarative/util/qdeclarativespringanimation.cpp index cfc7b8e..6f4ac51 100644 --- a/src/declarative/util/qdeclarativespringanimation.cpp +++ b/src/declarative/util/qdeclarativespringanimation.cpp @@ -228,6 +228,7 @@ void QDeclarativeSpringAnimationPrivate::updateMode() /*! \qmlclass SpringAnimation QDeclarativeSpringAnimation + \inherits Animation \since 4.7 \brief The SpringAnimation element allows a property to track a value in a spring-like motion. @@ -246,7 +247,7 @@ void QDeclarativeSpringAnimationPrivate::updateMode() Like any other animation element, a SpringAnimation can be applied in a number of ways, including transitions, behaviors and property value - sources. The \l PropertyAnimation documentation shows a variety of methods + sources. The \l {QML Animation} documentation shows a variety of methods for creating animations. \sa SmoothedAnimation, {QML Animation}, {declarative/animation/basics}{Animation basics example}, {declarative/toys/clocks}{Clocks example} diff --git a/src/declarative/util/qdeclarativestate.cpp b/src/declarative/util/qdeclarativestate.cpp index 0d43d21..7a78a2b 100644 --- a/src/declarative/util/qdeclarativestate.cpp +++ b/src/declarative/util/qdeclarativestate.cpp @@ -154,7 +154,7 @@ QDeclarativeStateOperation::QDeclarativeStateOperation(QObjectPrivate &dd, QObje Notice the default state is referred to using an empty string (""). - States are commonly used together with \l {state-transitions}{Transitions} to provide + States are commonly used together with \l {Transitions} to provide animations when state changes occur. \note Setting the state of an object from within another state of the same object is diff --git a/src/declarative/util/qdeclarativestategroup.cpp b/src/declarative/util/qdeclarativestategroup.cpp index 67cd12e..1c1e964 100644 --- a/src/declarative/util/qdeclarativestategroup.cpp +++ b/src/declarative/util/qdeclarativestategroup.cpp @@ -112,7 +112,7 @@ public: } \endqml - \sa {qmlstate}{States} {state-transitions}{Transitions}, {QtDeclarative} + \sa {qmlstate}{States} {Transitions}, {QtDeclarative} */ QDeclarativeStateGroup::QDeclarativeStateGroup(QObject *parent) @@ -204,7 +204,7 @@ void QDeclarativeStateGroupPrivate::clear_states(QDeclarativeListProperty<QDecla } \endqml - \sa {state-transitions}{Transitions} + \sa {Transitions} */ QDeclarativeListProperty<QDeclarativeTransition> QDeclarativeStateGroup::transitionsProperty() { diff --git a/src/declarative/util/qdeclarativetransition.cpp b/src/declarative/util/qdeclarativetransition.cpp index 582191b..7042d0c 100644 --- a/src/declarative/util/qdeclarativetransition.cpp +++ b/src/declarative/util/qdeclarativetransition.cpp @@ -60,12 +60,25 @@ QT_BEGIN_NAMESPACE For example, the following \l Rectangle has two states: the default state, and an added "moved" state. In the "moved state, the rectangle's position changes - to (50, 50). The added \l Transition specifies that when the rectangle + to (50, 50). The added Transition specifies that when the rectangle changes between the default and the "moved" state, any changes to the \c x and \c y properties should be animated, using an \c Easing.InOutQuad. \snippet doc/src/snippets/declarative/transition.qml 0 + Notice the example does not require \l{PropertyAnimation::}{to} and + \l{PropertyAnimation::}{from} values for the NumberAnimation. As a convenience, + these properties are automatically set to the values of \c x and \c y before + and after the state change; the \c from values are provided by + the current values of \c x and \c y, and the \c to values are provided by + the PropertyChanges object. If you wish, you can provide \l{PropertyAnimation::}{to} and + \l{PropertyAnimation::}{from} values anyway to override the default values. + + By default, a Transition's animations are applied for any state change in the + parent item. The Transition \l {Transition::}{from} and \l {Transition::}{to} + values can be set to restrict the animations to only be applied when changing + from one particular state to another. + To define multiple transitions, specify \l Item::transitions as a list: \qml @@ -78,7 +91,11 @@ QT_BEGIN_NAMESPACE } \endqml - \sa {declarative/animation/states}{states example}, {qmlstates}{States}, {state-transitions}{Transitions}, {QtDeclarative} + If a state change has a Transition that matches the same property as a + \l Behavior, the Transition animation overrides the \l Behavior for that + state change. + + \sa {QML Animation}, {declarative/animation/states}{states example}, {qmlstates}{States}, {QtDeclarative} */ /*! -- cgit v0.12 From dc2f700a006d827db0eaf8d1e01e4d9c7c8c0baa Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Thu, 5 Aug 2010 16:27:56 +1000 Subject: Rename example component file for clarity Task-number: QTBUG-12633 --- .../keyinteraction/focus/Core/ContextMenu.qml | 7 ++ .../keyinteraction/focus/Core/GridMenu.qml | 7 +- .../keyinteraction/focus/Core/ListMenu.qml | 105 +++++++++++++++++++++ .../keyinteraction/focus/Core/ListViews.qml | 102 -------------------- .../declarative/keyinteraction/focus/focus.qml | 11 ++- 5 files changed, 123 insertions(+), 109 deletions(-) create mode 100644 examples/declarative/keyinteraction/focus/Core/ListMenu.qml delete mode 100644 examples/declarative/keyinteraction/focus/Core/ListViews.qml diff --git a/examples/declarative/keyinteraction/focus/Core/ContextMenu.qml b/examples/declarative/keyinteraction/focus/Core/ContextMenu.qml index 15e77de..ba49d14 100644 --- a/examples/declarative/keyinteraction/focus/Core/ContextMenu.qml +++ b/examples/declarative/keyinteraction/focus/Core/ContextMenu.qml @@ -53,6 +53,13 @@ FocusScope { color: "#D1DBBD" focus: true Keys.onRightPressed: mainView.focus = true + + Text { + anchors { top: parent.top; horizontalCenter: parent.horizontalCenter; margins: 30 } + color: "black" + font.pixelSize: 14 + text: "Context Menu" + } } } } diff --git a/examples/declarative/keyinteraction/focus/Core/GridMenu.qml b/examples/declarative/keyinteraction/focus/Core/GridMenu.qml index 19f7235..88840cb 100644 --- a/examples/declarative/keyinteraction/focus/Core/GridMenu.qml +++ b/examples/declarative/keyinteraction/focus/Core/GridMenu.qml @@ -43,7 +43,10 @@ import Qt 4.7 FocusScope { property alias interactive: gridView.interactive - onActiveFocusChanged: if (activeFocus) mainView.state = "" + onActiveFocusChanged: { + if (activeFocus) + mainView.state = "" + } Rectangle { anchors.fill: parent @@ -60,7 +63,7 @@ FocusScope { focus: true model: 12 - KeyNavigation.down: listViews + KeyNavigation.down: listMenu KeyNavigation.left: contextMenu delegate: Item { diff --git a/examples/declarative/keyinteraction/focus/Core/ListMenu.qml b/examples/declarative/keyinteraction/focus/Core/ListMenu.qml new file mode 100644 index 0000000..6100b32 --- /dev/null +++ b/examples/declarative/keyinteraction/focus/Core/ListMenu.qml @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +FocusScope { + clip: true + + onActiveFocusChanged: { + if (activeFocus) + mainView.state = "showListViews" + } + + ListView { + id: list1 + y: activeFocus ? 10 : 40; width: parent.width / 3; height: parent.height - 20 + focus: true + KeyNavigation.up: gridMenu; KeyNavigation.left: contextMenu; KeyNavigation.right: list2 + model: 10; cacheBuffer: 200 + delegate: ListViewDelegate {} + + Behavior on y { + NumberAnimation { duration: 600; easing.type: Easing.OutQuint } + } + } + + ListView { + id: list2 + y: activeFocus ? 10 : 40; x: parseInt(parent.width / 3); width: parent.width / 3; height: parent.height - 20 + KeyNavigation.up: gridMenu; KeyNavigation.left: list1; KeyNavigation.right: list3 + model: 10; cacheBuffer: 200 + delegate: ListViewDelegate {} + + Behavior on y { + NumberAnimation { duration: 600; easing.type: Easing.OutQuint } + } + } + + ListView { + id: list3 + y: activeFocus ? 10 : 40; x: parseInt(2 * parent.width / 3); width: parent.width / 3; height: parent.height - 20 + KeyNavigation.up: gridMenu; KeyNavigation.left: list2 + model: 10; cacheBuffer: 200 + delegate: ListViewDelegate {} + + Behavior on y { + NumberAnimation { duration: 600; easing.type: Easing.OutQuint } + } + } + + Rectangle { width: parent.width; height: 1; color: "#D1DBBD" } + + Rectangle { + y: 1; width: parent.width; height: 10 + gradient: Gradient { + GradientStop { position: 0.0; color: "#3E606F" } + GradientStop { position: 1.0; color: "transparent" } + } + } + + Rectangle { + y: parent.height - 10; width: parent.width; height: 10 + gradient: Gradient { + GradientStop { position: 1.0; color: "#3E606F" } + GradientStop { position: 0.0; color: "transparent" } + } + } +} diff --git a/examples/declarative/keyinteraction/focus/Core/ListViews.qml b/examples/declarative/keyinteraction/focus/Core/ListViews.qml deleted file mode 100644 index 3d6ceab..0000000 --- a/examples/declarative/keyinteraction/focus/Core/ListViews.qml +++ /dev/null @@ -1,102 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt 4.7 - -FocusScope { - clip: true - - onActiveFocusChanged: if (activeFocus) mainView.state = "showListViews" - - ListView { - id: list1 - y: activeFocus ? 10 : 40; width: parent.width / 3; height: parent.height - 20 - focus: true - KeyNavigation.up: gridMenu; KeyNavigation.left: contextMenu; KeyNavigation.right: list2 - model: 10; cacheBuffer: 200 - delegate: ListViewDelegate {} - - Behavior on y { - NumberAnimation { duration: 600; easing.type: Easing.OutQuint } - } - } - - ListView { - id: list2 - y: activeFocus ? 10 : 40; x: parseInt(parent.width / 3); width: parent.width / 3; height: parent.height - 20 - KeyNavigation.up: gridMenu; KeyNavigation.left: list1; KeyNavigation.right: list3 - model: 10; cacheBuffer: 200 - delegate: ListViewDelegate {} - - Behavior on y { - NumberAnimation { duration: 600; easing.type: Easing.OutQuint } - } - } - - ListView { - id: list3 - y: activeFocus ? 10 : 40; x: parseInt(2 * parent.width / 3); width: parent.width / 3; height: parent.height - 20 - KeyNavigation.up: gridMenu; KeyNavigation.left: list2 - model: 10; cacheBuffer: 200 - delegate: ListViewDelegate {} - - Behavior on y { - NumberAnimation { duration: 600; easing.type: Easing.OutQuint } - } - } - - Rectangle { width: parent.width; height: 1; color: "#D1DBBD" } - - Rectangle { - y: 1; width: parent.width; height: 10 - gradient: Gradient { - GradientStop { position: 0.0; color: "#3E606F" } - GradientStop { position: 1.0; color: "transparent" } - } - } - - Rectangle { - y: parent.height - 10; width: parent.width; height: 10 - gradient: Gradient { - GradientStop { position: 1.0; color: "#3E606F" } - GradientStop { position: 0.0; color: "transparent" } - } - } -} diff --git a/examples/declarative/keyinteraction/focus/focus.qml b/examples/declarative/keyinteraction/focus/focus.qml index 56fdffc..9463192 100644 --- a/examples/declarative/keyinteraction/focus/focus.qml +++ b/examples/declarative/keyinteraction/focus/focus.qml @@ -55,27 +55,28 @@ Rectangle { GridMenu { id: gridMenu - width: parent.width; height: 320 + focus: true interactive: parent.activeFocus } - ListViews { - id: listViews + ListMenu { + id: listMenu y: 320; width: parent.width; height: 320 } Rectangle { id: shade anchors.fill: parent - color: "black"; opacity: 0 + color: "black" + opacity: 0 } states: State { name: "showListViews" PropertyChanges { target: gridMenu; y: -160 } - PropertyChanges { target: listViews; y: 160 } + PropertyChanges { target: listMenu; y: 160 } } transitions: Transition { -- cgit v0.12 From 6d290ae51ee928aecb87be57326504aab8d7f177 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Thu, 5 Aug 2010 08:52:33 +0200 Subject: Doc: nesting up orphant pages --- doc/src/overviews.qdoc | 1 + doc/src/widgets-and-layouts/widgets.qdoc | 1 + doc/src/windows-and-dialogs/dialogs.qdoc | 2 ++ 3 files changed, 4 insertions(+) diff --git a/doc/src/overviews.qdoc b/doc/src/overviews.qdoc index a1773a3..b72df98 100644 --- a/doc/src/overviews.qdoc +++ b/doc/src/overviews.qdoc @@ -29,6 +29,7 @@ \page overviews.html \title All Overviews and HOWTOs + \ingroup qt-basic-concepts \generatelist overviews */ diff --git a/doc/src/widgets-and-layouts/widgets.qdoc b/doc/src/widgets-and-layouts/widgets.qdoc index 18b8be1..f2475c2 100644 --- a/doc/src/widgets-and-layouts/widgets.qdoc +++ b/doc/src/widgets-and-layouts/widgets.qdoc @@ -29,6 +29,7 @@ \page widgets-and-layouts.html \title Widgets and Layouts \ingroup qt-gui-concepts + \ingroup qt-basic-concepts \brief The primary elements for designing user interfaces in Qt. \section1 Widgets diff --git a/doc/src/windows-and-dialogs/dialogs.qdoc b/doc/src/windows-and-dialogs/dialogs.qdoc index 6316dc9..74df2aa 100644 --- a/doc/src/windows-and-dialogs/dialogs.qdoc +++ b/doc/src/windows-and-dialogs/dialogs.qdoc @@ -27,11 +27,13 @@ /*! \group standard-dialogs + \ingroup qt-basic-concepts \title Standard Dialog Classes */ /*! \group dialog-classes + \ingroup qt-basic-concepts \title Classes for Building Dialogs */ -- cgit v0.12 From d524da81ee257a6bd67d32d0bc870280a7d5b8a4 Mon Sep 17 00:00:00 2001 From: Alex <qt-info@nokia.com> Date: Thu, 5 Aug 2010 17:43:52 +1000 Subject: Fix link error when building Bearer application with Qt Mobility QtMobility uses the Qt header when compiling applications which link against Mobility's Bearer library. Therefore QNetworkConfiguration::bearerName() cannot be inline and refer to the new QNetworkConfiguration::bearerTypeName() function (which doesn't exist in Mobility) Task-number: QTBUG-12378 Reviewed-by: Rohan McGovern --- src/network/bearer/qnetworkconfiguration.cpp | 7 +++++++ src/network/bearer/qnetworkconfiguration.h | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/network/bearer/qnetworkconfiguration.cpp b/src/network/bearer/qnetworkconfiguration.cpp index 3190a30..60851ac 100644 --- a/src/network/bearer/qnetworkconfiguration.cpp +++ b/src/network/bearer/qnetworkconfiguration.cpp @@ -406,6 +406,13 @@ QList<QNetworkConfiguration> QNetworkConfiguration::children() const This function is deprecated. It is equivalent to calling bearerTypeName(), however bearerType() should be used in preference. */ +QString QNetworkConfiguration::bearerName() const +{ + // This function cannot be inline as it would break Qt Mobility. + // Qt Mobility uses the Qt header as well and since the Mobility Bearer library + // does not provide bearerTypeName() we cannot use an inline function. + return bearerTypeName(); +} /*! Returns the type of bearer used by this network configuration. diff --git a/src/network/bearer/qnetworkconfiguration.h b/src/network/bearer/qnetworkconfiguration.h index d9d36fd..e4f762a 100644 --- a/src/network/bearer/qnetworkconfiguration.h +++ b/src/network/bearer/qnetworkconfiguration.h @@ -120,7 +120,7 @@ public: Purpose purpose() const; // Required to maintain source compatibility with Qt Mobility. - QT_DEPRECATED inline QString bearerName() const { return bearerTypeName(); } + QT_DEPRECATED QString bearerName() const; BearerType bearerType() const; QString bearerTypeName() const; -- cgit v0.12 From a6937c7d8d2253c0f230254eaa2b9c8042972b30 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Thu, 5 Aug 2010 10:00:24 +0200 Subject: Doc: Adding text to GS page --- doc/src/getting-started/gettingstarted.qdoc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/doc/src/getting-started/gettingstarted.qdoc b/doc/src/getting-started/gettingstarted.qdoc index 145982b..e58305a 100644 --- a/doc/src/getting-started/gettingstarted.qdoc +++ b/doc/src/getting-started/gettingstarted.qdoc @@ -30,7 +30,13 @@ \group gettingStarted - Following is a list. + \section1 + Creating applications using Qt and QML is easy enough once you get started. + To get you started we have created two tutorials creating two similar applications, + but using diiferent approaches. One tutorial implements the user interface using + QML, while the other implements the whole application using traditional Qt. + + Please click on the links below to start the ride. \generatelist{related} */ -- cgit v0.12 From 9423ef31eb40e2bd0209621de1d1caf796ec7501 Mon Sep 17 00:00:00 2001 From: Simon Hausmann <simon.hausmann@nokia.com> Date: Thu, 5 Aug 2010 11:24:10 +0200 Subject: Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( bbff6182e525fcf58dbc7426a1fbbf8f31588214 ) Changes in WebKit/qt since the last update: ++ b/WebKit/qt/ChangeLog 2010-08-05 David Leong <david.leong@nokia.com> Reviewed by Simon Hausmann. [Qt] Input mode states are not reset after entering a password field https://bugs.webkit.org/show_bug.cgi?id=43530 Input mode hints are not reset if clicking on password <input> elements then clicking on <textarea> elements * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::setInputMethodState): * tests/qwebview/resources/input_types.html: * tests/qwebview/tst_qwebview.cpp: (tst_QWebView::focusInputTypes): --- src/3rdparty/webkit/VERSION | 2 +- src/3rdparty/webkit/WebKit/qt/ChangeLog | 17 +++++++++++++++++ .../WebKit/qt/WebCoreSupport/EditorClientQt.cpp | 7 +++++++ .../qt/tests/qwebview/resources/input_types.html | 5 +++-- .../webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp | 19 +++++++++++++++++++ 5 files changed, 47 insertions(+), 3 deletions(-) diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION index 358024b..7c85fcd 100644 --- a/src/3rdparty/webkit/VERSION +++ b/src/3rdparty/webkit/VERSION @@ -8,4 +8,4 @@ The commit imported was from the and has the sha1 checksum - d521d7d81e8f0297c94be9ebd8af67ee130d0edb + bbff6182e525fcf58dbc7426a1fbbf8f31588214 diff --git a/src/3rdparty/webkit/WebKit/qt/ChangeLog b/src/3rdparty/webkit/WebKit/qt/ChangeLog index 7d419d5..c99109f 100644 --- a/src/3rdparty/webkit/WebKit/qt/ChangeLog +++ b/src/3rdparty/webkit/WebKit/qt/ChangeLog @@ -1,3 +1,20 @@ +2010-08-05 David Leong <david.leong@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Input mode states are not reset after entering a password field + https://bugs.webkit.org/show_bug.cgi?id=43530 + + Input mode hints are not reset if clicking on password <input> elements then + clicking on <textarea> elements + + * WebCoreSupport/EditorClientQt.cpp: + (WebCore::EditorClientQt::setInputMethodState): + * tests/qwebview/resources/input_types.html: + * tests/qwebview/tst_qwebview.cpp: + (tst_QWebView::focusInputTypes): + + 2010-07-27 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Tor Arne Vestbø. diff --git a/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp b/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp index cb0758b..b48ea92 100644 --- a/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp +++ b/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp @@ -601,6 +601,13 @@ void EditorClientQt::setInputMethodState(bool active) QWebPageClient* webPageClient = m_page->d->client; if (webPageClient) { #if QT_VERSION >= 0x040600 + // Make sure to reset input method hint + webPageClient->setInputMethodHint(Qt::ImhDialableCharactersOnly, false); + webPageClient->setInputMethodHint(Qt::ImhDigitsOnly, false); + webPageClient->setInputMethodHint(Qt::ImhEmailCharactersOnly, false); + webPageClient->setInputMethodHint(Qt::ImhUrlCharactersOnly, false); + webPageClient->setInputMethodHint(Qt::ImhHiddenText, false); + HTMLInputElement* inputElement = 0; Frame* frame = m_page->d->page->focusController()->focusedOrMainFrame(); if (frame && frame->document() && frame->document()->focusedNode()) diff --git a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html index 18ab314..2e893af 100644 --- a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html +++ b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html @@ -4,5 +4,6 @@ <input type='tel' style='position: absolute; left: 10px; top: 100px; height: 50px; width: 100px;'/><br> <input type='number' style='position: absolute; left: 10px; top: 150px; height: 50px; width: 100px;'/><br> <input type='email' style='position: absolute; left: 10px; top: 200px; height: 50px; width: 100px;'/><br> -<input type='url' style='position: absolute; left: 10px; top: 250px; height: 50px; width: 100px;'/><br>" -</body></html> \ No newline at end of file +<input type='url' style='position: absolute; left: 10px; top: 250px; height: 50px; width: 100px;'/><br> +<textarea style='position: absolute; left: 10px; top: 310px; height: 50px; width: 100px;' rows="2" cols="20">blah blah blah blah</textarea><br> +</body></html> diff --git a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp index facee59..14f2362 100644 --- a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp +++ b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp @@ -251,30 +251,37 @@ void tst_QWebView::focusInputTypes() #else QVERIFY(webView->inputMethodHints() == Qt::ImhNone); #endif + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'password' field webView->fireMouseClick(QPoint(20, 60)); QVERIFY(webView->inputMethodHints() == Qt::ImhHiddenText); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'tel' field webView->fireMouseClick(QPoint(20, 110)); QVERIFY(webView->inputMethodHints() == Qt::ImhDialableCharactersOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'number' field webView->fireMouseClick(QPoint(20, 160)); QVERIFY(webView->inputMethodHints() == Qt::ImhDigitsOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'email' field webView->fireMouseClick(QPoint(20, 210)); QVERIFY(webView->inputMethodHints() == Qt::ImhEmailCharactersOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'url' field webView->fireMouseClick(QPoint(20, 260)); QVERIFY(webView->inputMethodHints() == Qt::ImhUrlCharactersOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'password' field webView->fireMouseClick(QPoint(20, 60)); QVERIFY(webView->inputMethodHints() == Qt::ImhHiddenText); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'text' type webView->fireMouseClick(QPoint(20, 10)); @@ -284,6 +291,18 @@ void tst_QWebView::focusInputTypes() #else QVERIFY(webView->inputMethodHints() == Qt::ImhNone); #endif + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); + + // 'password' field + webView->fireMouseClick(QPoint(20, 60)); + QVERIFY(webView->inputMethodHints() == Qt::ImhHiddenText); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); + + qWarning("clicking on text area"); + // 'text area' field + webView->fireMouseClick(QPoint(20, 320)); + QVERIFY(webView->inputMethodHints() == Qt::ImhNone); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); delete webView; -- cgit v0.12 From ab66b692dd2729f8b59410b65940934926e5ee04 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Thu, 5 Aug 2010 11:28:53 +0200 Subject: Doc: Editied version of QML GS --- doc/src/getting-started/gettingstartedqml.qdoc | 46 ++++++++++++-------------- 1 file changed, 21 insertions(+), 25 deletions(-) diff --git a/doc/src/getting-started/gettingstartedqml.qdoc b/doc/src/getting-started/gettingstartedqml.qdoc index 2bfb71c..93f6f88 100644 --- a/doc/src/getting-started/gettingstartedqml.qdoc +++ b/doc/src/getting-started/gettingstartedqml.qdoc @@ -32,27 +32,30 @@ \ingroup gettingStarted Welcome to the world of QML - the declarative UI language. In this Getting - Started guide, we will create a simple text editor application using QML. - After reading this guide, you should be ready to develop your own applications - using QML and Qt C++. + Started guide, we create a simple text editor application using QML. + After reading this guide, you should be ready to start developing your own + applications using QML and Qt C++. + \example tutorials/gettingStarted/gsQml + \section1 QML to Build User Interfaces - The application we are building is a simple text editor that will load, save, - and perform some text manipulation. This guide will consist of two parts. The - first part will involve designing the application layout and behaviors using - declarative language in QML. For the second part, file loading and saving will - be implemented using Qt C++. Using - \l {The Meta-Object System}{Qt's Meta-Object System}, we can expose C++ functions - as properties that QML elements can use. Utilizing QML and Qt C++, we can - efficiently decouple the interface logic from the application logic. + Here we are building is a simple text editor that con load, save, + and perform some text manipulation. This guide consists of two parts. The + first part involves designing the application layout and behaviors using + declarative language in QML. For the second part, file loading and saving is + implemented using Qt C++. + Using \l {The Meta-Object System}{Qt's Meta-Object System}, we can expose C++ + functions as properties that QML elements can use. By utilizing QML and Qt C++, + we can efficiently decouple the interface logic from the application logic. \image qml-texteditor5_editmenu.png - To run the QML example code, merely provide the included \l{QML Viewer}{qmlviewer} + To run the QML example code, we merely provide the included \l{QML Viewer}{qmlviewer} tool with the QML file as the argument. The C++ portion of this tutorial assumes that the reader possesses basic knowledge of Qt's compilation procedures. + \omit Tutorial chapters: \list 1 \o \l {Defining a Button and a Menu}{Defining a Button and a Menu} @@ -61,6 +64,7 @@ \o \l {Decorating the Text Editor}{Decorating the Text Editor} \o \l {Extending QML using Qt C++}{Extending QML using Qt C++} \endlist + \endomit \section1 Defining a Button and a Menu @@ -104,7 +108,7 @@ is called \c simplebutton. Anchors may bind to other items' anchors, allowing layout assignments simpler. - We shall save this code as \c SimpleButton.qml. Running qmlviewer with the file as the + We save this code as \c SimpleButton.qml. Running qmlviewer with the file as the argument will display the grey rectangle with a text label. \image qml-texteditor1_simplebutton.png @@ -407,13 +411,9 @@ \image qml-texteditor2_menubar.png - */ - - /*! - \page qml-textEditor3.html - \title Building a Text Editor + \section1 Building a Text Editor - \section1 Declaring a TextArea + \section2 Declaring a TextArea Our text editor is not a text editor if it didn't contain an editable text area. QML's \l {TextEdit}{TextEdit} element allows the declaration of a multi-line @@ -497,12 +497,8 @@ \image qml-texteditor3_texteditor.png - */ - - /*! - \page qml-textEditor4 - \title Decorating the Text Editor - \section1 Implementing a Drawer Interface + \section1 Decorating the Text Editor + \section2 Implementing a Drawer Interface Our text editor looks simple and we need to decorate it. Using QML, we can declare transitions and animate our text editor. Our menu bar is occupying one-third of the -- cgit v0.12 From 2faafdeda4c715a91297b56251773b21a0cac86b Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Thu, 5 Aug 2010 11:33:24 +0200 Subject: Doc: Images for QML GS --- doc/src/images/arrow.png | Bin 0 -> 583 bytes doc/src/images/qml-texteditor1_button.png | Bin 0 -> 1670 bytes doc/src/images/qml-texteditor1_editmenu.png | Bin 0 -> 7358 bytes doc/src/images/qml-texteditor1_filemenu.png | Bin 0 -> 7078 bytes doc/src/images/qml-texteditor1_simplebutton.png | Bin 0 -> 1055 bytes doc/src/images/qml-texteditor2_menubar.png | Bin 0 -> 7975 bytes doc/src/images/qml-texteditor3_textarea.png | Bin 0 -> 10417 bytes doc/src/images/qml-texteditor3_texteditor.png | Bin 0 -> 61353 bytes doc/src/images/qml-texteditor4_texteditor.png | Bin 0 -> 75600 bytes doc/src/images/qml-texteditor5_editmenu.png | Bin 0 -> 31834 bytes doc/src/images/qml-texteditor5_filemenu.png | Bin 0 -> 21688 bytes doc/src/images/qml-texteditor5_newfile.png | Bin 0 -> 92794 bytes 12 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 doc/src/images/arrow.png create mode 100644 doc/src/images/qml-texteditor1_button.png create mode 100644 doc/src/images/qml-texteditor1_editmenu.png create mode 100644 doc/src/images/qml-texteditor1_filemenu.png create mode 100644 doc/src/images/qml-texteditor1_simplebutton.png create mode 100644 doc/src/images/qml-texteditor2_menubar.png create mode 100644 doc/src/images/qml-texteditor3_textarea.png create mode 100644 doc/src/images/qml-texteditor3_texteditor.png create mode 100644 doc/src/images/qml-texteditor4_texteditor.png create mode 100644 doc/src/images/qml-texteditor5_editmenu.png create mode 100644 doc/src/images/qml-texteditor5_filemenu.png create mode 100644 doc/src/images/qml-texteditor5_newfile.png diff --git a/doc/src/images/arrow.png b/doc/src/images/arrow.png new file mode 100644 index 0000000..14978c2 Binary files /dev/null and b/doc/src/images/arrow.png differ diff --git a/doc/src/images/qml-texteditor1_button.png b/doc/src/images/qml-texteditor1_button.png new file mode 100644 index 0000000..aab64bc Binary files /dev/null and b/doc/src/images/qml-texteditor1_button.png differ diff --git a/doc/src/images/qml-texteditor1_editmenu.png b/doc/src/images/qml-texteditor1_editmenu.png new file mode 100644 index 0000000..af8028b Binary files /dev/null and b/doc/src/images/qml-texteditor1_editmenu.png differ diff --git a/doc/src/images/qml-texteditor1_filemenu.png b/doc/src/images/qml-texteditor1_filemenu.png new file mode 100644 index 0000000..ccc008c Binary files /dev/null and b/doc/src/images/qml-texteditor1_filemenu.png differ diff --git a/doc/src/images/qml-texteditor1_simplebutton.png b/doc/src/images/qml-texteditor1_simplebutton.png new file mode 100644 index 0000000..21ce509 Binary files /dev/null and b/doc/src/images/qml-texteditor1_simplebutton.png differ diff --git a/doc/src/images/qml-texteditor2_menubar.png b/doc/src/images/qml-texteditor2_menubar.png new file mode 100644 index 0000000..691a833 Binary files /dev/null and b/doc/src/images/qml-texteditor2_menubar.png differ diff --git a/doc/src/images/qml-texteditor3_textarea.png b/doc/src/images/qml-texteditor3_textarea.png new file mode 100644 index 0000000..95abcd6 Binary files /dev/null and b/doc/src/images/qml-texteditor3_textarea.png differ diff --git a/doc/src/images/qml-texteditor3_texteditor.png b/doc/src/images/qml-texteditor3_texteditor.png new file mode 100644 index 0000000..bdf6957 Binary files /dev/null and b/doc/src/images/qml-texteditor3_texteditor.png differ diff --git a/doc/src/images/qml-texteditor4_texteditor.png b/doc/src/images/qml-texteditor4_texteditor.png new file mode 100644 index 0000000..85d216b Binary files /dev/null and b/doc/src/images/qml-texteditor4_texteditor.png differ diff --git a/doc/src/images/qml-texteditor5_editmenu.png b/doc/src/images/qml-texteditor5_editmenu.png new file mode 100644 index 0000000..7365690 Binary files /dev/null and b/doc/src/images/qml-texteditor5_editmenu.png differ diff --git a/doc/src/images/qml-texteditor5_filemenu.png b/doc/src/images/qml-texteditor5_filemenu.png new file mode 100644 index 0000000..7078022 Binary files /dev/null and b/doc/src/images/qml-texteditor5_filemenu.png differ diff --git a/doc/src/images/qml-texteditor5_newfile.png b/doc/src/images/qml-texteditor5_newfile.png new file mode 100644 index 0000000..e493941 Binary files /dev/null and b/doc/src/images/qml-texteditor5_newfile.png differ -- cgit v0.12 From f13ebf52a0d091c6c72c97d2a13311e1e7c4a5cf Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Thu, 5 Aug 2010 11:46:12 +0200 Subject: Doc: Adding GS QML example files --- .../tutorials/gettingStarted/gsQml/TextEditor.qml | 129 ++++++++++++ .../tutorials/gettingStarted/gsQml/core/Button.qml | 110 ++++++++++ .../gettingStarted/gsQml/core/EditMenu.qml | 111 ++++++++++ .../gettingStarted/gsQml/core/FileDialog.qml | 170 +++++++++++++++ .../gettingStarted/gsQml/core/FileMenu.qml | 232 +++++++++++++++++++++ .../gettingStarted/gsQml/core/MenuBar.qml | 148 +++++++++++++ .../gettingStarted/gsQml/core/TextArea.qml | 86 ++++++++ .../tutorials/gettingStarted/gsQml/core/qmldir | 48 +++++ .../gettingStarted/gsQml/filedialog/cppPlugins.pro | 17 ++ .../gsQml/filedialog/dialogPlugin.cpp | 57 +++++ .../gettingStarted/gsQml/filedialog/dialogPlugin.h | 57 +++++ .../gettingStarted/gsQml/filedialog/directory.cpp | 219 +++++++++++++++++++ .../gettingStarted/gsQml/filedialog/directory.h | 108 ++++++++++ .../gettingStarted/gsQml/filedialog/file.cpp | 57 +++++ .../gettingStarted/gsQml/filedialog/file.h | 67 ++++++ .../gettingStarted/gsQml/filedialog/qmldir | 1 + .../gettingStarted/gsQml/images/arrow.png | Bin 0 -> 583 bytes .../gettingStarted/gsQml/images/qt-logo.png | Bin 0 -> 5149 bytes .../gsQml/pics/qml-texteditor5_editmenu.png | Bin 0 -> 65123 bytes .../gsQml/pics/qml-texteditor5_filemenu.png | Bin 0 -> 21367 bytes .../gsQml/pics/qml-texteditor5_newfile.png | Bin 0 -> 76693 bytes 21 files changed, 1617 insertions(+) create mode 100644 examples/tutorials/gettingStarted/gsQml/TextEditor.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/Button.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/TextArea.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/qmldir create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/directory.h create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/file.h create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/qmldir create mode 100644 examples/tutorials/gettingStarted/gsQml/images/arrow.png create mode 100644 examples/tutorials/gettingStarted/gsQml/images/qt-logo.png create mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png create mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png create mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png diff --git a/examples/tutorials/gettingStarted/gsQml/TextEditor.qml b/examples/tutorials/gettingStarted/gsQml/TextEditor.qml new file mode 100644 index 0000000..6ffdd6d --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/TextEditor.qml @@ -0,0 +1,129 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 +import "core" + +Rectangle{ + id: screen + width: 1000; height: 1000 + property int partition: height/3 + border.width: 1 + border.color: "#DCDCCC" + state: "DRAWER_CLOSED" + + //Item 1: MenuBar on the top portion of the screen + MenuBar{ + id:menuBar + height: screen.partition; width: screen.width + z:1 + } + //Item 2: The editable text area + TextArea{ + id:textArea + y:drawer.height + color: "#3F3F3F" + fontColor: "#DCDCCC" + height: partition*2; width:parent.width + } + //Item 3: The drawer handle + Rectangle{ + id:drawer + height:15; width: parent.width + border.color : "#6A6D6A" + border.width: 1 + z:1 + gradient: Gradient { + GradientStop { position: 0.0; color: "#8C8F8C" } + GradientStop { position: 0.17; color: "#6A6D6A" } + GradientStop { position: 0.77; color: "#3F3F3F" } + GradientStop { position: 1.0; color: "#6A6D6A" } + } + Image{ + id: arrowIcon + source: "images/arrow.png" + anchors.horizontalCenter: parent.horizontalCenter + + Behavior{NumberAnimation{property: "rotation";easing.type: Easing.OutExpo }} + } + + MouseArea{ + id: drawerMouseArea + anchors.fill:parent + hoverEnabled: true + onEntered: parent.border.color = Qt.lighter("#6A6D6A") + onExited: parent.border.color = "#6A6D6A" + onClicked:{ + if (screen.state == "DRAWER_CLOSED"){ + screen.state = "DRAWER_OPEN" + } + else if (screen.state == "DRAWER_OPEN"){ + screen.state = "DRAWER_CLOSED" + } + } + } + } + + states:[ + State{ + name: "DRAWER_OPEN" + PropertyChanges { target: menuBar; y: 0} + PropertyChanges { target: textArea; y: partition + drawer.height} + PropertyChanges { target: drawer; y: partition} + PropertyChanges { target: arrowIcon; rotation: 180} + }, + State{ + name: "DRAWER_CLOSED" + PropertyChanges { target: menuBar; y:-height; } + PropertyChanges { target: textArea; y: drawer.height; height: screen.height - drawer.height} + PropertyChanges { target: drawer; y: 0} + PropertyChanges { target: arrowIcon; rotation: 0} + } + ] + + transitions: [ + Transition{ + to: "*" + NumberAnimation { target: textArea; properties: "y, height"; duration: 100; easing.type:Easing.OutExpo } + NumberAnimation { target: menuBar; properties: "y"; duration: 100;easing.type: Easing.OutExpo } + NumberAnimation { target: drawer; properties: "y"; duration: 100;easing.type: Easing.OutExpo } + } + ] +} diff --git a/examples/tutorials/gettingStarted/gsQml/core/Button.qml b/examples/tutorials/gettingStarted/gsQml/core/Button.qml new file mode 100644 index 0000000..28ae4ec --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/Button.qml @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +import Qt 4.7 + +Rectangle { + + //identifier of the item + id: button + + //these properties act as constants, useable outside this QML file + property int buttonHeight: 75 + property int buttonWidth: 150 + + //attaches to the Text element's text content + property string label + property color textColor: buttonLabel.color + + //the color highlight when the mouse hovers on the rectangle + property color onHoverColor: "lightsteelblue" + property color borderColor: "transparent" + + //buttonColor is set to the button's main color + property color buttonColor: "lightblue" + + property real labelSize: 14 + //set appearance properties + radius:6 + smooth: true + border.width: 2 + border.color: borderColor + width: buttonWidth; height: buttonHeight + + Text{ + id: buttonLabel + anchors.centerIn: parent + text: label //bind the text to the parent's text + color: "#DCDCCC" + font.pointSize: labelSize + } + + //buttonClick() is callable and a signal handler, onButtonClick is automatically created + signal buttonClick() + + //define the clickable area to be the whole rectangle + MouseArea{ + id: buttonMouseArea + anchors.fill: parent //stretch the area to the parent's dimension + onClicked: buttonClick() + + //if true, then onEntered and onExited called if mouse hovers in the mouse area + //if false, a button must be clicked to detect the mouse hover + hoverEnabled: true + + //display a border if the mouse hovers on the button mouse area + onEntered: parent.border.color = onHoverColor + //remove the border if the mouse exits the button mouse area + onExited: parent.border.color = borderColor + + } + + //change the color of the button when pressed + color: buttonMouseArea.pressed ? Qt.darker(buttonColor, 1.5) : buttonColor + //animate the color whenever the color property changes + Behavior on color { ColorAnimation{ duration: 55} } + + //scale the button when pressed + scale: buttonMouseArea.pressed ? 1.1 : 1.00 + //Animate the scale property change + Behavior on scale { NumberAnimation{ duration: 55} } + +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml b/examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml new file mode 100644 index 0000000..be9f6a1 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +import Qt 4.7 + +Rectangle{ + id: editMenu + height: 480; width:1000 + color: "powderblue" + property color buttonBorderColor: "#7A8182" + property color buttonFillColor: "#61BDCACD" + property string menuName:"Edit" + + gradient: Gradient{ + GradientStop { position: 0.0; color: "#6A7570" } + GradientStop { position: 1.0; color: Qt.darker("#6A7570") } + } + + Rectangle{ + id:actionContainer + color:"transparent" + anchors.centerIn: parent + width: parent.width; height: parent.height / 5 + Row{ + anchors.centerIn: parent + spacing: parent.width/9 + Button{ + id: loadButton + buttonColor: buttonFillColor + label: "Copy" + labelSize:16 + borderColor:buttonBorderColor + height: actionContainer.height + width: actionContainer.width/6 + onButtonClick:textArea.copy() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + + Button{ + id: saveButton + height: actionContainer.height + width: actionContainer.width/6 + buttonColor: buttonFillColor + label: "Paste" + borderColor:buttonBorderColor + labelSize:16 + onButtonClick:textArea.paste() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + Button{ + id: exitButton + label: "Select All" + height: actionContainer.height + width: actionContainer.width/6 + labelSize:16 + buttonColor: buttonFillColor + borderColor:buttonBorderColor + onButtonClick:textArea.selectAll() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + } + } + +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml b/examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml new file mode 100644 index 0000000..9948a27 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml @@ -0,0 +1,170 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle{ + id:dialog + height: 200 * partition; width: 200 + color: "transparent" + + signal selectChanged() + signal notifyRefresh() + onNotifyRefresh:dirView.model = directory.files + + property string selectedFile + property int selectedIndex: 0 + + Rectangle{ + id: dirBox + radius: 10 + anchors.centerIn:parent + height: parent.height -15; width: parent.width -30 + + Rectangle{ + id:header + height:parent.height*0.1 + width: parent.width + radius:3 + z:1 + gradient: Gradient { + GradientStop { position: 0.0; color: "#8C8F8C" } + GradientStop { position: 0.17; color: "#6A6D6A" } + GradientStop { position: 0.98;color: "#3F3F3F" } + GradientStop { position: 1.0; color: "#0e1B20" } + } + Text{ + height: header.height + anchors.centerIn: header + text: "files:" + color: "lightblue" + font.weight: Font.Light + font.italic: true + } + } + GridView{ + id:dirView + width:parent.width + height:parent.height*.9 + anchors.top: header.bottom + cellWidth: 100 + cellHeight: 75 +// highlight: Rectangle { width:cellWidth; height: cellHeight; color: "lightsteelblue" ;radius: 13} + model: directory.files + delegate: dirDelegate + clip: true + highlightMoveDuration:40 + } + + Component{ + id:dirDelegate + + Rectangle{ + id:file + color: "transparent" + width: GridView.view.cellWidth; height: GridView.view.cellHeight + + Text{ + id:fileName + width: parent.width + anchors.centerIn:parent + text: name + color: "#BDCACD" + font.weight: GridView.view.currentIndex == index ? Font.DemiBold : Font.Normal + font.pointSize: GridView.view.currentIndex == index ? 12 : 10 + elide: Text.ElideMiddle + horizontalAlignment: Text.AlignHCenter + } + Rectangle{ + id:selection + width:parent.width; height:parent.height + anchors.centerIn: parent + radius: 10 + smooth: true + scale: GridView.view.currentIndex == index ? 1 : 0.5 + opacity: GridView.view.currentIndex == index ? 1 : 0 + Text{ + id:overlay + width: parent.width + anchors.centerIn:parent + text: name + color: "#696167" + font.weight: Font.DemiBold + font.pointSize: 12 + smooth:true + elide: Text.ElideMiddle + horizontalAlignment: Text.AlignHCenter + } + Behavior on opacity{ NumberAnimation{ duration: 45} } + Behavior on scale { NumberAnimation{ duration: 45} } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter("lightsteelblue",1.25) } + GradientStop { position: 0.67; color: Qt.darker("lightsteelblue",1.3) } + } + border.color:"lightsteelblue" + border.width:1 + } + MouseArea{ + id:fileMouseArea + anchors.fill:parent + hoverEnabled: true + + onClicked:{ + GridView.view.currentIndex = index + selectedFile = directory.files[index].name + selectChanged() + } + onEntered:{ + fileName.color = "lightsteelblue" + fileName.font.weight = Font.DemiBold + } + onExited: { + fileName.font.weight = Font.Normal + fileName.color = "#BDCACD" + } + } + } + } + gradient: Gradient{ + GradientStop { position: 0.0; color: "#A5333333" } + GradientStop { position: 1.0; color: "#03333333" } + } + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml b/examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml new file mode 100644 index 0000000..20d8fd6 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml @@ -0,0 +1,232 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle{ + id: fileMenu + height: 480; width:1000 + property color buttonBorderColor: "#7F8487" + property color buttonFillColor: "#8FBDCACD" + property string fileContent:directory.fileContent + + //the menuName is accessible from outside this QML file + property string menuName: "File" + + //used to divide the screen into parts. + property real partition: 1/3 + + color: "#6C646A" + gradient: Gradient{ + GradientStop { position: 0.0; color: "#6C646A" } + GradientStop { position: 1.0; color: Qt.darker("#6A6D6A") } + } + + Directory{ + id:directory + filename: textInput.text + onDirectoryChanged:fileDialog.notifyRefresh() + } + + Rectangle{ + id:actionContainer + + //make this rectangle invisible + color:"transparent" + anchors.left: parent.left + + //the height is a good proportion that creates more space at the top of the column of buttons + width: fileMenu.width * partition; height: fileMenu.height + + Column{ + anchors.centerIn: parent + spacing: parent.height/32 + Button{ + id: saveButton + label: "Save" + borderColor: buttonBorderColor + buttonColor: buttonFillColor + width: actionContainer.width/ 1.3 + height:actionContainer.height / 8 + labelSize:24 + onButtonClick:{ + directory.fileContent = textArea.textContent + directory.filename = textInput.text + directory.saveFile() + } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + + } + Button{ + id: loadButton + width: actionContainer.width/ 1.3 + height:actionContainer.height/ 8 + buttonColor: buttonFillColor + borderColor: buttonBorderColor + label: "Load" + labelSize:24 + onButtonClick:{ + directory.filename = textInput.text + directory.loadFile() + textArea.textContent = directory.fileContent + } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + Button{ + id: newButton + width: actionContainer.width/ 1.3 + height:actionContainer.height/ 8 + buttonColor: buttonFillColor + borderColor: buttonBorderColor + label: "New" + labelSize:24 + onButtonClick:{ + textArea.textContent = "" + textInput.text = "" + } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + + } + Rectangle{ + id: space + width: actionContainer.width/ 1.3 + height:actionContainer.height / 16 + color:"transparent" + } + Button{ + id: exitButton + width: actionContainer.width/ 1.3 + height:actionContainer.height/ 8 + label: "Exit" + labelSize:24 + buttonColor: buttonFillColor + borderColor: buttonBorderColor + onButtonClick:Qt.quit() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + } + } + + Rectangle{ + id:dialogContainer + + width: 2*fileMenu.width * partition; height: fileMenu.height + anchors.right:parent.right + color:"transparent" + + Column { + anchors.centerIn: parent + spacing: parent.height /640 + FileDialog{ + id:fileDialog + height: 2*dialogContainer.height * partition; width: dialogContainer.width + onSelectChanged: textInput.text = selectedFile + } + + Rectangle{ + id:lowerPartition + height: dialogContainer.height * partition; width: dialogContainer.width + color: "transparent" + + Rectangle{ + id: nameField + gradient: Gradient{ + GradientStop { position: 0.0; color: "#806F6F6F" } + GradientStop { position: 1.0; color: "#136F6F6F" } + } + + radius: 10 + anchors {centerIn:parent; leftMargin: 15; rightMargin: 15; topMargin: 15} + height: parent.height-15; width: parent.width -20 + border {color:"#4A4A4A"; width:1} + + TextInput{ + id: textInput + z:2 + anchors {bottom: parent.bottom; topMargin: 10; horizontalCenter:parent.horizontalCenter} + width: parent.width - 10 + height: parent.height -10 + font.pointSize: 40 + color:"lightsteelblue" + focus:true + } + Text{ + id: textInstruction + anchors.centerIn:parent + text: "Select file name and press save or load" + font {pointSize: 11; weight:Font.Light; italic: true} + color: "lightblue" + z:2 + opacity: (textInput.text == "") ? 1: 0 + } + Text{ + id:fieldLabel + anchors {top: parent.top; left: parent.left} + text: " file name: " + font {pointSize: 11; weight: Font.Light; italic: true} + color: "lightblue" + z:2 + } + MouseArea{ + anchors.centerIn:parent + width: nameField.width; height: nameField.height + onClicked:{ + textInput.text = "" + textInput.focus = true + textInput.forceFocus() + } + } + } + } + } + } +} diff --git a/examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml b/examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml new file mode 100644 index 0000000..c387f5f --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml @@ -0,0 +1,148 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle { + id: menuBar + width: 1000; height:300 + color:"transparent" + property color fileColor: "plum" + property color editColor: "powderblue" + + property real partition: 1/10 + + Column{ + anchors.fill: parent + //container for the header and the buttons + z: 1 + Rectangle{ + id: labelList + height:menuBar.height*partition + width: menuBar.width + color: "beige" + gradient: Gradient { + GradientStop { position: 0.0; color: "#8C8F8C" } + GradientStop { position: 0.17; color: "#6A6D6A" } + GradientStop { position: 0.98;color: "#3F3F3F" } + GradientStop { position: 1.0; color: "#0e1B20" } + } + Text{ + height: parent.height + anchors {right: labelRow.left ; verticalCenter: parent.bottom} + text: "menu: " + color: "lightblue" + font {weight: Font.Light; italic: true} + smooth: true + } + + //row displays its children in a vertical row + Row{ + id: labelRow + anchors.centerIn: parent + spacing:40 + Button{ + id: fileButton + height: 20; width: 50 + label: "File" + buttonColor : menuListView.currentIndex == 0? fileColor : Qt.darker(fileColor, 1.5) + scale: menuListView.currentIndex == 0? 1.25: 1 + labelSize: menuListView.currentIndex == 0? 16:12 + radius: 1 + smooth:true + //on a button click, change the list's currently selected item to FileMenu + onButtonClick: menuListView.currentIndex = 0 + gradient: Gradient{ + GradientStop { position: 0.0; color: fileColor } + GradientStop { position: 1.0; color: "#136F6F6F" } + } + } + Button{ + id: editButton + height: 20; width: 50 + buttonColor : menuListView.currentIndex == 1? Qt.darker(editColor, 1.5) : Qt.darker(editColor, 1.9) + scale: menuListView.currentIndex == 1? 1.25: 1 + label: "Edit" + radius: 1 + labelSize: menuListView.currentIndex == 1? 16:12 + smooth:true + //on a button click, change the list's currently selected item to EditMenu + onButtonClick: menuListView.currentIndex = 1 + gradient: Gradient{ + GradientStop { position: 0.0; color: editColor } + GradientStop { position: 1.0; color: "#136F6F6F" } + } + } + } + } + + //list view will display a model according to a delegate + ListView{ + id: menuListView + width:menuBar.width; height: 9*menuBar.height*partition + + //the model contains the data + model: menuListModel + + //control the movement of the menu switching + snapMode: ListView.SnapOneItem + orientation: ListView.Horizontal + boundsBehavior: Flickable.StopAtBounds + flickDeceleration: 5000 + highlightFollowsCurrentItem: true + highlightMoveDuration:240 + highlightRangeMode: ListView.StrictlyEnforceRange + } + } + //a list of visual items already have delegates handling their display + VisualItemModel{ + id: menuListModel + + FileMenu{ + id:fileMenu + width: menuListView.width; height: menuListView.height + color: fileColor + } + EditMenu{ + color: editColor + width: menuListView.width; height: menuListView.height + } + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/TextArea.qml b/examples/tutorials/gettingStarted/gsQml/core/TextArea.qml new file mode 100644 index 0000000..3953d9f --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/TextArea.qml @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle{ + id:textArea + + function paste(){ textEdit.paste()} + function copy() { textEdit.copy() } + function selectAll() { textEdit.selectAll() } + + width :400; height:400 + + property color fontColor: "white" + property alias textContent: textEdit.text + Flickable{ + id: flickArea + width: parent.width; height: parent.height + anchors.fill:parent + + boundsBehavior: Flickable.StopAtBounds + flickableDirection: Flickable.HorizontalFlick + interactive: true + //Will move the text Edit area to make the area visible when scrolled with keyboard strokes + function ensureVisible(r){ + if (contentX >= r.x) + contentX = r.x; + else if (contentX+width <= r.x+r.width) + contentX = r.x+r.width-width; + if (contentY >= r.y) + contentY = r.y; + else if (contentY+height <= r.y+r.height) + contentY = r.y+r.height-height; + } + + TextEdit{ + id: textEdit + anchors.fill:parent + width:parent.width; height:parent.height + color:fontColor + focus: true + wrapMode: TextEdit.Wrap + font.pointSize:10 + onCursorRectangleChanged: flickArea.ensureVisible(cursorRectangle) + selectByMouse: true + } + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/qmldir b/examples/tutorials/gettingStarted/gsQml/core/qmldir new file mode 100644 index 0000000..1beb5ed --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/qmldir @@ -0,0 +1,48 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +Button ./Button.qml +FileDialog ./FileDialog.qml +TextArea ./TextArea.qml +TextEditor ./TextEditor.qml +EditMenu ./EditMenu.qml +MenuBar ./MenuBar.qml + +plugin FileDialog ../plugins diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro b/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro new file mode 100644 index 0000000..6247747 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro @@ -0,0 +1,17 @@ +TEMPLATE = lib +CONFIG += qt plugin +QT += declarative + +DESTDIR += ../plugins +OBJECTS_DIR = tmp +MOC_DIR = tmp + +TARGET = FileDialog + +HEADERS += directory.h \ + file.h \ + dialogPlugin.h + +SOURCES += directory.cpp \ + file.cpp \ + dialogPlugin.cpp diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp new file mode 100644 index 0000000..c0132c0 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "dialogPlugin.h" +#include "directory.h" +#include "file.h" +#include <QtDeclarative/qdeclarative.h> + +void DialogPlugin::registerTypes(const char *uri){ + + //register the class Directory into QML as a "Directory" element version 1.0 + qmlRegisterType<Directory>(uri, 1, 0, "Directory"); + qmlRegisterType<File>(uri,1,0,"File"); + + //qRegisterMetaType<QDeclarativeListProperty<QString> > ("QDeclarativeListProperty<QString>"); + +} + +//FileDialog is the plugin name (same as the TARGET in the project file) and DialogPlugin is the plugin classs +Q_EXPORT_PLUGIN2(FileDialog, DialogPlugin); \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h new file mode 100644 index 0000000..7f8d3ff --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef DIALOGPLUGIN_H +#define DIALOGPLUGIN_H + +#include <QtDeclarative/QDeclarativeExtensionPlugin> + +class DialogPlugin : public QDeclarativeExtensionPlugin +{ + Q_OBJECT + + public: + //registerTypes is inherited from QDeclarativeExtensionPlugin + void registerTypes(const char *uri); + +}; + +#endif + diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp new file mode 100644 index 0000000..b3e0256 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp @@ -0,0 +1,219 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "directory.h" +#include <QDebug> + +/* +Directory constructor + +Initialize the saves directory and creates the file list +*/ +Directory::Directory(QObject *parent) : QObject(parent) +{ + + + m_dir.cd( QDir::currentPath()); + + //go to the saved directory. if not found, create save directory + m_saveDir = "saves"; + if (m_dir.cd(m_saveDir) == 0){ + m_dir.mkdir(m_saveDir); + m_dir.cd(m_saveDir); + } + m_filterList << "*.txt"; + + refresh(); +} + +/* +Directory::filesNumber +Return the number of Files +*/ +int Directory:: filesCount() const{ + return m_fileList.size(); +} + +/* +Function called to append data onto list property +*/ +void appendFiles(QDeclarativeListProperty<File> * property, File * file){ + //Do nothing. can't add to a directory using this method +} + +/* +Function called to retrieve file in the list using an index +*/ +File* fileAt(QDeclarativeListProperty<File> * property, int index){ + return static_cast< QList<File *> *>(property->data)->at(index); +} + +/* +Returns the number of files in the list +*/ +int filesSize(QDeclarativeListProperty<File> * property){ + return static_cast< QList<File *> *>(property->data)->size(); +} + +/* +Function called to empty the list property contents +*/ +void clearFilesPtr(QDeclarativeListProperty<File> *property){ + return static_cast< QList<File *> *>(property->data)->clear(); +} + +/* +Returns the list of files as a QDeclarativeListProperty. +*/ +QDeclarativeListProperty<File> Directory::files(){ + + refresh(); +// return QDeclarativeListProperty<QString>(this,m_filePtrList); //not recommended in the docs + return QDeclarativeListProperty<File>( this, &m_fileList, &appendFiles, &filesSize, &fileAt, &clearFilesPtr ); +} + +/* +Return te name of the currently selected file +*/ +QString Directory::filename() const{ + return currentFile.name(); +} + +/* +Return the file's content as a string. +*/ +QString Directory::fileContent() const{ + return m_fileContent; +} + +/* +Set the file name of the current file +*/ +void Directory::setFilename(const QString &str){ + if(str != currentFile.name()){ + currentFile.setName(str); + emit filenameChanged(); + } +} + +/* +Set the content of the file as a string +*/ +void Directory::setFileContent(const QString &str){ + if(str != m_fileContent){ + m_fileContent = str; + emit fileContentChanged(); + } +} + +/* +Called from QML to save the file using the filename and file content. +Saving makes sure that the file has a .txt extension. +*/ +void Directory::saveFile(){ + + if(currentFile.name().size() == 0){ + qWarning()<< "Empty filename. no save"; + return; + } + + QString extendedName = currentFile.name(); + if(!currentFile.name().endsWith(".txt")){ + extendedName.append(".txt"); + } + + QFile file( m_dir.filePath(extendedName) ); + if (file.open(QFile::WriteOnly | QFile::Truncate)){ + QTextStream outStream(&file); + outStream << m_fileContent; + } + file.close(); + refresh(); + emit directoryChanged(); +} + +/* +Load the contents of a file. +Only loads files with a .txt extension +*/ +void Directory::loadFile(){ + + m_fileContent.clear(); + QString extendedName = currentFile.name(); + if(!currentFile.name().endsWith(".txt")){ + extendedName.append(".txt"); + } + + QFile file( m_dir.filePath(extendedName) ); + if (file.open(QFile::ReadOnly )){ + QTextStream inStream(&file); + + QString line; + do{ + line = inStream.read(75); + m_fileContent.append(line); + }while (!line .isNull()); + } + file.close(); +} + +/* +Reloads the content of the files list. This is to ensure that the newly +created files are added onto the list. +*/ +void Directory::refresh(){ + m_dirFiles = m_dir.entryList(m_filterList,QDir::Files,QDir::Name); + m_fileList.clear(); + + File * file; + for(int i = 0; i < m_dirFiles.size() ; i ++){ + + file = new File(); + + if(m_dirFiles.at(i).endsWith(".txt")){ + QString name = m_dirFiles.at(i); + file->setName( name.remove(".txt",Qt::CaseSensitive)); + } + else{ + file->setName(m_dirFiles.at(i)); + } + m_fileList.append(file); + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h new file mode 100644 index 0000000..bef1a93 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef DIRECTORY_H +#define DIRECTORY_H + +#include "file.h" + +#include <QDir> +#include <QStringList> +#include <QTextStream> +#include <QDeclarativeListProperty> +#include <QObject> + +class Directory : public QObject{ + + Q_OBJECT + + //number of files in the directory + Q_PROPERTY(int filesCount READ filesCount) + + //list property containing file names as QString + Q_PROPERTY(QDeclarativeListProperty<File> files READ files CONSTANT ) + + //file name of the text file to read/write + Q_PROPERTY(QString filename READ filename WRITE setFilename NOTIFY filenameChanged) + + //text content of the file + Q_PROPERTY(QString fileContent READ fileContent WRITE setFileContent NOTIFY fileContentChanged) + + public: + Directory(QObject *parent = 0); + + //properties' read functions + int filesCount() const; + QString filename() const; + QString fileContent() const; + QDeclarativeListProperty<File> files(); + + //properties' write functions + void setFilename(const QString &str); + void setFileContent(const QString &str); + + //accessible from QML + Q_INVOKABLE void saveFile(); + Q_INVOKABLE void loadFile(); + + signals: + void directoryChanged(); + void filenameChanged(); + void fileContentChanged(); + + private: + QDir m_dir; + QStringList m_dirFiles; + File currentFile; + QString m_saveDir; + QStringList m_filterList; + + //contains the file data in QString format + QString m_fileContent; + + //Registered to QML in a plugin. Accessible from QML as a property of Directory + QList<File *> m_fileList; + + //refresh content of the directory + void refresh(); +}; + + +#endif diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp new file mode 100644 index 0000000..39a7469 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include "file.h" + +File::File(QObject *parent) : QObject(parent) +{ + m_name = ""; +} + +QString File::name() const{ + return m_name; +} +void File::setName(const QString &str){ + if(str != m_name){ + m_name = str; + emit nameChanged(); + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/file.h b/examples/tutorials/gettingStarted/gsQml/filedialog/file.h new file mode 100644 index 0000000..e4ba429 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/file.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef FILE_H +#define FILE_H + + +#include <QString> +#include <QObject> + +class File : public QObject{ + + Q_OBJECT + + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + + public: + File(QObject *parent = 0); + + QString name() const; + void setName(const QString &str); + + signals: + void nameChanged(); + + private: + QString m_name; +}; + +#endif \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir b/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir new file mode 100644 index 0000000..c2b27da --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir @@ -0,0 +1 @@ +plugin FileDialog plugins diff --git a/examples/tutorials/gettingStarted/gsQml/images/arrow.png b/examples/tutorials/gettingStarted/gsQml/images/arrow.png new file mode 100644 index 0000000..14978c2 Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/images/arrow.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/images/qt-logo.png b/examples/tutorials/gettingStarted/gsQml/images/qt-logo.png new file mode 100644 index 0000000..14ddf2a Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/images/qt-logo.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png new file mode 100644 index 0000000..27feed5 Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png new file mode 100644 index 0000000..4d8f9f2 Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png new file mode 100644 index 0000000..680acfe Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png differ -- cgit v0.12 From d4dceca5dcd9252e09a421b65b318a7178049cd1 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Thu, 5 Aug 2010 11:51:23 +0200 Subject: qdoc: Cleaned up the application option specification and use. The flags allowed on the command line are now: -online (default), -base, -assistant (same as -base), and -creator. If you don't specify one of these, you see a warning in the error output telling you that it didn't find an application flag and that it generated online docs by defualt. --- tools/qdoc3/config.h | 4 +- tools/qdoc3/ditaxmlgenerator.cpp | 1 - tools/qdoc3/htmlgenerator.cpp | 127 +++++++++++++++++++-------------------- tools/qdoc3/htmlgenerator.h | 9 ++- tools/qdoc3/main.cpp | 70 +++++++++------------ 5 files changed, 95 insertions(+), 116 deletions(-) diff --git a/tools/qdoc3/config.h b/tools/qdoc3/config.h index 7665f1a..335a0d6 100644 --- a/tools/qdoc3/config.h +++ b/tools/qdoc3/config.h @@ -143,9 +143,7 @@ class Config #define CONFIG_MACRO "macro" #define CONFIG_NATURALLANGUAGE "naturallanguage" #define CONFIG_OBSOLETELINKS "obsoletelinks" -#define CONFIG_ONLINE "online" -#define CONFIG_OFFLINE "offline" -#define CONFIG_CREATOR "creator" +#define CONFIG_APPLICATION "application" #define CONFIG_OUTPUTDIR "outputdir" #define CONFIG_OUTPUTENCODING "outputencoding" #define CONFIG_OUTPUTLANGUAGE "outputlanguage" diff --git a/tools/qdoc3/ditaxmlgenerator.cpp b/tools/qdoc3/ditaxmlgenerator.cpp index 4789c67..816ab9f 100644 --- a/tools/qdoc3/ditaxmlgenerator.cpp +++ b/tools/qdoc3/ditaxmlgenerator.cpp @@ -440,7 +440,6 @@ void DitaXmlGenerator::initializeGenerator(const Config &config) DITAXMLGENERATOR_GENERATEMACREFS); project = config.getString(CONFIG_PROJECT); - offlineDocs = !config.getBool(CONFIG_ONLINE); projectDescription = config.getString(CONFIG_DESCRIPTION); if (projectDescription.isEmpty() && !project.isEmpty()) projectDescription = project + " Reference Documentation"; diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index 723f516..b1a8336 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -219,9 +219,7 @@ HtmlGenerator::HtmlGenerator() inTableHeader(false), numTableRows(0), threeColumnEnumValueTable(true), - offlineDocs(false), - onlineDocs(false), - creatorDocs(true), + application(Online), funcLeftParen("\\S(\\()"), myTree(0), slow(false), @@ -290,11 +288,17 @@ void HtmlGenerator::initializeGenerator(const Config &config) project = config.getString(CONFIG_PROJECT); - onlineDocs = config.getBool(CONFIG_ONLINE); - - offlineDocs = config.getBool(CONFIG_OFFLINE); - - creatorDocs = config.getBool(CONFIG_CREATOR); + QString app = config.getString(CONFIG_APPLICATION); + if (app == "online") + application = Online; + else if (app == "creator") + application = Creator; + else if (app == "assistant") + application = Assistant; + else if (app == "base") + application = Assistant; + else + application = Online; projectDescription = config.getString(CONFIG_DESCRIPTION); if (projectDescription.isEmpty() && !project.isEmpty()) @@ -1811,9 +1815,8 @@ void HtmlGenerator::generateHeader(const QString& title, // Setting some additional style sheet related details depending on configuration (e.g. online/offline) - - if(onlineDocs==true) // onlineDocs is for the web - { + switch (application) { + case Online: // Browser spec styles out() << " <!--[if IE]>\n"; out() << "<meta name=\"MSSmartTagsPreventParsing\" content=\"true\">\n"; @@ -1832,22 +1835,19 @@ void HtmlGenerator::generateHeader(const QString& title, out() << "</head>\n"; // CheckEmptyAndLoadList activating search out() << "<body class=\"\" onload=\"CheckEmptyAndLoadList();\">\n"; - } - else if (offlineDocs == true) // offlineDocs is for ??? - { + break; + case Assistant: out() << "</head>\n"; - out() << "<body class=\"offline \">\n"; // offline - } - else if (creatorDocs == true) // creatorDocs is for Assistant/Creator - { + out() << "<body class=\"offline \">\n"; + break; + case Creator: out() << "</head>\n"; out() << "<body class=\"offline narrow creator\">\n"; // offline narrow - } - // default -- not used except if one forgets to set any of the above settings to true - else - { + break; + default: out() << "</head>\n"; - out() << "<body>\n"; + out() << "<body>\n"; + break; } #ifdef GENERATE_MAC_REFS @@ -1855,31 +1855,27 @@ void HtmlGenerator::generateHeader(const QString& title, generateMacRef(node, marker); #endif - - if(onlineDocs==true) // onlineDocs is for the web - { + switch (application) { + case Online: out() << QString(postHeader).replace("\\" + COMMAND_VERSION, myTree->version()); generateBreadCrumbs(title,node,marker); out() << QString(postPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); - } - else if (offlineDocs == true) // offlineDocs is for ??? - { + break; + case Assistant: out() << QString(creatorPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); generateBreadCrumbs(title,node,marker); - out() << QString(creatorPostPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); - } - else if (creatorDocs == true) // creatorDocs is for Assistant/Creator - { + out() << QString(creatorPostPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); + break; + case Creator: out() << QString(creatorPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); generateBreadCrumbs(title,node,marker); out() << QString(creatorPostPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); - } - // default -- not used except if one forgets to set any of the above settings to true - else - { + break; + default: // default -- not used except if one forgets to set any of the above settings to true out() << QString(creatorPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); generateBreadCrumbs(title,node,marker); - out() << QString(creatorPostPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); + out() << QString(creatorPostPostHeader).replace("\\" + COMMAND_VERSION, myTree->version()); + break; } #if 0 // Removed for new doc format. MWS @@ -1914,34 +1910,33 @@ void HtmlGenerator::generateFooter(const Node *node) out() << QString(footer).replace("\\" + COMMAND_VERSION, myTree->version()) << QString(address).replace("\\" + COMMAND_VERSION, myTree->version()); - - if (onlineDocs == true) - { - out() << " <script src=\"scripts/functions.js\" type=\"text/javascript\"></script>\n"; - out() << " <!-- <script type=\"text/javascript\">\n"; - out() << " var _gaq = _gaq || [];\n"; - out() << " _gaq.push(['_setAccount', 'UA-4457116-5']);\n"; - out() << " _gaq.push(['_trackPageview']);\n"; - out() << " (function() {\n"; - out() << " var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\n"; - out() << " ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\n"; - out() << " var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\n"; - out() << " })();\n"; - out() << " </script> -->\n"; - out() << "</body>\n"; - } - else if (offlineDocs == true) - { - out() << "</body>\n"; - } - else if (creatorDocs == true) - { - out() << "</body>\n"; - } - else - { - out() << "</body>\n"; - } + + switch (application) { + case Online: + out() << " <script src=\"scripts/functions.js\" type=\"text/javascript\"></script>\n"; + out() << " <!-- <script type=\"text/javascript\">\n"; + out() << " var _gaq = _gaq || [];\n"; + out() << " _gaq.push(['_setAccount', 'UA-4457116-5']);\n"; + out() << " _gaq.push(['_trackPageview']);\n"; + out() << " (function() {\n"; + out() << " var ga = document.createElement('script'); "; + out() << "ga.type = 'text/javascript'; ga.async = true;\n"; + out() << " ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + "; + out() << "'.google-analytics.com/ga.js';\n"; + out() << " var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\n"; + out() << " })();\n"; + out() << " </script> -->\n"; + out() << "</body>\n"; + break; + case Assistant: + out() << "</body>\n"; + break; + case Creator: + out() << "</body>\n"; + break; + default: + out() << "</body>\n"; + } out() << "</html>\n"; } diff --git a/tools/qdoc3/htmlgenerator.h b/tools/qdoc3/htmlgenerator.h index d92c349..ec79896 100644 --- a/tools/qdoc3/htmlgenerator.h +++ b/tools/qdoc3/htmlgenerator.h @@ -95,6 +95,11 @@ class HtmlGenerator : public PageGenerator LastSinceType }; + enum Application { + Online, + Assistant, + Creator}; + public: HtmlGenerator(); ~HtmlGenerator(); @@ -294,9 +299,7 @@ class HtmlGenerator : public PageGenerator bool inTableHeader; int numTableRows; bool threeColumnEnumValueTable; - bool onlineDocs; - bool offlineDocs; - bool creatorDocs; + Application application; QString link; QStringList sectionNumber; QRegExp funcLeftParen; diff --git a/tools/qdoc3/main.cpp b/tools/qdoc3/main.cpp index 47a4b67..38b76a4 100644 --- a/tools/qdoc3/main.cpp +++ b/tools/qdoc3/main.cpp @@ -105,8 +105,7 @@ static bool showInternal = false; static bool obsoleteLinks = false; static QStringList defines; static QHash<QString, Tree *> trees; -static QString application = "base"; //application -static bool applicationArg = 0; //if 1, then the argument is provided and it will override the qdocconf file +static QString appArg; // application /*! Find the Tree for language \a lang and return a pointer to it. @@ -194,36 +193,25 @@ static void processQdocconfFile(const QString &fileName) config.load(fileName); /* - Set the application to which qdoc will create the output. - The three applications are: - base: simple, basic html output. Best suited for offline viewing - creator: additional formatting. - online: full-featured online version with search and links to Qt topics - - Note: This will override the offline, online, creator defines. + Set the application to which qdoc will create the output. + The three applications are: + + base or assistant: simple, basic html output + for offline viewing in the Assistant application. + + creator: additional formatting for viewing in + the Creator application. + + online: full-featured online version with search and + links to Qt topics */ - if(applicationArg == false){ - - QString appConfig = config.getString(CONFIG_APPLICATION); - if (!appConfig.isEmpty()){ - application = appConfig; - } - } - if(application == "online"){ - config.setStringList(CONFIG_ONLINE, QStringList("true")); - config.setStringList(CONFIG_OFFLINE, QStringList("false")); - config.setStringList(CONFIG_CREATOR, QStringList("false")); - } - else if(application == "creator"){ - config.setStringList(CONFIG_ONLINE, QStringList("false")); - config.setStringList(CONFIG_OFFLINE, QStringList("true")); - config.setStringList(CONFIG_CREATOR, QStringList("false")); - } - else if(application == "base"){ - config.setStringList(CONFIG_ONLINE, QStringList("false")); - config.setStringList(CONFIG_OFFLINE, QStringList("false")); - config.setStringList(CONFIG_CREATOR, QStringList("true")); + if (appArg.isEmpty()) { + qDebug() << "Warning: Application flag not specified on" + << "command line. Options are -assistant, -creator," + << "and -online (default)."; + appArg = "online"; } + config.setStringList(CONFIG_APPLICATION, QStringList(appArg)); /* Add the defines to the configuration variables. @@ -496,18 +484,14 @@ int main(int argc, char **argv) else if (opt == "-obsoletelinks") { obsoleteLinks = true; } - else if (opt == "-base") { - application = "base"; - applicationArg = true; - } - else if (opt == "-creator") { - application = "creator"; - applicationArg = true; - } - else if (opt == "-online") { - application = "online"; - applicationArg = true; - } + else if (opt == "-base") + appArg = "base"; + else if (opt == "-assistant") + appArg = "assistant"; + else if (opt == "-creator") + appArg = "creator"; + else if (opt == "-online") + appArg = "online"; else { qdocFiles.append(opt); } @@ -522,7 +506,7 @@ int main(int argc, char **argv) Main loop. */ foreach (QString qf, qdocFiles) { - qDebug() << "PROCESSING:" << qf; + //qDebug() << "PROCESSING:" << qf; processQdocconfFile(qf); } -- cgit v0.12 From 7de8a0c487ce6a7f13c2028e93648807ef7d8e8b Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Thu, 5 Aug 2010 12:09:01 +0200 Subject: qdoc: Removed three unused config variables. These no longer do anything in qdocconf files: online = false offline = false creator = true --- tools/qdoc3/test/assistant.qdocconf | 3 --- tools/qdoc3/test/designer.qdocconf | 3 --- tools/qdoc3/test/linguist.qdocconf | 3 --- tools/qdoc3/test/qdeclarative.qdocconf | 3 --- tools/qdoc3/test/qmake.qdocconf | 3 --- tools/qdoc3/test/qt-api-only.qdocconf | 3 --- tools/qdoc3/test/qt-build-docs.qdocconf | 3 --- tools/qdoc3/test/qt.qdocconf | 3 --- 8 files changed, 24 deletions(-) diff --git a/tools/qdoc3/test/assistant.qdocconf b/tools/qdoc3/test/assistant.qdocconf index 119a676..8cf5722 100644 --- a/tools/qdoc3/test/assistant.qdocconf +++ b/tools/qdoc3/test/assistant.qdocconf @@ -7,9 +7,6 @@ include(qt-defines.qdocconf) project = Qt Assistant description = Qt Assistant Manual url = http://qt.nokia.com/doc/4.7 -online = false -offline = false -creator = true indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index diff --git a/tools/qdoc3/test/designer.qdocconf b/tools/qdoc3/test/designer.qdocconf index 0595417..b1f37dc 100644 --- a/tools/qdoc3/test/designer.qdocconf +++ b/tools/qdoc3/test/designer.qdocconf @@ -7,9 +7,6 @@ include(qt-defines.qdocconf) project = Qt Designer description = Qt Designer Manual url = http://qt.nokia.com/doc/4.7 -online = false -offline = false -creator = true indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index diff --git a/tools/qdoc3/test/linguist.qdocconf b/tools/qdoc3/test/linguist.qdocconf index 7dd57fb..26fb55c 100644 --- a/tools/qdoc3/test/linguist.qdocconf +++ b/tools/qdoc3/test/linguist.qdocconf @@ -7,9 +7,6 @@ include(qt-defines.qdocconf) project = Qt Linguist description = Qt Linguist Manual url = http://qt.nokia.com/doc/4.7 -online = false -offline = false -creator = true indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index diff --git a/tools/qdoc3/test/qdeclarative.qdocconf b/tools/qdoc3/test/qdeclarative.qdocconf index 7628519..80bca29 100644 --- a/tools/qdoc3/test/qdeclarative.qdocconf +++ b/tools/qdoc3/test/qdeclarative.qdocconf @@ -8,9 +8,6 @@ project = Qml description = Qml Reference Documentation url = http://qt.nokia.com/doc/4.7/ qmlonly = true -online = false -offline = false -creator = true edition.Console.modules = QtCore QtDBus QtNetwork QtScript QtSql QtXml \ QtXmlPatterns QtTest diff --git a/tools/qdoc3/test/qmake.qdocconf b/tools/qdoc3/test/qmake.qdocconf index c666288..f069129 100644 --- a/tools/qdoc3/test/qmake.qdocconf +++ b/tools/qdoc3/test/qmake.qdocconf @@ -7,9 +7,6 @@ include(qt-defines.qdocconf) project = QMake description = QMake Manual url = http://qt.nokia.com/doc/4.7 -online = false -offline = false -creator = true indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index diff --git a/tools/qdoc3/test/qt-api-only.qdocconf b/tools/qdoc3/test/qt-api-only.qdocconf index 7387810..cdd7a7c 100644 --- a/tools/qdoc3/test/qt-api-only.qdocconf +++ b/tools/qdoc3/test/qt-api-only.qdocconf @@ -5,9 +5,6 @@ include(qt-build-docs.qdocconf) # qmake.qdocconf). url = ./ -online = false -offline = false -creator = true # Ensures that the documentation for the tools is not included in the generated # .qhp file. diff --git a/tools/qdoc3/test/qt-build-docs.qdocconf b/tools/qdoc3/test/qt-build-docs.qdocconf index 415457e..bb47b57 100644 --- a/tools/qdoc3/test/qt-build-docs.qdocconf +++ b/tools/qdoc3/test/qt-build-docs.qdocconf @@ -7,9 +7,6 @@ include(qt-defines.qdocconf) project = Qt description = Qt Reference Documentation url = http://qt.nokia.com/doc/4.7 -online = false -offline = false -creator = true sourceencoding = UTF-8 outputencoding = UTF-8 diff --git a/tools/qdoc3/test/qt.qdocconf b/tools/qdoc3/test/qt.qdocconf index a5e6578..f78bd38 100644 --- a/tools/qdoc3/test/qt.qdocconf +++ b/tools/qdoc3/test/qt.qdocconf @@ -9,9 +9,6 @@ versionsym = version = %VERSION% description = Qt Reference Documentation url = http://qt.nokia.com/doc/4.7 -online = true -offline = false -creator = false sourceencoding = UTF-8 outputencoding = UTF-8 -- cgit v0.12 From f3f95d4282ffbfb307e98d20a166ced4cc982061 Mon Sep 17 00:00:00 2001 From: Peter Hartmann <peter.hartmann@nokia.com> Date: Tue, 22 Jun 2010 13:53:03 +0200 Subject: QXmlPatterns QAbstractDateTime: only parse 3 digits of time fraction the XML Schema dateTime type allows for an unlimited precision of fractial time values; this fails for 4 or more digits when creating a QTime. This patch takes only 3 digits of the time fraction into account, since we cannot store more in a QTime or QDateTime anyway. Reviewed-by: Olivier Goffart Task-number: QTBUG-11559 --- src/xmlpatterns/data/qabstractdatetime.cpp | 2 +- .../files/dateTime-with-microseconds.xml | 1 + .../files/dateTime-with-microseconds.xsd | 12 ++++++++++++ tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp | 6 ++++++ 4 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xml create mode 100644 tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xsd diff --git a/src/xmlpatterns/data/qabstractdatetime.cpp b/src/xmlpatterns/data/qabstractdatetime.cpp index 6329fbe..a298698 100644 --- a/src/xmlpatterns/data/qabstractdatetime.cpp +++ b/src/xmlpatterns/data/qabstractdatetime.cpp @@ -163,7 +163,7 @@ QDateTime AbstractDateTime::create(AtomicValue::Ptr &errorMessage, QString msecondsStr(getSafeCapt(mseconds)); if(!msecondsStr.isEmpty()) - msecondsStr = msecondsStr.leftJustified(3, QLatin1Char('0')); + msecondsStr = msecondsStr.leftJustified(3, QLatin1Char('0'), true); const MSecondProperty msecs = msecondsStr.toInt(); if(hour == 24) diff --git a/tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xml b/tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xml new file mode 100644 index 0000000..b17739a --- /dev/null +++ b/tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xml @@ -0,0 +1 @@ +<date>2009-12-16T23:14:10.823218Z</date> diff --git a/tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xsd b/tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xsd new file mode 100644 index 0000000..55557f1 --- /dev/null +++ b/tests/auto/xmlpatternsvalidator/files/dateTime-with-microseconds.xsd @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + + <xsd:element name="date" type="xsd:dateTime"/> + + <xsd:simpleType name="microsecondsType"> + <xsd:restriction base="xsd:dateTime"> + <xsd:pattern value="\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d\.\d\d\d\d\d\dZ"/> + </xsd:restriction> + </xsd:simpleType> + +</xsd:schema> diff --git a/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp b/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp index 3517b5a..092e966 100644 --- a/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp +++ b/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp @@ -216,6 +216,12 @@ void tst_XmlPatternsValidator::xsdSupport_data() const << 0 << (QStringList() << QLatin1String("files/complex-type-including-anonymous-type.xsd")) << QString(); + + QTest::newRow("QTBUG-11559 A schema and instance with a dateTime containing microseconds") + << 0 + << (QStringList() << QLatin1String("files/dateTime-with-microseconds.xml") + << QLatin1String("files/dateTime-with-microseconds.xsd")) + << QString(); } QTEST_MAIN(tst_XmlPatternsValidator) -- cgit v0.12 From 637d207e397c13c09a8dcbd718ee85bce2548e90 Mon Sep 17 00:00:00 2001 From: Frank Osterfeld <frank@kdab.net> Date: Thu, 5 Aug 2010 13:42:58 +0200 Subject: QDom: Do not crash on "<a:>text</a:>" "a:" is not a valid tagname. The function creating the element node notices that and returns 0, but the parser ignores it and continues, and then crashes later when processing the "text". This patch aborts the parsing immediately when creating the element node failed and fixes the crash. Merge-request: 2431 Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com> --- src/xml/dom/qdom.cpp | 6 ++++-- tests/auto/qdom/tst_qdom.cpp | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/xml/dom/qdom.cpp b/src/xml/dom/qdom.cpp index 1267e7e..662c796 100644 --- a/src/xml/dom/qdom.cpp +++ b/src/xml/dom/qdom.cpp @@ -7418,8 +7418,10 @@ bool QDomHandler::startElement(const QString& nsURI, const QString&, const QStri n = doc->createElement(qName); } - if (n) - n->setLocation(locator->lineNumber(), locator->columnNumber()); + if (!n) + return false; + + n->setLocation(locator->lineNumber(), locator->columnNumber()); node->appendChild(n); node = n; diff --git a/tests/auto/qdom/tst_qdom.cpp b/tests/auto/qdom/tst_qdom.cpp index 0f6cdaa..8bf7620 100644 --- a/tests/auto/qdom/tst_qdom.cpp +++ b/tests/auto/qdom/tst_qdom.cpp @@ -1776,6 +1776,7 @@ void tst_QDom::crashInSetContent() const QDomImplementation::setInvalidDataPolicy(QDomImplementation::ReturnNullNode); QDomDocument docImport; + QCOMPARE(docImport.setContent(QLatin1String("<a:>text</a:>"), true), false); QVERIFY(docImport.setContent(QLatin1String("<?xml version=\"1.0\"?><e/>"))); } -- cgit v0.12 From 15505360dc8e8b8f1343bba6fd3e5a9c95718d30 Mon Sep 17 00:00:00 2001 From: Benjamin Poulain <benjamin.poulain@nokia.com> Date: Thu, 5 Aug 2010 13:43:19 +0200 Subject: Replace the SSE prologues by a macro Replace the code of the SSE prologue by a macro to avoid copying the prologue everywhere. Reviewed-by: Andreas Kling --- src/corelib/tools/qsimd_p.h | 4 +++- src/gui/painting/qdrawhelper_sse2.cpp | 14 ++++---------- src/gui/painting/qdrawingprimitive_sse2_p.h | 8 ++------ 3 files changed, 9 insertions(+), 17 deletions(-) diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h index 5ff0f97..a3148fb 100644 --- a/src/corelib/tools/qsimd_p.h +++ b/src/corelib/tools/qsimd_p.h @@ -150,7 +150,9 @@ enum CPUFeatures { Q_CORE_EXPORT uint qDetectCPUFeatures(); -Q_CORE_EXPORT uint qDetectCPUFeatures(); + +#define ALIGNMENT_PROLOGUE_16BYTES(ptr, i, length) \ + for (; i < static_cast<int>(qMin(static_cast<quintptr>(length), ((4 - ((reinterpret_cast<quintptr>(ptr) >> 2) & 0x3)) & 0x3))); ++i) QT_END_NAMESPACE diff --git a/src/gui/painting/qdrawhelper_sse2.cpp b/src/gui/painting/qdrawhelper_sse2.cpp index 7ab9eda..22c0384 100644 --- a/src/gui/painting/qdrawhelper_sse2.cpp +++ b/src/gui/painting/qdrawhelper_sse2.cpp @@ -112,9 +112,7 @@ void qt_blend_rgb32_on_rgb32_sse2(uchar *destPixels, int dbpl, int x = 0; // First, align dest to 16 bytes: - const int offsetToAlignOn16Bytes = (4 - ((reinterpret_cast<quintptr>(dst) >> 2) & 0x3)) & 0x3; - const int prologLength = qMin(w, offsetToAlignOn16Bytes); - for (; x < prologLength; ++x) { + ALIGNMENT_PROLOGUE_16BYTES(dst, x, w) { quint32 s = src[x]; s = BYTE_MUL(s, const_alpha); dst[x] = INTERPOLATE_PIXEL_255(src[x], const_alpha, dst[x], one_minus_const_alpha); @@ -182,12 +180,10 @@ inline int comp_func_Plus_one_pixel(uint d, const uint s) void QT_FASTCALL comp_func_Plus_sse2(uint *dst, const uint *src, int length, uint const_alpha) { int x = 0; - const int offsetToAlignOn16Bytes = (4 - ((reinterpret_cast<quintptr>(dst) >> 2) & 0x3)) & 0x3; - const int prologLength = qMin(length, offsetToAlignOn16Bytes); if (const_alpha == 255) { // 1) Prologue: align destination on 16 bytes - for (; x < prologLength; ++x) + ALIGNMENT_PROLOGUE_16BYTES(dst, x, length) dst[x] = comp_func_Plus_one_pixel(dst[x], src[x]); // 2) composition with SSE2 @@ -208,7 +204,7 @@ void QT_FASTCALL comp_func_Plus_sse2(uint *dst, const uint *src, int length, uin const __m128i oneMinusConstAlpha = _mm_set1_epi16(one_minus_const_alpha); // 1) Prologue: align destination on 16 bytes - for (; x < prologLength; ++x) + ALIGNMENT_PROLOGUE_16BYTES(dst, x, length) dst[x] = comp_func_Plus_one_pixel_const_alpha(dst[x], src[x], const_alpha, one_minus_const_alpha); const __m128i half = _mm_set1_epi16(0x80); @@ -239,9 +235,7 @@ void QT_FASTCALL comp_func_Source_sse2(uint *dst, const uint *src, int length, u int x = 0; // 1) prologue, align on 16 bytes - const int offsetToAlignOn16Bytes = (4 - ((reinterpret_cast<quintptr>(dst) >> 2) & 0x3)) & 0x3; - const int prologLength = qMin(length, offsetToAlignOn16Bytes); - for (; x < prologLength; ++x) + ALIGNMENT_PROLOGUE_16BYTES(dst, x, length) dst[x] = INTERPOLATE_PIXEL_255(src[x], const_alpha, dst[x], ialpha); // 2) interpolate pixels with SSE2 diff --git a/src/gui/painting/qdrawingprimitive_sse2_p.h b/src/gui/painting/qdrawingprimitive_sse2_p.h index 18355c2..d8f6bf5 100644 --- a/src/gui/painting/qdrawingprimitive_sse2_p.h +++ b/src/gui/painting/qdrawingprimitive_sse2_p.h @@ -143,9 +143,7 @@ QT_BEGIN_NAMESPACE int x = 0; \ \ /* First, get dst aligned. */ \ - const int offsetToAlignOn16Bytes = (4 - ((reinterpret_cast<quintptr>(dst) >> 2) & 0x3)) & 0x3;\ - const int prologLength = qMin(length, offsetToAlignOn16Bytes);\ - for (; x < prologLength; ++x) { \ + ALIGNMENT_PROLOGUE_16BYTES(dst, x, length) { \ uint s = src[x]; \ if (s >= 0xff000000) \ dst[x] = s; \ @@ -202,9 +200,7 @@ QT_BEGIN_NAMESPACE { \ int x = 0; \ \ - const int offsetToAlignOn16Bytes = (4 - ((reinterpret_cast<quintptr>(dst) >> 2) & 0x3)) & 0x3;\ - const int prologLength = qMin(length, offsetToAlignOn16Bytes);\ - for (; x < prologLength; ++x) { \ + ALIGNMENT_PROLOGUE_16BYTES(dst, x, length) { \ quint32 s = src[x]; \ if (s != 0) { \ s = BYTE_MUL(s, const_alpha); \ -- cgit v0.12 From 05bb249c2ad3ee15eb205a806f8546c105683096 Mon Sep 17 00:00:00 2001 From: Jiang Jiang <jiang.jiang@nokia.com> Date: Thu, 5 Aug 2010 11:21:03 +0200 Subject: Fix QTextEngine overflow caused by extremely long text Internally, QTextEngine use int to calculate most of the layout data required. If a string longer than 2^24 is passed into either QTextEngine or classes using it (QStackTextEngine, QPainter, QFontMetrics, etc.), overflow will happen because the memory size required to allocate for layout will become too large for int to handle. This patch will prevent these cases and add error handling mechanism for relevant code. Task-number: QT-3658 Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/gui/text/qtextengine.cpp | 87 ++++++++++++++++++++++++++++++++------------ src/gui/text/qtextengine_p.h | 14 +++++-- src/gui/text/qtextlayout.cpp | 19 +++++++--- 3 files changed, 87 insertions(+), 33 deletions(-) diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp index 439f2a4..5670e29 100644 --- a/src/gui/text/qtextengine.cpp +++ b/src/gui/text/qtextengine.cpp @@ -923,6 +923,13 @@ void QTextEngine::shapeText(int item) const si.width += glyphs.advances_x[i]; } +static inline bool hasCaseChange(const QScriptItem &si) +{ + return si.analysis.flags == QScriptAnalysis::SmallCaps || + si.analysis.flags == QScriptAnalysis::Uppercase || + si.analysis.flags == QScriptAnalysis::Lowercase; +} + #if defined(Q_WS_WINCE) //TODO // set the glyph attributes heuristically. Assumes a 1 to 1 relationship between chars and glyphs // and no reordering. @@ -1050,14 +1057,15 @@ void QTextEngine::shapeTextWithCE(int item) const if (option.useDesignMetrics()) flags |= DesignMetrics; - attributes(); // pre-initialize char attributes + // pre-initialize char attributes + if (! attributes()) + return; const int len = length(item); int num_glyphs = length(item); const QChar *str = layoutData->string.unicode() + si.position; ushort upperCased[256]; - if (si.analysis.flags == QScriptAnalysis::SmallCaps || si.analysis.flags == QScriptAnalysis::Uppercase - || si.analysis.flags == QScriptAnalysis::Lowercase) { + if (hasCaseChange(si)) { ushort *uc = upperCased; if (len > 256) uc = new ushort[len]; @@ -1071,7 +1079,14 @@ void QTextEngine::shapeTextWithCE(int item) const } while (true) { - ensureSpace(num_glyphs); + if (! ensureSpace(num_glyphs)) { + // If str is converted to uppercase/lowercase form with a new buffer, + // we need to delete that buffer before return for error + const ushort *uc = reinterpret_cast<const ushort *>(str); + if (hasCaseChange(si) && uc != upperCased) + delete [] uc; + return; + } num_glyphs = layoutData->glyphLayout.numGlyphs - layoutData->used; QGlyphLayout g = availableGlyphs(&si); @@ -1092,9 +1107,7 @@ void QTextEngine::shapeTextWithCE(int item) const layoutData->used += si.num_glyphs; const ushort *uc = reinterpret_cast<const ushort *>(str); - if ((si.analysis.flags == QScriptAnalysis::SmallCaps || si.analysis.flags == QScriptAnalysis::Uppercase - || si.analysis.flags == QScriptAnalysis::Lowercase) - && uc != upperCased) + if (hasCaseChange(si) && uc != upperCased) delete [] uc; } #endif @@ -1133,8 +1146,7 @@ void QTextEngine::shapeTextWithHarfbuzz(int item) const entire_shaper_item.item.bidiLevel = si.analysis.bidiLevel; HB_UChar16 upperCased[256]; // XXX what about making this 4096, so we don't have to extend it ever. - if (si.analysis.flags == QScriptAnalysis::SmallCaps || si.analysis.flags == QScriptAnalysis::Uppercase - || si.analysis.flags == QScriptAnalysis::Lowercase) { + if (hasCaseChange(si)) { HB_UChar16 *uc = upperCased; if (entire_shaper_item.item.length > 256) uc = new HB_UChar16[entire_shaper_item.item.length]; @@ -1156,17 +1168,24 @@ void QTextEngine::shapeTextWithHarfbuzz(int item) const entire_shaper_item.shaperFlags |= HB_ShaperFlag_UseDesignMetrics; entire_shaper_item.num_glyphs = qMax(layoutData->glyphLayout.numGlyphs - layoutData->used, int(entire_shaper_item.item.length)); - ensureSpace(entire_shaper_item.num_glyphs); + if (! ensureSpace(entire_shaper_item.num_glyphs)) { + if (hasCaseChange(si)) + delete [] const_cast<HB_UChar16 *>(entire_shaper_item.string); + return; + } QGlyphLayout initialGlyphs = availableGlyphs(&si).mid(0, entire_shaper_item.num_glyphs); if (!stringToGlyphs(&entire_shaper_item, &initialGlyphs, font)) { - ensureSpace(entire_shaper_item.num_glyphs); + if (! ensureSpace(entire_shaper_item.num_glyphs)) { + if (hasCaseChange(si)) + delete [] const_cast<HB_UChar16 *>(entire_shaper_item.string); + return; + } initialGlyphs = availableGlyphs(&si).mid(0, entire_shaper_item.num_glyphs); if (!stringToGlyphs(&entire_shaper_item, &initialGlyphs, font)) { // ############ if this happens there's a bug in the fontengine - if ((si.analysis.flags == QScriptAnalysis::SmallCaps || si.analysis.flags == QScriptAnalysis::Uppercase - || si.analysis.flags == QScriptAnalysis::Lowercase) && entire_shaper_item.string != upperCased) + if (hasCaseChange(si) && entire_shaper_item.string != upperCased) delete [] const_cast<HB_UChar16 *>(entire_shaper_item.string); return; } @@ -1231,7 +1250,11 @@ void QTextEngine::shapeTextWithHarfbuzz(int item) const remaining_glyphs -= shaper_item.initialGlyphCount; do { - ensureSpace(glyph_pos + shaper_item.num_glyphs + remaining_glyphs); + if (! ensureSpace(glyph_pos + shaper_item.num_glyphs + remaining_glyphs)) { + if (hasCaseChange(si)) + delete [] const_cast<HB_UChar16 *>(entire_shaper_item.string); + return; + } const QGlyphLayout g = availableGlyphs(&si).mid(glyph_pos); moveGlyphData(g.mid(shaper_item.num_glyphs), g.mid(shaper_item.initialGlyphCount), remaining_glyphs); @@ -1271,8 +1294,7 @@ void QTextEngine::shapeTextWithHarfbuzz(int item) const layoutData->used += si.num_glyphs; - if ((si.analysis.flags == QScriptAnalysis::SmallCaps || si.analysis.flags == QScriptAnalysis::Uppercase) - && entire_shaper_item.string != upperCased) + if (hasCaseChange(si) && entire_shaper_item.string != upperCased) delete [] const_cast<HB_UChar16 *>(entire_shaper_item.string); } @@ -1317,7 +1339,8 @@ const HB_CharAttributes *QTextEngine::attributes() const return (HB_CharAttributes *) layoutData->memory; itemize(); - ensureSpace(layoutData->string.length()); + if (! ensureSpace(layoutData->string.length())) + return NULL; QVarLengthArray<HB_ScriptItem> hbScriptItems(layoutData->items.size()); @@ -1864,7 +1887,10 @@ void QTextEngine::justify(const QScriptLine &line) // don't include trailing white spaces when doing justification int line_length = line.length; - const HB_CharAttributes *a = attributes()+line.from; + const HB_CharAttributes *a = attributes(); + if (! a) + return; + a += line.from; while (line_length && a[line_length-1].whiteSpace) --line_length; // subtract one char more, as we can't justfy after the last character @@ -2045,7 +2071,7 @@ QTextEngine::LayoutData::LayoutData() memory_on_stack = false; used = 0; hasBidi = false; - inLayout = false; + layoutState = LayoutEmpty; haveCharAttributes = false; logClustersPtr = 0; available_glyphs = 0; @@ -2079,7 +2105,7 @@ QTextEngine::LayoutData::LayoutData(const QString &str, void **stack_memory, int } used = 0; hasBidi = false; - inLayout = false; + layoutState = LayoutEmpty; haveCharAttributes = false; } @@ -2090,12 +2116,12 @@ QTextEngine::LayoutData::~LayoutData() memory = 0; } -void QTextEngine::LayoutData::reallocate(int totalGlyphs) +bool QTextEngine::LayoutData::reallocate(int totalGlyphs) { Q_ASSERT(totalGlyphs >= glyphLayout.numGlyphs); if (memory_on_stack && available_glyphs >= totalGlyphs) { glyphLayout.grow(glyphLayout.data(), totalGlyphs); - return; + return true; } int space_charAttributes = sizeof(HB_CharAttributes)*string.length()/sizeof(void*) + 1; @@ -2103,7 +2129,14 @@ void QTextEngine::LayoutData::reallocate(int totalGlyphs) int space_glyphs = QGlyphLayout::spaceNeededForGlyphLayout(totalGlyphs)/sizeof(void*) + 2; int newAllocated = space_charAttributes + space_glyphs + space_logClusters; - Q_ASSERT(newAllocated >= allocated); + // These values can be negative if the length of string/glyphs causes overflow, + // we can't layout such a long string all at once, so return false here to + // indicate there is a failure + if (space_charAttributes < 0 || space_logClusters < 0 || space_glyphs < 0 || newAllocated < allocated) { + layoutState = LayoutFailed; + return false; + } + void **newMem = memory; newMem = (void **)::realloc(memory_on_stack ? 0 : memory, newAllocated*sizeof(void *)); Q_CHECK_PTR(newMem); @@ -2124,6 +2157,7 @@ void QTextEngine::LayoutData::reallocate(int totalGlyphs) glyphLayout.grow(reinterpret_cast<char *>(m), totalGlyphs); allocated = newAllocated; + return true; } // grow to the new size, copying the existing data to the new layout @@ -2155,7 +2189,7 @@ void QTextEngine::freeMemory() } else { layoutData->used = 0; layoutData->hasBidi = false; - layoutData->inLayout = false; + layoutData->layoutState = LayoutEmpty; layoutData->haveCharAttributes = false; } for (int i = 0; i < lines.size(); ++i) { @@ -2314,6 +2348,9 @@ QString QTextEngine::elidedText(Qt::TextElideMode mode, const QFixed &width, int shape(i); HB_CharAttributes *attributes = const_cast<HB_CharAttributes *>(this->attributes()); + if (!attributes) + return QString(); + unsigned short *logClusters = this->logClusters(&si); QGlyphLayout glyphs = shapedGlyphs(&si); @@ -2385,6 +2422,8 @@ QString QTextEngine::elidedText(Qt::TextElideMode mode, const QFixed &width, int return QString(); const HB_CharAttributes *attributes = this->attributes(); + if (!attributes) + return QString(); if (mode == Qt::ElideRight) { QFixed currentWidth; diff --git a/src/gui/text/qtextengine_p.h b/src/gui/text/qtextengine_p.h index e623fa5..4cbe81f 100644 --- a/src/gui/text/qtextengine_p.h +++ b/src/gui/text/qtextengine_p.h @@ -416,6 +416,11 @@ class QTextFormatCollection; class Q_GUI_EXPORT QTextEngine { public: + enum LayoutState { + LayoutEmpty, + InLayout, + LayoutFailed, + }; struct LayoutData { LayoutData(const QString &str, void **stack_memory, int mem_size); LayoutData(); @@ -428,11 +433,11 @@ public: QGlyphLayout glyphLayout; mutable int used; uint hasBidi : 1; - uint inLayout : 1; + uint layoutState : 2; uint memory_on_stack : 1; bool haveCharAttributes; QString string; - void reallocate(int totalGlyphs); + bool reallocate(int totalGlyphs); }; QTextEngine(LayoutData *data); @@ -520,9 +525,10 @@ public: return layoutData->glyphLayout.mid(si->glyph_data_offset, si->num_glyphs); } - inline void ensureSpace(int nGlyphs) const { + inline bool ensureSpace(int nGlyphs) const { if (layoutData->glyphLayout.numGlyphs - layoutData->used < nGlyphs) - layoutData->reallocate((((layoutData->used + nGlyphs)*3/2 + 15) >> 4) << 4); + return layoutData->reallocate((((layoutData->used + nGlyphs)*3/2 + 15) >> 4) << 4); + return true; } void freeMemory(); diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp index 674064e..5a11c87 100644 --- a/src/gui/text/qtextlayout.cpp +++ b/src/gui/text/qtextlayout.cpp @@ -74,6 +74,8 @@ static inline QFixed leadingSpaceWidth(QTextEngine *eng, const QScriptLine &line int pos = line.length; const HB_CharAttributes *attributes = eng->attributes(); + if (!attributes) + return QFixed(); while (pos > 0 && attributes[line.from + pos - 1].whiteSpace) --pos; return eng->width(line.from + pos, line.length - pos); @@ -601,7 +603,7 @@ bool QTextLayout::cacheEnabled() const void QTextLayout::beginLayout() { #ifndef QT_NO_DEBUG - if (d->layoutData && d->layoutData->inLayout) { + if (d->layoutData && d->layoutData->layoutState == QTextEngine::InLayout) { qWarning("QTextLayout::beginLayout: Called while already doing layout"); return; } @@ -609,7 +611,7 @@ void QTextLayout::beginLayout() d->invalidate(); d->clearLineData(); d->itemize(); - d->layoutData->inLayout = true; + d->layoutData->layoutState = QTextEngine::InLayout; } /*! @@ -618,7 +620,7 @@ void QTextLayout::beginLayout() void QTextLayout::endLayout() { #ifndef QT_NO_DEBUG - if (!d->layoutData || !d->layoutData->inLayout) { + if (!d->layoutData || d->layoutData->layoutState == QTextEngine::LayoutEmpty) { qWarning("QTextLayout::endLayout: Called without beginLayout()"); return; } @@ -627,7 +629,7 @@ void QTextLayout::endLayout() if (l && d->lines.at(l-1).length < 0) { QTextLine(l-1, d).setNumColumns(INT_MAX); } - d->layoutData->inLayout = false; + d->layoutData->layoutState = QTextEngine::LayoutEmpty; if (!d->cacheGlyphs) d->freeMemory(); } @@ -757,11 +759,14 @@ bool QTextLayout::isValidCursorPosition(int pos) const QTextLine QTextLayout::createLine() { #ifndef QT_NO_DEBUG - if (!d->layoutData || !d->layoutData->inLayout) { + if (!d->layoutData || d->layoutData->layoutState == QTextEngine::LayoutEmpty) { qWarning("QTextLayout::createLine: Called without layouting"); return QTextLine(); } #endif + if (d->layoutData->layoutState == QTextEngine::LayoutFailed) + return QTextLine(); + int l = d->lines.size(); if (l && d->lines.at(l-1).length < 0) { QTextLine(l-1, d).setNumColumns(INT_MAX); @@ -1801,6 +1806,8 @@ void QTextLine::layout_helper(int maxGlyphs) Qt::Alignment alignment = eng->option.alignment(); const HB_CharAttributes *attributes = eng->attributes(); + if (!attributes) + return; lbh.currentPosition = line.from; int end = 0; lbh.logClusters = eng->layoutData->logClustersPtr; @@ -1814,6 +1821,8 @@ void QTextLine::layout_helper(int maxGlyphs) if (!current.num_glyphs) { eng->shape(item); attributes = eng->attributes(); + if (!attributes) + return; lbh.logClusters = eng->layoutData->logClustersPtr; } lbh.currentPosition = qMax(line.from, current.position); -- cgit v0.12 From bd1aeaa50c60cffa3e195f3f6aed808f23a5c73c Mon Sep 17 00:00:00 2001 From: Jason Barron <jason.barron@nokia.com> Date: Wed, 4 Aug 2010 16:09:04 +0200 Subject: Remove the memory tracking attempt from the runtime graphics system. It has been decided that this logic will not be used by anyone at the moment so let's remove it. This removes an exported (although private) virtual function so breaks binary compatiblity for plugins built with previous versions. Reviewed-by: Jani Hautakangas --- src/gui/kernel/qapplication_s60.cpp | 10 +--- src/gui/kernel/qt_s60_p.h | 2 - src/gui/painting/qgraphicssystem_runtime.cpp | 77 ++-------------------------- src/gui/painting/qgraphicssystem_runtime_p.h | 13 ----- src/s60installs/bwins/QtGuiu.def | 2 +- src/s60installs/eabi/QtGuiu.def | 2 +- 6 files changed, 6 insertions(+), 100 deletions(-) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index f8734b2..1f6a4ae 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1953,13 +1953,6 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent if (switchToSwRendering) { QRuntimeGraphicsSystem *gs = static_cast<QRuntimeGraphicsSystem*>(QApplicationPrivate::graphics_system); - - uint memoryUsage = gs->memoryUsage(); - uint memoryForFullscreen = ( S60->screenDepth / 8 ) - * S60->screenWidthInPixels - * S60->screenHeightInPixels; - - S60->memoryLimitForHwRendering = memoryUsage - memoryForFullscreen; gs->setGraphicsSystem(QLatin1String("raster")); } } @@ -1975,8 +1968,7 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent if(QApplicationPrivate::runtime_graphics_system) { QRuntimeGraphicsSystem *gs = static_cast<QRuntimeGraphicsSystem*>(QApplicationPrivate::graphics_system); - gs->setGraphicsSystem(QLatin1String("openvg"), S60->memoryLimitForHwRendering); - S60->memoryLimitForHwRendering = 0; + gs->setGraphicsSystem(QLatin1String("openvg")); } #endif break; diff --git a/src/gui/kernel/qt_s60_p.h b/src/gui/kernel/qt_s60_p.h index 7f0c99e..a18ea07 100644 --- a/src/gui/kernel/qt_s60_p.h +++ b/src/gui/kernel/qt_s60_p.h @@ -141,7 +141,6 @@ public: int supportsPremultipliedAlpha : 1; int avkonComponentsSupportTransparency : 1; int menuBeingConstructed : 1; - int memoryLimitForHwRendering; QApplication::QS60MainApplicationFactory s60ApplicationFactory; // typedef'ed pointer type enum ScanCodeState { @@ -291,7 +290,6 @@ inline QS60Data::QS60Data() supportsPremultipliedAlpha(0), avkonComponentsSupportTransparency(0), menuBeingConstructed(0), - memoryLimitForHwRendering(0), s60ApplicationFactory(0) #ifdef Q_OS_SYMBIAN ,s60InstalledTrapHandler(0) diff --git a/src/gui/painting/qgraphicssystem_runtime.cpp b/src/gui/painting/qgraphicssystem_runtime.cpp index 568f4d7..be04df6 100644 --- a/src/gui/painting/qgraphicssystem_runtime.cpp +++ b/src/gui/painting/qgraphicssystem_runtime.cpp @@ -53,10 +53,8 @@ QT_BEGIN_NAMESPACE static int qt_pixmap_serial = 0; #define READBACK(f) \ - m_graphicsSystem->decreaseMemoryUsage(memoryUsage()); \ f \ - readBackInfo(); \ - m_graphicsSystem->increaseMemoryUsage(memoryUsage()); \ + readBackInfo(); class QDeferredGraphicsSystemChange : public QObject @@ -252,14 +250,6 @@ QPixmapData* QRuntimePixmapData::runtimeData() const return m_data; } -uint QRuntimePixmapData::memoryUsage() const -{ - if(is_null || d == 0) - return 0; - return w * h * (d / 8); -} - - QRuntimeWindowSurface::QRuntimeWindowSurface(const QRuntimeGraphicsSystem *gs, QWidget *window) : QWindowSurface(window), m_windowSurface(0), m_pendingWindowSurface(0), m_graphicsSystem(gs) { @@ -295,9 +285,7 @@ void QRuntimeWindowSurface::flush(QWidget *widget, const QRegion ®ion, void QRuntimeWindowSurface::setGeometry(const QRect &rect) { - m_graphicsSystem->decreaseMemoryUsage(memoryUsage()); m_windowSurface->setGeometry(rect); - m_graphicsSystem->increaseMemoryUsage(memoryUsage()); } bool QRuntimeWindowSurface::scroll(const QRegion &area, int dx, int dy) @@ -330,18 +318,9 @@ QPoint QRuntimeWindowSurface::offset(const QWidget *widget) const return m_windowSurface->offset(widget); } -uint QRuntimeWindowSurface::memoryUsage() const -{ - QPaintDevice *pdev = m_windowSurface->paintDevice(); - if (pdev && pdev->depth() != 0) - return pdev->width() * pdev->height() * (pdev->depth()/8); - - return 0; -} - QRuntimeGraphicsSystem::QRuntimeGraphicsSystem() - : m_memoryUsage(0), m_windowSurfaceDestroyPolicy(DestroyImmediately), - m_graphicsSystem(0), m_graphicsSystemChangeMemoryLimit(0) + : m_windowSurfaceDestroyPolicy(DestroyImmediately), + m_graphicsSystem(0) { QApplicationPrivate::graphics_system_name = QLatin1String("runtime"); QApplicationPrivate::runtime_graphics_system = true; @@ -379,34 +358,15 @@ QWindowSurface *QRuntimeGraphicsSystem::createWindowSurface(QWidget *widget) con rtSurface->m_windowSurface = m_graphicsSystem->createWindowSurface(widget); widget->setWindowSurface(rtSurface); m_windowSurfaces << rtSurface; - increaseMemoryUsage(rtSurface->memoryUsage()); return rtSurface; } -/*! - Sets graphics system when resource memory consumption is under /a memoryUsageLimit. -*/ -void QRuntimeGraphicsSystem::setGraphicsSystem(const QString &name, uint memoryUsageLimit) -{ -#ifdef QT_DEBUG - qDebug() << "QRuntimeGraphicsSystem::setGraphicsSystem( "<< name <<", " << memoryUsageLimit << ")"; - qDebug() << " current approximated graphics system memory usage " << memoryUsage() << " bytes"; -#endif - if (memoryUsage() >= memoryUsageLimit) { - m_graphicsSystemChangeMemoryLimit = memoryUsageLimit; - m_pendingGraphicsSystemName = name; - } else { - setGraphicsSystem(name); - } -} - void QRuntimeGraphicsSystem::setGraphicsSystem(const QString &name) { if (m_graphicsSystemName == name) return; #ifdef QT_DEBUG qDebug() << "QRuntimeGraphicsSystem::setGraphicsSystem( " << name << " )"; - qDebug() << " current approximated graphics system memory usage "<< memoryUsage() << " bytes"; #endif delete m_graphicsSystem; m_graphicsSystem = QGraphicsSystemFactory::create(name); @@ -414,7 +374,6 @@ void QRuntimeGraphicsSystem::setGraphicsSystem(const QString &name) Q_ASSERT(m_graphicsSystem); - m_graphicsSystemChangeMemoryLimit = 0; m_pendingGraphicsSystemName = QString(); for (int i = 0; i < m_pixmapDatas.size(); ++i) { @@ -447,42 +406,12 @@ void QRuntimeGraphicsSystem::removePixmapData(QRuntimePixmapData *pixmapData) co { int index = m_pixmapDatas.lastIndexOf(pixmapData); m_pixmapDatas.removeAt(index); - decreaseMemoryUsage(pixmapData->memoryUsage(), true); } void QRuntimeGraphicsSystem::removeWindowSurface(QRuntimeWindowSurface *windowSurface) const { int index = m_windowSurfaces.lastIndexOf(windowSurface); m_windowSurfaces.removeAt(index); - decreaseMemoryUsage(windowSurface->memoryUsage(), true); -} - -void QRuntimeGraphicsSystem::increaseMemoryUsage(uint amount) const -{ - m_memoryUsage += amount; - - if (m_graphicsSystemChangeMemoryLimit && - m_memoryUsage < m_graphicsSystemChangeMemoryLimit) { - - QRuntimeGraphicsSystem *gs = const_cast<QRuntimeGraphicsSystem*>(this); - QDeferredGraphicsSystemChange *deferredChange = - new QDeferredGraphicsSystemChange(gs, m_pendingGraphicsSystemName); - deferredChange->launch(); - } -} - -void QRuntimeGraphicsSystem::decreaseMemoryUsage(uint amount, bool persistent) const -{ - m_memoryUsage -= amount; - - if (persistent && m_graphicsSystemChangeMemoryLimit && - m_memoryUsage < m_graphicsSystemChangeMemoryLimit) { - - QRuntimeGraphicsSystem *gs = const_cast<QRuntimeGraphicsSystem*>(this); - QDeferredGraphicsSystemChange *deferredChange = - new QDeferredGraphicsSystemChange(gs, m_pendingGraphicsSystemName); - deferredChange->launch(); - } } #include "qgraphicssystem_runtime.moc" diff --git a/src/gui/painting/qgraphicssystem_runtime_p.h b/src/gui/painting/qgraphicssystem_runtime_p.h index 7aab89c..d4c9152 100644 --- a/src/gui/painting/qgraphicssystem_runtime_p.h +++ b/src/gui/painting/qgraphicssystem_runtime_p.h @@ -104,8 +104,6 @@ public: virtual QPixmapData *runtimeData() const; - virtual uint memoryUsage() const; - private: const QRuntimeGraphicsSystem *m_graphicsSystem; @@ -131,8 +129,6 @@ public: virtual QPoint offset(const QWidget *widget) const; - virtual uint memoryUsage() const; - QWindowSurface *m_windowSurface; QWindowSurface *m_pendingWindowSurface; @@ -159,7 +155,6 @@ public: void removePixmapData(QRuntimePixmapData *pixmapData) const; void removeWindowSurface(QRuntimeWindowSurface *windowSurface) const; - void setGraphicsSystem(const QString &name, uint memoryUsageLimit); void setGraphicsSystem(const QString &name); QString graphicsSystemName() const { return m_graphicsSystemName; } @@ -170,22 +165,14 @@ public: int windowSurfaceDestroyPolicy() const { return m_windowSurfaceDestroyPolicy; } - uint memoryUsage() const { return m_memoryUsage; } - -private: - - void increaseMemoryUsage(uint amount) const; - void decreaseMemoryUsage(uint amount, bool persistent = false) const; private: - mutable uint m_memoryUsage; int m_windowSurfaceDestroyPolicy; QGraphicsSystem *m_graphicsSystem; mutable QList<QRuntimePixmapData *> m_pixmapDatas; mutable QList<QRuntimeWindowSurface *> m_windowSurfaces; QString m_graphicsSystemName; - uint m_graphicsSystemChangeMemoryLimit; QString m_pendingGraphicsSystemName; friend class QRuntimePixmapData; diff --git a/src/s60installs/bwins/QtGuiu.def b/src/s60installs/bwins/QtGuiu.def index 7844688..90c0878 100644 --- a/src/s60installs/bwins/QtGuiu.def +++ b/src/s60installs/bwins/QtGuiu.def @@ -12832,7 +12832,7 @@ EXPORTS ?readBackInfo@QRuntimePixmapData@@QAEXXZ @ 12831 NONAME ; void QRuntimePixmapData::readBackInfo(void) ??_EQRuntimePixmapData@@UAE@I@Z @ 12832 NONAME ; QRuntimePixmapData::~QRuntimePixmapData(unsigned int) ?paintEngine@QRuntimePixmapData@@UBEPAVQPaintEngine@@XZ @ 12833 NONAME ; class QPaintEngine * QRuntimePixmapData::paintEngine(void) const - ?memoryUsage@QRuntimePixmapData@@UBEIXZ @ 12834 NONAME ; unsigned int QRuntimePixmapData::memoryUsage(void) const + ?memoryUsage@QRuntimePixmapData@@UBEIXZ @ 12834 NONAME ABSENT ; unsigned int QRuntimePixmapData::memoryUsage(void) const ?toImage@QRasterPixmapData@@UBE?AVQImage@@ABVQRect@@@Z @ 12835 NONAME ; class QImage QRasterPixmapData::toImage(class QRect const &) const ?fromImageReader@QRasterPixmapData@@UAEXPAVQImageReader@@V?$QFlags@W4ImageConversionFlag@Qt@@@@@Z @ 12836 NONAME ; void QRasterPixmapData::fromImageReader(class QImageReader *, class QFlags<enum Qt::ImageConversionFlag>) ?fill@QRuntimePixmapData@@UAEXABVQColor@@@Z @ 12837 NONAME ; void QRuntimePixmapData::fill(class QColor const &) diff --git a/src/s60installs/eabi/QtGuiu.def b/src/s60installs/eabi/QtGuiu.def index a22b4d9..d8e86bf 100644 --- a/src/s60installs/eabi/QtGuiu.def +++ b/src/s60installs/eabi/QtGuiu.def @@ -12046,7 +12046,7 @@ EXPORTS _ZN18QRuntimePixmapDataD1Ev @ 12045 NONAME _ZN18QRuntimePixmapDataD2Ev @ 12046 NONAME _ZN7QPixmap15fromImageReaderEP12QImageReader6QFlagsIN2Qt19ImageConversionFlagEE @ 12047 NONAME - _ZNK18QRuntimePixmapData11memoryUsageEv @ 12048 NONAME + _ZNK18QRuntimePixmapData11memoryUsageEv @ 12048 NONAME ABSENT _ZNK18QRuntimePixmapData11paintEngineEv @ 12049 NONAME _ZNK18QRuntimePixmapData11runtimeDataEv @ 12050 NONAME _ZNK18QRuntimePixmapData11transformedERK10QTransformN2Qt18TransformationModeE @ 12051 NONAME -- cgit v0.12 From 6ca2fe678740f4830de2388e9b2928813561373c Mon Sep 17 00:00:00 2001 From: Friedemann Kleint <Friedemann.Kleint@nokia.com> Date: Thu, 5 Aug 2010 15:13:58 +0200 Subject: Designer: Prevent rich text from being copied into style sheets. Reviewed-by: Lasse Holmstedt <lasse.holmstedt@nokia.com> Task-number: QTCREATORBUG-1952 --- tools/designer/src/lib/shared/stylesheeteditor.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/designer/src/lib/shared/stylesheeteditor.cpp b/tools/designer/src/lib/shared/stylesheeteditor.cpp index b76d700..e809447 100644 --- a/tools/designer/src/lib/shared/stylesheeteditor.cpp +++ b/tools/designer/src/lib/shared/stylesheeteditor.cpp @@ -79,6 +79,7 @@ StyleSheetEditor::StyleSheetEditor(QWidget *parent) : QTextEdit(parent) { setTabStopWidth(fontMetrics().width(QLatin1Char(' '))*4); + setAcceptRichText(false); new CssHighlighter(document()); } -- cgit v0.12 From 13a0378151a5dc67d1dca91dffac573d051c37f8 Mon Sep 17 00:00:00 2001 From: Simon Hausmann <simon.hausmann@nokia.com> Date: Thu, 5 Aug 2010 15:32:56 +0200 Subject: Updated WebKit to 413404da27312051bb3ff2cfd0f3fca42aa4b245 || <https://webkit.org/b/43530> || [Qt] Input mode states are not reset after entering a password field || --- src/3rdparty/webkit/.tag | 2 +- src/3rdparty/webkit/VERSION | 2 +- src/3rdparty/webkit/WebKit/qt/ChangeLog | 17 +++++++++++++++++ .../WebKit/qt/WebCoreSupport/EditorClientQt.cpp | 7 +++++++ .../qt/tests/qwebview/resources/input_types.html | 5 +++-- .../webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp | 19 +++++++++++++++++++ 6 files changed, 48 insertions(+), 4 deletions(-) diff --git a/src/3rdparty/webkit/.tag b/src/3rdparty/webkit/.tag index 718ea9d..fb2703e 100644 --- a/src/3rdparty/webkit/.tag +++ b/src/3rdparty/webkit/.tag @@ -1 +1 @@ -d6aa024c84f61d0602bef4eef84efaed7cfeefcc +413404da27312051bb3ff2cfd0f3fca42aa4b245 diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION index 1826cb6..c256434 100644 --- a/src/3rdparty/webkit/VERSION +++ b/src/3rdparty/webkit/VERSION @@ -4,4 +4,4 @@ This is a snapshot of the Qt port of WebKit from and has the sha1 checksum - d6aa024c84f61d0602bef4eef84efaed7cfeefcc + 413404da27312051bb3ff2cfd0f3fca42aa4b245 diff --git a/src/3rdparty/webkit/WebKit/qt/ChangeLog b/src/3rdparty/webkit/WebKit/qt/ChangeLog index 94aca65..5083ba5 100644 --- a/src/3rdparty/webkit/WebKit/qt/ChangeLog +++ b/src/3rdparty/webkit/WebKit/qt/ChangeLog @@ -1,3 +1,20 @@ +2010-08-05 David Leong <david.leong@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Input mode states are not reset after entering a password field + https://bugs.webkit.org/show_bug.cgi?id=43530 + + Input mode hints are not reset if clicking on password <input> elements then + clicking on <textarea> elements + + * WebCoreSupport/EditorClientQt.cpp: + (WebCore::EditorClientQt::setInputMethodState): + * tests/qwebview/resources/input_types.html: + * tests/qwebview/tst_qwebview.cpp: + (tst_QWebView::focusInputTypes): + + 2010-07-27 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Tor Arne Vestbø. diff --git a/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp b/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp index cdc4013..87e047e 100644 --- a/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp +++ b/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/EditorClientQt.cpp @@ -599,6 +599,13 @@ void EditorClientQt::setInputMethodState(bool active) QWebPageClient* webPageClient = m_page->d->client; if (webPageClient) { #if QT_VERSION >= 0x040600 + // Make sure to reset input method hint + webPageClient->setInputMethodHint(Qt::ImhDialableCharactersOnly, false); + webPageClient->setInputMethodHint(Qt::ImhDigitsOnly, false); + webPageClient->setInputMethodHint(Qt::ImhEmailCharactersOnly, false); + webPageClient->setInputMethodHint(Qt::ImhUrlCharactersOnly, false); + webPageClient->setInputMethodHint(Qt::ImhHiddenText, false); + HTMLInputElement* inputElement = 0; Frame* frame = m_page->d->page->focusController()->focusedOrMainFrame(); if (frame && frame->document() && frame->document()->focusedNode()) diff --git a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html index 18ab314..2e893af 100644 --- a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html +++ b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/resources/input_types.html @@ -4,5 +4,6 @@ <input type='tel' style='position: absolute; left: 10px; top: 100px; height: 50px; width: 100px;'/><br> <input type='number' style='position: absolute; left: 10px; top: 150px; height: 50px; width: 100px;'/><br> <input type='email' style='position: absolute; left: 10px; top: 200px; height: 50px; width: 100px;'/><br> -<input type='url' style='position: absolute; left: 10px; top: 250px; height: 50px; width: 100px;'/><br>" -</body></html> \ No newline at end of file +<input type='url' style='position: absolute; left: 10px; top: 250px; height: 50px; width: 100px;'/><br> +<textarea style='position: absolute; left: 10px; top: 310px; height: 50px; width: 100px;' rows="2" cols="20">blah blah blah blah</textarea><br> +</body></html> diff --git a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp index 5dc5e41..bd19578 100644 --- a/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp +++ b/src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp @@ -264,30 +264,37 @@ void tst_QWebView::focusInputTypes() #else QVERIFY(webView->inputMethodHints() == Qt::ImhNone); #endif + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'password' field webView->fireMouseClick(QPoint(20, 60)); QVERIFY(webView->inputMethodHints() == Qt::ImhHiddenText); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'tel' field webView->fireMouseClick(QPoint(20, 110)); QVERIFY(webView->inputMethodHints() == Qt::ImhDialableCharactersOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'number' field webView->fireMouseClick(QPoint(20, 160)); QVERIFY(webView->inputMethodHints() == Qt::ImhDigitsOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'email' field webView->fireMouseClick(QPoint(20, 210)); QVERIFY(webView->inputMethodHints() == Qt::ImhEmailCharactersOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'url' field webView->fireMouseClick(QPoint(20, 260)); QVERIFY(webView->inputMethodHints() == Qt::ImhUrlCharactersOnly); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'password' field webView->fireMouseClick(QPoint(20, 60)); QVERIFY(webView->inputMethodHints() == Qt::ImhHiddenText); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); // 'text' type webView->fireMouseClick(QPoint(20, 10)); @@ -297,6 +304,18 @@ void tst_QWebView::focusInputTypes() #else QVERIFY(webView->inputMethodHints() == Qt::ImhNone); #endif + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); + + // 'password' field + webView->fireMouseClick(QPoint(20, 60)); + QVERIFY(webView->inputMethodHints() == Qt::ImhHiddenText); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); + + qWarning("clicking on text area"); + // 'text area' field + webView->fireMouseClick(QPoint(20, 320)); + QVERIFY(webView->inputMethodHints() == Qt::ImhNone); + QVERIFY(webView->testAttribute(Qt::WA_InputMethodEnabled)); delete webView; -- cgit v0.12 From c1ce7b4b01c1049c61881bb7d701ed68b92a401b Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Thu, 5 Aug 2010 14:56:50 +0200 Subject: qdoc: added application flags in doc.pri and fixed QTBUG-12388 Task-nr: QTBUG-12388 --- doc/doc.pri | 4 ++-- doc/src/index.qdoc | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/doc/doc.pri b/doc/doc.pri index f748f3d..e1efa21 100644 --- a/doc/doc.pri +++ b/doc/doc.pri @@ -19,8 +19,8 @@ $$unixstyle { QDOC = cd $$QT_SOURCE_TREE/tools/qdoc3/test && set QT_BUILD_TREE=$$QT_BUILD_TREE&& set QT_SOURCE_TREE=$$QT_SOURCE_TREE&& $$QT_BUILD_TREE/bin/qdoc3.exe $$DOCS_GENERATION_DEFINES QDOC = $$replace(QDOC, "/", "\\") } -ADP_DOCS_QDOCCONF_FILE = qt-build-docs.qdocconf -QT_DOCUMENTATION = ($$QDOC qt-api-only.qdocconf assistant.qdocconf designer.qdocconf \ +ADP_DOCS_QDOCCONF_FILE = -online qt-build-docs.qdocconf +QT_DOCUMENTATION = ($$QDOC -assistant qt-api-only.qdocconf assistant.qdocconf designer.qdocconf \ linguist.qdocconf qmake.qdocconf qdeclarative.qdocconf) && \ (cd $$QT_BUILD_TREE && \ $$GENERATOR doc-build/html-qt/qt.qhp -o doc/qch/qt.qch && \ diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index 7efd1e6..6e37e89 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -94,12 +94,14 @@ </div> <div class="section sectionlist"> <ul> - <li><a href="http://doc.qt.nokia.com/qtcreator-2.0/index.html">Qt Creator</a> (online document)</li> + <li><a href="http://doc.qt.nokia.com/qtcreator-2.0/index.html">Qt Creator</a> (online)</li> <li><a href="designer-manual.html">Qt Designer</a></li> <li><a href="linguist-manual.html">Qt Linguist</a></li> <li><a href="assistant-manual.html">Qt Assistant</a></li> - <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a> (online document)</li> - <li><a href="http://qt.nokia.com/developer/eclipse-integration">Integration</a> (online document) and <a href="http://qt.nokia.com/products/appdev">add-ins</a> (online document)</li> + <li><a href="qmake-manual.html">Qt qmake</a></li> + <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a> (online)</li> + <li><a href="http://qt.nokia.com/developer/eclipse-integration">Eclipse Integration</a> (online)</li> + <li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> <li><a href="qvfb.html">Virtual Framebuffer</a></li> </ul> </div> -- cgit v0.12 From 24c3948e53d7239049f6c2ad43add458bee48902 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Thu, 5 Aug 2010 14:59:18 +0200 Subject: qdoc: added application flags in doc.pri and fixed QTBUG-12388 Task-nr: QTBUG-12388 --- doc/src/index.qdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index 6e37e89..fe9b7d4 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -101,7 +101,7 @@ <li><a href="qmake-manual.html">Qt qmake</a></li> <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a> (online)</li> <li><a href="http://qt.nokia.com/developer/eclipse-integration">Eclipse Integration</a> (online)</li> - <li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> + <li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> <li><a href="qvfb.html">Virtual Framebuffer</a></li> </ul> </div> -- cgit v0.12 From 205b1b20650839114d319fa381cc500141cdd54e Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Thu, 5 Aug 2010 15:17:20 +0200 Subject: qdoc: added application flags in doc.pri and fixed QTBUG-12388 Task-nr: QTBUG-12388 --- doc/src/index.qdoc | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index fe9b7d4..f890aa6 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -109,4 +109,5 @@ </div> \endraw + */ -- cgit v0.12 From 951a4721c58edc0f9cad262cf3679e75fe4d62e6 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Thu, 5 Aug 2010 15:46:53 +0200 Subject: qdoc: added application flags in doc.pri and fixed QTBUG-12388 Task-nr: QTBUG-12388 --- doc/src/index.qdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index f890aa6..6d53abf 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -101,7 +101,7 @@ <li><a href="qmake-manual.html">Qt qmake</a></li> <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a> (online)</li> <li><a href="http://qt.nokia.com/developer/eclipse-integration">Eclipse Integration</a> (online)</li> - <li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> +<li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> <li><a href="qvfb.html">Virtual Framebuffer</a></li> </ul> </div> -- cgit v0.12 From b55895cf6164fd479ce6728d6c72e1c4fffd2491 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Thu, 5 Aug 2010 15:52:05 +0200 Subject: qdoc: added application flags in doc.pri and fixed QTBUG-12388 Task-nr: QTBUG-12388 --- doc/src/index.qdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index 6d53abf..f890aa6 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -101,7 +101,7 @@ <li><a href="qmake-manual.html">Qt qmake</a></li> <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a> (online)</li> <li><a href="http://qt.nokia.com/developer/eclipse-integration">Eclipse Integration</a> (online)</li> -<li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> + <li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> <li><a href="qvfb.html">Virtual Framebuffer</a></li> </ul> </div> -- cgit v0.12 From cb086eb5340c4c41efaf45373aa05c37e8aa974a Mon Sep 17 00:00:00 2001 From: David Boddie <dboddie@trolltech.com> Date: Thu, 5 Aug 2010 17:19:48 +0200 Subject: Doc: Fixed qdoc warnings. Reviewed-by: Trust Me --- doc/src/declarative/declarativeui.qdoc | 2 +- doc/src/declarative/qtdeclarative.qdoc | 2 +- doc/src/examples/qml-examples.qdoc | 2 +- doc/src/examples/simpletreemodel.qdoc | 4 +- doc/src/examples/spinboxdelegate.qdoc | 4 +- doc/src/external-resources.qdoc | 2 +- doc/src/index.qdoc | 10 ++--- doc/src/modules.qdoc | 1 - doc/src/overviews.qdoc | 3 +- doc/src/qt-webpages.qdoc | 5 +++ src/dbus/qdbusconnection.cpp | 4 ++ src/declarative/qml/qdeclarativeimageprovider.cpp | 8 ++-- src/declarative/util/qdeclarativeanimation.cpp | 2 +- src/declarative/util/qdeclarativetransition.cpp | 4 +- src/gui/graphicsview/qgraphicsitem.cpp | 18 +++++++++ src/gui/graphicsview/qgraphicstransform.cpp | 21 +++++++++++ src/gui/s60framework/qs60mainapplication.cpp | 6 +++ src/gui/s60framework/qs60mainappui.cpp | 45 +++++++++++++++++++++++ src/network/access/qnetworkrequest.cpp | 20 +++++----- tools/qdoc3/test/qt-html-templates.qdocconf | 7 +--- 20 files changed, 130 insertions(+), 40 deletions(-) diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc index 217e372..42189c0 100644 --- a/doc/src/declarative/declarativeui.qdoc +++ b/doc/src/declarative/declarativeui.qdoc @@ -27,7 +27,7 @@ /*! \title Qt Quick -\page declarativeui.html +\page qtquick.html \brief Qt Quick provides a declarative framework for building highly dynamic, custom user interfaces. diff --git a/doc/src/declarative/qtdeclarative.qdoc b/doc/src/declarative/qtdeclarative.qdoc index 413eb59..b4f4c83 100644 --- a/doc/src/declarative/qtdeclarative.qdoc +++ b/doc/src/declarative/qtdeclarative.qdoc @@ -48,7 +48,7 @@ \endcode For more information on the Qt Declarative module, see the - \l{declarativeui.html}{Qt Quick} documentation. + \l{Qt Quick} documentation. */ diff --git a/doc/src/examples/qml-examples.qdoc b/doc/src/examples/qml-examples.qdoc index 8d3aa25..0d191c9 100644 --- a/doc/src/examples/qml-examples.qdoc +++ b/doc/src/examples/qml-examples.qdoc @@ -562,7 +562,7 @@ \example declarative/ui-components/dialcontrol This example shows how to create a dial-type control. It combines - \l Image elements with \l Rotation transforms and \l SpringAnimatino behaviors + \l Image elements with \l Rotation transforms and \l SpringAnimation behaviors to produce an interactive speedometer-type dial. \image qml-dialcontrol-example.png diff --git a/doc/src/examples/simpletreemodel.qdoc b/doc/src/examples/simpletreemodel.qdoc index c34f4af..790d5fa 100644 --- a/doc/src/examples/simpletreemodel.qdoc +++ b/doc/src/examples/simpletreemodel.qdoc @@ -32,7 +32,7 @@ The Simple Tree Model example shows how to create a basic, read-only hierarchical model to use with Qt's standard view classes. For a description of simple non-hierarchical list and table models, see the - \l{model-view-programming.html}{Model/View Programming} overview. + \l{Model/View Programming} overview. \image simpletreemodel-example.png @@ -40,7 +40,7 @@ information in a data source, using an abstract model of the data to simplify and standardize the way it is accessed. Simple models represent data as a table of items, and allow views to access this data via an - \l{model-view-model.html}{index-based} system. More generally, models can + \l{Model/View Programming#Models}{index-based} system. More generally, models can be used to represent data in the form of a tree structure by allowing each item to act as a parent to a table of child items. diff --git a/doc/src/examples/spinboxdelegate.qdoc b/doc/src/examples/spinboxdelegate.qdoc index 49e3295..48e4bfa 100644 --- a/doc/src/examples/spinboxdelegate.qdoc +++ b/doc/src/examples/spinboxdelegate.qdoc @@ -42,8 +42,8 @@ \image spinboxdelegate-example.png This concepts behind this example are covered in the - \l{model-view-delegate.html}{Delegate Classes} chapter of the - \l{model-view-programming.html}{Model/View Programming} overview. + \l{Model/View Programming#Delegate Classes}{Delegate Classes} chapter of the + \l{Model/View Programming} overview. \section1 SpinBoxDelegate Class Definition diff --git a/doc/src/external-resources.qdoc b/doc/src/external-resources.qdoc index 5c6108a..e901124c 100644 --- a/doc/src/external-resources.qdoc +++ b/doc/src/external-resources.qdoc @@ -416,7 +416,7 @@ /*! \externalpage http://opensource.org/licenses/bsd-license.php - \title BSD License + \title New and Modified BSD Licenses */ /*! diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index 7efd1e6..499667c 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -65,7 +65,6 @@ </div> <div class="sectionlist tricol"> <ul> - <!-- <li><a href="qt-basic-concepts.html">Programming with Qt</a></li> --> <li><a href="qt-basic-concepts.html">Basic Qt Architecture</a></li> <li><a href="developing-with-qt.html">Cross-platform & Platform-specific Development</a></li> <li><a href="technology-apis.html">Qt & standard technologies </a></li> @@ -74,11 +73,10 @@ </div> <div class="sectionlist"> <ul> - <li><a href="declarativeui.html">Qt Quick</a></li> + <li><a href="qtquick.html">Qt Quick</a></li> <li><a href="qdeclarativeintroduction.html">Introduction to QML</a></li> <li><a href="qdeclarativeelements.html">QML Elements</a></li> <li><a href="qt-gui-concepts.html">UI components</a></li> - <!-- <li><a href="declarativeui.html">Qt & GUI design</a></li> --> </ul> </div> </div> @@ -94,12 +92,12 @@ </div> <div class="section sectionlist"> <ul> - <li><a href="http://doc.qt.nokia.com/qtcreator-2.0/index.html">Qt Creator</a> (online document)</li> + <li><a href="http://doc.qt.nokia.com/qtcreator-2.0/index.html">Qt Creator</a></li> <li><a href="designer-manual.html">Qt Designer</a></li> <li><a href="linguist-manual.html">Qt Linguist</a></li> <li><a href="assistant-manual.html">Qt Assistant</a></li> - <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a> (online document)</li> - <li><a href="http://qt.nokia.com/developer/eclipse-integration">Integration</a> (online document) and <a href="http://qt.nokia.com/products/appdev">add-ins</a> (online document)</li> + <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a></li> + <li><a href="http://qt.nokia.com/developer/eclipse-integration">Integration</a> and <a href="http://qt.nokia.com/products/appdev">add-ins</a></li> <li><a href="qvfb.html">Virtual Framebuffer</a></li> </ul> </div> diff --git a/doc/src/modules.qdoc b/doc/src/modules.qdoc index a81bfb2..c51fcad 100644 --- a/doc/src/modules.qdoc +++ b/doc/src/modules.qdoc @@ -116,7 +116,6 @@ /*! \module QtMultimedia - \page qtmultimedia-module.html \title QtMultimedia Module \contentspage All Modules \previouspage QtCore diff --git a/doc/src/overviews.qdoc b/doc/src/overviews.qdoc index a1773a3..c7b88cf 100644 --- a/doc/src/overviews.qdoc +++ b/doc/src/overviews.qdoc @@ -55,8 +55,7 @@ These pages are about Qt's traditional set of GUI components for building both native look ^ feel and custom UI's for the desktop - environment. Use \l {declarativeui.html} {Qt Quick} for building - UI's for mobile devices. + environment. Use \l{Qt Quick} for building UI's for mobile devices. \generatelist {related} */ diff --git a/doc/src/qt-webpages.qdoc b/doc/src/qt-webpages.qdoc index 0c61285..5d9b41b 100644 --- a/doc/src/qt-webpages.qdoc +++ b/doc/src/qt-webpages.qdoc @@ -234,3 +234,8 @@ \externalpage http://qt.gitorious.org \title Public Qt Repository */ + +/*! + \externalpage http://get.qt.nokia.com/nokiasmartinstaller/ + \title Smart Installer +*/ diff --git a/src/dbus/qdbusconnection.cpp b/src/dbus/qdbusconnection.cpp index 5cbb8ca..87ee3d1 100644 --- a/src/dbus/qdbusconnection.cpp +++ b/src/dbus/qdbusconnection.cpp @@ -227,6 +227,10 @@ void QDBusConnectionManager::setConnection(const QString &name, QDBusConnectionP \value ExportChildObjects export this object's child objects + \value ExportScriptableInvokables export this object's scriptable methods + \value ExportNonScriptableInvokables export this object's non-scriptable methods + \value ExportAllInvokables export all of this object's methods + \sa registerObject(), QDBusAbstractAdaptor, {usingadaptors.html}{Using adaptors} */ diff --git a/src/declarative/qml/qdeclarativeimageprovider.cpp b/src/declarative/qml/qdeclarativeimageprovider.cpp index 241df87..4743a1b 100644 --- a/src/declarative/qml/qdeclarativeimageprovider.cpp +++ b/src/declarative/qml/qdeclarativeimageprovider.cpp @@ -59,13 +59,13 @@ public: \list \o Loaded using QPixmaps rather than actual image files - \o Loaded asynchronously in a separate thread, if imageType() is \l ImageType::Image + \o Loaded asynchronously in a separate thread, if imageType() is \l{QDeclarativeImageProvider::ImageType}{ImageType::Image} \endlist To specify that an image should be loaded by an image provider, use the \bold {"image:"} scheme for the URL source of the image, followed by the identifiers of the image provider and the requested image. For example: - + \qml Image { source: "image://myimageprovider/image.png" } \endqml @@ -83,7 +83,7 @@ public: and "red", respectively: \snippet examples/declarative/cppextensions/imageprovider/imageprovider-example.qml 0 - + When these images are loaded by QML, it looks for a matching image provider and calls its requestImage() or requestPixmap() method (depending on its imageType()) to load the image. The method is called with the \c id @@ -136,7 +136,7 @@ public: main thread. In this case, if \l {Image::}{asynchronous} is set to \c true, the value is ignored and the image is loaded synchronously. - + \sa QDeclarativeEngine::addImageProvider() */ diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp index 6a9cf95..cda7623 100644 --- a/src/declarative/util/qdeclarativeanimation.cpp +++ b/src/declarative/util/qdeclarativeanimation.cpp @@ -1323,7 +1323,7 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t) \snippet doc/src/snippets/declarative/rotationanimation.qml 0 - Notice the RotationAnimation did not need to set a \l {RotationAnimation::}{target} + Notice the RotationAnimation did not need to set a \l target value. As a convenience, when used in a transition, RotationAnimation will rotate all properties named "rotation" or "angle". You can override this by providing your own properties via \l {PropertyAnimation::properties}{properties} or diff --git a/src/declarative/util/qdeclarativetransition.cpp b/src/declarative/util/qdeclarativetransition.cpp index 582191b..8de6b23 100644 --- a/src/declarative/util/qdeclarativetransition.cpp +++ b/src/declarative/util/qdeclarativetransition.cpp @@ -60,10 +60,10 @@ QT_BEGIN_NAMESPACE For example, the following \l Rectangle has two states: the default state, and an added "moved" state. In the "moved state, the rectangle's position changes - to (50, 50). The added \l Transition specifies that when the rectangle + to (50, 50). The added Transition specifies that when the rectangle changes between the default and the "moved" state, any changes to the \c x and \c y properties should be animated, using an \c Easing.InOutQuad. - + \snippet doc/src/snippets/declarative/transition.qml 0 To define multiple transitions, specify \l Item::transitions as a list: diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp index 1626d83..2856699 100644 --- a/src/gui/graphicsview/qgraphicsitem.cpp +++ b/src/gui/graphicsview/qgraphicsitem.cpp @@ -7965,6 +7965,24 @@ void QGraphicsItemPrivate::resetHeight() */ /*! + \property QGraphicsObject::children + \since 4.7 + \internal +*/ + +/*! + \property QGraphicsObject::width + \since 4.7 + \internal +*/ + +/*! + \property QGraphicsObject::height + \since 4.7 + \internal +*/ + +/*! \class QAbstractGraphicsShapeItem \brief The QAbstractGraphicsShapeItem class provides a common base for all path items. diff --git a/src/gui/graphicsview/qgraphicstransform.cpp b/src/gui/graphicsview/qgraphicstransform.cpp index 986bee6..27dceb8 100644 --- a/src/gui/graphicsview/qgraphicstransform.cpp +++ b/src/gui/graphicsview/qgraphicstransform.cpp @@ -565,6 +565,27 @@ void QGraphicsRotation::applyTo(QMatrix4x4 *matrix) const \sa QGraphicsRotation::axis */ +/*! + \fn QGraphicsScale::xScaleChanged() + \since 4.7 + + This signal is emitted whenever the \l xScale property changes. +*/ + +/*! + \fn QGraphicsScale::yScaleChanged() + \since 4.7 + + This signal is emitted whenever the \l yScale property changes. +*/ + +/*! + \fn QGraphicsScale::zScaleChanged() + \since 4.7 + + This signal is emitted whenever the \l zScale property changes. +*/ + #include "moc_qgraphicstransform.cpp" QT_END_NAMESPACE diff --git a/src/gui/s60framework/qs60mainapplication.cpp b/src/gui/s60framework/qs60mainapplication.cpp index 0f9367e..185c06f 100644 --- a/src/gui/s60framework/qs60mainapplication.cpp +++ b/src/gui/s60framework/qs60mainapplication.cpp @@ -141,11 +141,17 @@ void QS60MainApplication::PreDocConstructL() QS60MainApplicationBase::PreDocConstructL(); } +/*! + \internal +*/ CDictionaryStore *QS60MainApplication::OpenIniFileLC(RFs &aFs) const { return QS60MainApplicationBase::OpenIniFileLC(aFs); } +/*! + \internal +*/ void QS60MainApplication::NewAppServerL(CApaAppServer *&aAppServer) { QS60MainApplicationBase::NewAppServerL(aAppServer); diff --git a/src/gui/s60framework/qs60mainappui.cpp b/src/gui/s60framework/qs60mainappui.cpp index 40c2d03..72cf577 100644 --- a/src/gui/s60framework/qs60mainappui.cpp +++ b/src/gui/s60framework/qs60mainappui.cpp @@ -281,76 +281,121 @@ void QS60MainAppUi::RestoreMenuL(CCoeControl *menuWindow, TInt resourceId, TMenu } } +/*! + \internal +*/ void QS60MainAppUi::Exit() { QS60MainAppUiBase::Exit(); } +/*! + \internal +*/ void QS60MainAppUi::SetFadedL(TBool aFaded) { QS60MainAppUiBase::SetFadedL(aFaded); } +/*! + \internal +*/ TRect QS60MainAppUi::ApplicationRect() const { return QS60MainAppUiBase::ApplicationRect(); } +/*! + \internal +*/ void QS60MainAppUi::HandleScreenDeviceChangedL() { QS60MainAppUiBase::HandleScreenDeviceChangedL(); } +/*! + \internal +*/ void QS60MainAppUi::HandleApplicationSpecificEventL(TInt aType, const TWsEvent &aEvent) { QS60MainAppUiBase::HandleApplicationSpecificEventL(aType, aEvent); } +/*! + \internal +*/ TTypeUid::Ptr QS60MainAppUi::MopSupplyObject(TTypeUid aId) { return QS60MainAppUiBase::MopSupplyObject(aId); } +/*! + \internal +*/ void QS60MainAppUi::ProcessCommandL(TInt aCommand) { QS60MainAppUiBase::ProcessCommandL(aCommand); } +/*! + \internal +*/ TErrorHandlerResponse QS60MainAppUi::HandleError (TInt aError, const SExtendedError &aExtErr, TDes &aErrorText, TDes &aContextText) { return QS60MainAppUiBase::HandleError(aError, aExtErr, aErrorText, aContextText); } +/*! + \internal +*/ void QS60MainAppUi::HandleViewDeactivation(const TVwsViewId &aViewIdToBeDeactivated, const TVwsViewId &aNewlyActivatedViewId) { QS60MainAppUiBase::HandleViewDeactivation(aViewIdToBeDeactivated, aNewlyActivatedViewId); } +/*! + \internal +*/ void QS60MainAppUi::PrepareToExit() { QS60MainAppUiBase::PrepareToExit(); } +/*! + \internal +*/ void QS60MainAppUi::HandleTouchPaneSizeChange() { QS60MainAppUiBase::HandleTouchPaneSizeChange(); } +/*! + \internal +*/ void QS60MainAppUi::HandleSystemEventL(const TWsEvent &aEvent) { QS60MainAppUiBase::HandleSystemEventL(aEvent); } +/*! + \internal +*/ void QS60MainAppUi::Reserved_MtsmPosition() { QS60MainAppUiBase::Reserved_MtsmPosition(); } +/*! + \internal +*/ void QS60MainAppUi::Reserved_MtsmObject() { QS60MainAppUiBase::Reserved_MtsmObject(); } +/*! + \internal +*/ void QS60MainAppUi::HandleForegroundEventL(TBool aForeground) { QS60MainAppUiBase::HandleForegroundEventL(aForeground); diff --git a/src/network/access/qnetworkrequest.cpp b/src/network/access/qnetworkrequest.cpp index fa592c2..8710cb6 100644 --- a/src/network/access/qnetworkrequest.cpp +++ b/src/network/access/qnetworkrequest.cpp @@ -174,12 +174,12 @@ QT_BEGIN_NAMESPACE When using this flag with sequential upload data, the ContentLengthHeader header must be set. - \value HttpPipeliningAllowedAttribute + \value HttpPipeliningAllowedAttribute Requests only, type: QVariant::Bool (default: false) Indicates whether the QNetworkAccessManager code is allowed to use HTTP pipelining with this request. - \value HttpPipeliningWasUsedAttribute + \value HttpPipeliningWasUsedAttribute Replies only, type: QVariant::Bool Indicates whether the HTTP pipelining was used for receiving this reply. @@ -200,9 +200,9 @@ QT_BEGIN_NAMESPACE See http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag for more information. - \since 4.7 + (This value was introduced in 4.7.) - \value CookieSaveControlAttribute + \value CookieSaveControlAttribute Requests only, type: QVariant::Int (default: QNetworkRequest::Automatic) Indicates whether to save 'Cookie' headers received from the server in reply to the request. @@ -213,9 +213,9 @@ QT_BEGIN_NAMESPACE See http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag for more information. - \since 4.7 + (This value was introduced in 4.7.) - \value AuthenticationReuseAttribute + \value AuthenticationReuseAttribute Requests only, type: QVariant::Int (default: QNetworkRequest::Automatic) Indicates whether to use cached authorization credentials in the request, if available. If this is set to QNetworkRequest::Manual and the authentication @@ -228,15 +228,13 @@ QT_BEGIN_NAMESPACE See http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag for more information. - \since 4.7 + (This value was introduced in 4.7.) \omitvalue MaximumDownloadBufferSizeAttribute - \since 4.7 - \internal + (This value was introduced in 4.7.) \omitvalue DownloadBufferAttribute - \since 4.7 - \internal + (This value was introduced in 4.7.) \value User Special type. Additional information can be passed in diff --git a/tools/qdoc3/test/qt-html-templates.qdocconf b/tools/qdoc3/test/qt-html-templates.qdocconf index cf15628..089b11f 100644 --- a/tools/qdoc3/test/qt-html-templates.qdocconf +++ b/tools/qdoc3/test/qt-html-templates.qdocconf @@ -4,9 +4,6 @@ HTML.stylesheets = style/style.css \ style/style_ie8.css \ style/style_ie6.css -HTML.creatorpostheader = "**\n" -HTML.creatorpostpostheader = "***\n" - HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ " <div class=\"content\"> \n" \ " <div id=\"nav-logo\">\n" \ @@ -48,7 +45,7 @@ HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ " <li><a href=\"#\">Qt Topics</a> \n" \ " <ul id=\"topmenuTopic\"> \n" \ " <li><a href=\"qt-basic-concepts.html\">Basic Qt architecture</a></li> \n" \ - " <li><a href=\"declarativeui.html\">Device UI's & Qt Quick</a></li> \n" \ + " <li><a href=\"qtquick.html\">Device UI's & Qt Quick</a></li> \n" \ " <li><a href=\"qt-gui-concepts.html\">Desktop UI components</a></li> \n" \ " <li><a href=\"platform-specific.html\">Platform-specific info</a></li> \n" \ " <li><a href=\"best-practices.html\">How-To's and Best Practices</a></li> \n" \ @@ -100,7 +97,7 @@ HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ " <div id=\"list002\" class=\"list\">\n" \ " <ul id=\"ul002\" >\n" \ " <li class=\"defaultLink\"><a href=\"qt-basic-concepts.html\">Basic Qt architecture</a></li>\n" \ - " <li class=\"defaultLink\"><a href=\"declarativeui.html\">Device UI's & Qt Quick</a></li>\n" \ + " <li class=\"defaultLink\"><a href=\"qtquick.html\">Device UI's & Qt Quick</a></li>\n" \ " <li class=\"defaultLink\"><a href=\"qt-gui-concepts.html\">Desktop UI components</a></li>\n" \ " <li class=\"defaultLink\"><a href=\"platform-specific.html\">Platform-specific info</a></li>\n" \ " </ul> \n" \ -- cgit v0.12 From 4bc408c6faade543c76fa0c7b8841ce72c239688 Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Thu, 5 Aug 2010 17:24:31 +0200 Subject: Adding a description for the Spectrum Analyzer demo. For QTBUG-12180 Reviewed by: David Boddie --- doc/src/demos/spectrum.qdoc | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 doc/src/demos/spectrum.qdoc diff --git a/doc/src/demos/spectrum.qdoc b/doc/src/demos/spectrum.qdoc new file mode 100644 index 0000000..944f944 --- /dev/null +++ b/doc/src/demos/spectrum.qdoc @@ -0,0 +1,39 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial Usage +** Licensees holding valid Qt Commercial licenses may use this file in +** accordance with the Qt Commercial License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in a +** written agreement between you and Nokia. +** +** GNU Free Documentation License +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of this +** file. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \example demos/spectrum + \title Spectrum Analyzer + +This application is a demo which uses the QtMultimedia APIs to capture and +play back PCM audio. While either recording or playback is ongoing, the +application performs real-time level and frequency spectrum analysis, +displaying the results in its main window. + + +*/ + -- cgit v0.12 From a49f2700c6b5c0f5851f9cfab38b5554e9530577 Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Thu, 5 Aug 2010 17:22:38 +0200 Subject: QStyleSheet documentation: QMenu's tear-off is styled with ::tearoff Task-number: QTBUG-12553 Reviewed-by: Carlos Duclos --- doc/src/widgets-and-layouts/stylesheet.qdoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/widgets-and-layouts/stylesheet.qdoc b/doc/src/widgets-and-layouts/stylesheet.qdoc index 1390376..977f641 100644 --- a/doc/src/widgets-and-layouts/stylesheet.qdoc +++ b/doc/src/widgets-and-layouts/stylesheet.qdoc @@ -925,7 +925,7 @@ The scroller is styled using the \l{#scroller-sub}{::scroller}. - The tear-off is styled using the \l{#tear-off-sub}{::tear-off}. + The tear-off is styled using the \l{#tearoff-sub}{::tearoff}. See \l{Qt Style Sheets Examples#Customizing QMenu}{Customizing QMenu} for an example. @@ -3337,7 +3337,7 @@ \o The tear indicator of a QTabBar. \row - \o \c ::tear-off \target tear-off-sub + \o \c ::tearoff \target tearoff-sub \o The tear-off indicator of a QMenu. \row -- cgit v0.12 From 8155ee1db55893876165936f4e9d551b45c0f35a Mon Sep 17 00:00:00 2001 From: Robin Burchell <robin.burchell@collabora.co.uk> Date: Thu, 5 Aug 2010 17:45:52 +0200 Subject: Move note on connectToBus() not actually being able to reconnect to connectToBus() documentation, where it belongs. This also fixes some bad English ("make be connected") by means of removing it. Merge-request: 2443 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> --- src/dbus/qdbusconnection.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/dbus/qdbusconnection.cpp b/src/dbus/qdbusconnection.cpp index 5cbb8ca..055fead 100644 --- a/src/dbus/qdbusconnection.cpp +++ b/src/dbus/qdbusconnection.cpp @@ -173,6 +173,9 @@ void QDBusConnectionManager::setConnection(const QString &name, QDBusConnectionP The connection is then torn down using the disconnectFromBus() function. + Once disconnected, calling connectToBus() will not reestablish a + connection, you must create a new QDBusConnection instance. + As a convenience for the two most common connection types, the sessionBus() and systemBus() functions return open connections to the session server daemon and the system server daemon, @@ -853,10 +856,6 @@ QDBusConnectionInterface *QDBusConnection::interface() const /*! Returns true if this QDBusConnection object is connected. - - If it isn't connected, calling connectToBus() on the same - connection name will not make be connected. You need to call the - QDBusConnection constructor again. */ bool QDBusConnection::isConnected() const { -- cgit v0.12 From 0dfc5666d2b615b2c4c0c2f392771b001de9163b Mon Sep 17 00:00:00 2001 From: Robin Burchell <robin.burchell@collabora.co.uk> Date: Thu, 5 Aug 2010 17:45:53 +0200 Subject: Remove useless QString::clear() from QSharedData example snippet. Merge-request: 2443 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> --- doc/src/snippets/sharedemployee/employee.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/snippets/sharedemployee/employee.h b/doc/src/snippets/sharedemployee/employee.h index 18b47e0..2c9ba6f 100644 --- a/doc/src/snippets/sharedemployee/employee.h +++ b/doc/src/snippets/sharedemployee/employee.h @@ -48,7 +48,7 @@ class EmployeeData : public QSharedData { public: - EmployeeData() : id(-1) { name.clear(); } + EmployeeData() : id(-1) { } EmployeeData(const EmployeeData &other) : QSharedData(other), id(other.id), name(other.name) { } ~EmployeeData() { } -- cgit v0.12 From ae2e8c0f479e0b4d819023ddcfd6db81dd773bf3 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Fri, 6 Aug 2010 09:38:53 +1000 Subject: Remove some warnings Reviewed-by: Aaron Kennedy --- src/declarative/qml/qdeclarativecompiler.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/declarative/qml/qdeclarativecompiler.cpp b/src/declarative/qml/qdeclarativecompiler.cpp index ba757fc..2b4a4a5 100644 --- a/src/declarative/qml/qdeclarativecompiler.cpp +++ b/src/declarative/qml/qdeclarativecompiler.cpp @@ -2215,10 +2215,11 @@ bool QDeclarativeCompiler::checkDynamicMeta(QDeclarativeParser::Object *obj) if (propNames.contains(prop.name)) COMPILE_EXCEPTION(&prop, tr("Duplicate property name")); - if (QString::fromUtf8(prop.name).at(0).isUpper()) + QString propName = QString::fromUtf8(prop.name); + if (propName.at(0).isUpper()) COMPILE_EXCEPTION(&prop, tr("Property names cannot begin with an upper case letter")); - if (QDeclarativeEnginePrivate::get(engine)->globalClass->illegalNames().contains(prop.name)) + if (QDeclarativeEnginePrivate::get(engine)->globalClass->illegalNames().contains(propName)) COMPILE_EXCEPTION(&prop, tr("Illegal property name")); propNames.insert(prop.name); @@ -2228,9 +2229,10 @@ bool QDeclarativeCompiler::checkDynamicMeta(QDeclarativeParser::Object *obj) QByteArray name = obj->dynamicSignals.at(ii).name; if (methodNames.contains(name)) COMPILE_EXCEPTION(obj, tr("Duplicate signal name")); - if (QString::fromUtf8(name).at(0).isUpper()) + QString nameStr = QString::fromUtf8(name); + if (nameStr.at(0).isUpper()) COMPILE_EXCEPTION(obj, tr("Signal names cannot begin with an upper case letter")); - if (QDeclarativeEnginePrivate::get(engine)->globalClass->illegalNames().contains(name)) + if (QDeclarativeEnginePrivate::get(engine)->globalClass->illegalNames().contains(nameStr)) COMPILE_EXCEPTION(obj, tr("Illegal signal name")); methodNames.insert(name); } @@ -2238,9 +2240,10 @@ bool QDeclarativeCompiler::checkDynamicMeta(QDeclarativeParser::Object *obj) QByteArray name = obj->dynamicSlots.at(ii).name; if (methodNames.contains(name)) COMPILE_EXCEPTION(obj, tr("Duplicate method name")); - if (QString::fromUtf8(name).at(0).isUpper()) + QString nameStr = QString::fromUtf8(name); + if (nameStr.at(0).isUpper()) COMPILE_EXCEPTION(obj, tr("Method names cannot begin with an upper case letter")); - if (QDeclarativeEnginePrivate::get(engine)->globalClass->illegalNames().contains(name)) + if (QDeclarativeEnginePrivate::get(engine)->globalClass->illegalNames().contains(nameStr)) COMPILE_EXCEPTION(obj, tr("Illegal method name")); methodNames.insert(name); } -- cgit v0.12 From bbd444559359df3e211fedb28d40b175af778030 Mon Sep 17 00:00:00 2001 From: Aaron McCarthy <aaron.mccarthy@nokia.com> Date: Fri, 6 Aug 2010 10:55:23 +1000 Subject: Update def files for d524da81ee257a6bd67d32d0bc870280a7d5b8a4. --- src/s60installs/eabi/QtNetworku.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/s60installs/eabi/QtNetworku.def b/src/s60installs/eabi/QtNetworku.def index 6b34a19..2442ee8 100644 --- a/src/s60installs/eabi/QtNetworku.def +++ b/src/s60installs/eabi/QtNetworku.def @@ -1131,7 +1131,7 @@ EXPORTS _ZNK21QNetworkAccessManager13configurationEv @ 1130 NONAME _ZNK21QNetworkAccessManager17networkAccessibleEv @ 1131 NONAME _ZNK21QNetworkAccessManager19activeConfigurationEv @ 1132 NONAME - _ZNK21QNetworkConfiguration10bearerNameEv @ 1133 NONAME ABSENT + _ZNK21QNetworkConfiguration10bearerNameEv @ 1133 NONAME _ZNK21QNetworkConfiguration10identifierEv @ 1134 NONAME _ZNK21QNetworkConfiguration18isRoamingAvailableEv @ 1135 NONAME _ZNK21QNetworkConfiguration4nameEv @ 1136 NONAME -- cgit v0.12 From 97f64280e37f29bdeb92d6de55fac56b1ff37084 Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Fri, 6 Aug 2010 12:11:36 +1000 Subject: Fix index page Task-number: QTBUG-12703 --- doc/src/declarative/declarativeui.qdoc | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc index 217e372..1fc9d69 100644 --- a/doc/src/declarative/declarativeui.qdoc +++ b/doc/src/declarative/declarativeui.qdoc @@ -41,11 +41,10 @@ and netbooks. Qt Quick consists of the QtDeclarative C++ module, QML, and the integration of both of these into the Qt Creator IDE. Using the QtDeclarative C++ module, you can load and interact with QML files from your Qt application. -QML is an extension to \l -{http://www.ecma-international.org/publications/standards/Ecma-262.htm} -{JavaScript}, that provides a mechanism to declaratively build an -object tree of \l {QML Elements}{QML elements}. QML improves the -integration between JavaScript and Qt's existing QObject based type +QML provides mechanisms to declaratively build an object tree using +\l {QML Elements}{QML elements}. QML improves the integration between +{http://www.ecma-international.org/publications/standards/Ecma-262.htm}{JavaScript} +and Qt's existing QObject based type system, adds support for automatic \l {Property Binding}{property bindings} and provides \l {Network Transparency}{network transparency} at the language level. @@ -87,11 +86,11 @@ application or to build completely new applications. QML is fully \l \o \l {qdeclarativemodules.html}{Modules} \o \l {Extending types from QML} \o \l {qdeclarativedynamicobjects.html}{Dynamic Object Creation} -\o \l {qmlruntime.html}{The Qt Declarative Runtime} \endlist \section1 Using QML with C++ \list +\o \l {qmlruntime.html}{The Qt Declarative Runtime} \o \l {Using QML in C++ Applications} \o \l {Integrating QML with existing Qt UI code} \o \l {Tutorial: Writing QML extensions with C++} -- cgit v0.12 From 94b1c07c31ab84d30b198cb23291a48f98164827 Mon Sep 17 00:00:00 2001 From: Michael Brasser <michael.brasser@nokia.com> Date: Fri, 6 Aug 2010 13:39:10 +1000 Subject: Top-level QML item should not have special focus handling. It's the scene itself that acts as a focus scope, not the top-level item. Task-number: QTBUG-12682 Reviewed-by: Aaron Kennedy --- src/declarative/graphicsitems/qdeclarativeitem.cpp | 11 ++++------- .../qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp | 2 +- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp index 5b74129..ff05997 100644 --- a/src/declarative/graphicsitems/qdeclarativeitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp @@ -3196,8 +3196,7 @@ bool QDeclarativeItem::hasActiveFocus() const { Q_D(const QDeclarativeItem); return focusItem() == this || - (d->flags & QGraphicsItem::ItemIsFocusScope && focusItem() != 0) || - (!parentItem() && focusItem() != 0); + (d->flags & QGraphicsItem::ItemIsFocusScope && focusItem() != 0); } /*! @@ -3217,10 +3216,8 @@ bool QDeclarativeItem::hasActiveFocus() const } \endqml - For the purposes of this property, the top level item in the scene - is assumed to act like a focus scope, and to always have active focus - when the scene has focus. On a practical level, that means the following - QML will give active focus to \c input on startup. + For the purposes of this property, the scene as a whole is assumed to act like a focus scope. + On a practical level, that means the following QML will give active focus to \c input on startup. \qml Rectangle { @@ -3246,7 +3243,7 @@ bool QDeclarativeItem::hasFocus() const p = p->parentItem(); } - return hasActiveFocus() ? true : (!QGraphicsItem::parentItem() ? true : false); + return hasActiveFocus(); } /*! \internal */ diff --git a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp index b138f61..ec8f048 100644 --- a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp +++ b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp @@ -336,7 +336,7 @@ void tst_qdeclarativefocusscope::noParentFocus() view->setSource(QUrl::fromLocalFile(SRCDIR "/data/chain.qml")); QVERIFY(view->rootObject()); - QVERIFY(view->rootObject()->property("focus1") == true); + QVERIFY(view->rootObject()->property("focus1") == false); QVERIFY(view->rootObject()->property("focus2") == false); QVERIFY(view->rootObject()->property("focus3") == true); QVERIFY(view->rootObject()->property("focus4") == true); -- cgit v0.12 From ea8cf9c20f5b22c88bda1615b8a37013a1efbc3c Mon Sep 17 00:00:00 2001 From: Alan Alpert <alan.alpert@nokia.com> Date: Fri, 6 Aug 2010 15:14:27 +1000 Subject: Revert "Doc: Adding GS QML example files" This reverts commit f13ebf52a0d091c6c72c97d2a13311e1e7c4a5cf. The given example does not meet the autotest requirements for QML examples. These involve that it starts without error messages, and that it follows our naming convention of the start file starting with a lowercase letter. Please run the tests/auto/declarative/examples before pushing new declarative examples. If new examples should be exempted from these checks, add them to the list of exceptions in that autotest. --- .../tutorials/gettingStarted/gsQml/TextEditor.qml | 129 ------------ .../tutorials/gettingStarted/gsQml/core/Button.qml | 110 ---------- .../gettingStarted/gsQml/core/EditMenu.qml | 111 ---------- .../gettingStarted/gsQml/core/FileDialog.qml | 170 --------------- .../gettingStarted/gsQml/core/FileMenu.qml | 232 --------------------- .../gettingStarted/gsQml/core/MenuBar.qml | 148 ------------- .../gettingStarted/gsQml/core/TextArea.qml | 86 -------- .../tutorials/gettingStarted/gsQml/core/qmldir | 48 ----- .../gettingStarted/gsQml/filedialog/cppPlugins.pro | 17 -- .../gsQml/filedialog/dialogPlugin.cpp | 57 ----- .../gettingStarted/gsQml/filedialog/dialogPlugin.h | 57 ----- .../gettingStarted/gsQml/filedialog/directory.cpp | 219 ------------------- .../gettingStarted/gsQml/filedialog/directory.h | 108 ---------- .../gettingStarted/gsQml/filedialog/file.cpp | 57 ----- .../gettingStarted/gsQml/filedialog/file.h | 67 ------ .../gettingStarted/gsQml/filedialog/qmldir | 1 - .../gettingStarted/gsQml/images/arrow.png | Bin 583 -> 0 bytes .../gettingStarted/gsQml/images/qt-logo.png | Bin 5149 -> 0 bytes .../gsQml/pics/qml-texteditor5_editmenu.png | Bin 65123 -> 0 bytes .../gsQml/pics/qml-texteditor5_filemenu.png | Bin 21367 -> 0 bytes .../gsQml/pics/qml-texteditor5_newfile.png | Bin 76693 -> 0 bytes 21 files changed, 1617 deletions(-) delete mode 100644 examples/tutorials/gettingStarted/gsQml/TextEditor.qml delete mode 100644 examples/tutorials/gettingStarted/gsQml/core/Button.qml delete mode 100644 examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml delete mode 100644 examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml delete mode 100644 examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml delete mode 100644 examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml delete mode 100644 examples/tutorials/gettingStarted/gsQml/core/TextArea.qml delete mode 100644 examples/tutorials/gettingStarted/gsQml/core/qmldir delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/directory.h delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/file.h delete mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/qmldir delete mode 100644 examples/tutorials/gettingStarted/gsQml/images/arrow.png delete mode 100644 examples/tutorials/gettingStarted/gsQml/images/qt-logo.png delete mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png delete mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png delete mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png diff --git a/examples/tutorials/gettingStarted/gsQml/TextEditor.qml b/examples/tutorials/gettingStarted/gsQml/TextEditor.qml deleted file mode 100644 index 6ffdd6d..0000000 --- a/examples/tutorials/gettingStarted/gsQml/TextEditor.qml +++ /dev/null @@ -1,129 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt 4.7 -import "core" - -Rectangle{ - id: screen - width: 1000; height: 1000 - property int partition: height/3 - border.width: 1 - border.color: "#DCDCCC" - state: "DRAWER_CLOSED" - - //Item 1: MenuBar on the top portion of the screen - MenuBar{ - id:menuBar - height: screen.partition; width: screen.width - z:1 - } - //Item 2: The editable text area - TextArea{ - id:textArea - y:drawer.height - color: "#3F3F3F" - fontColor: "#DCDCCC" - height: partition*2; width:parent.width - } - //Item 3: The drawer handle - Rectangle{ - id:drawer - height:15; width: parent.width - border.color : "#6A6D6A" - border.width: 1 - z:1 - gradient: Gradient { - GradientStop { position: 0.0; color: "#8C8F8C" } - GradientStop { position: 0.17; color: "#6A6D6A" } - GradientStop { position: 0.77; color: "#3F3F3F" } - GradientStop { position: 1.0; color: "#6A6D6A" } - } - Image{ - id: arrowIcon - source: "images/arrow.png" - anchors.horizontalCenter: parent.horizontalCenter - - Behavior{NumberAnimation{property: "rotation";easing.type: Easing.OutExpo }} - } - - MouseArea{ - id: drawerMouseArea - anchors.fill:parent - hoverEnabled: true - onEntered: parent.border.color = Qt.lighter("#6A6D6A") - onExited: parent.border.color = "#6A6D6A" - onClicked:{ - if (screen.state == "DRAWER_CLOSED"){ - screen.state = "DRAWER_OPEN" - } - else if (screen.state == "DRAWER_OPEN"){ - screen.state = "DRAWER_CLOSED" - } - } - } - } - - states:[ - State{ - name: "DRAWER_OPEN" - PropertyChanges { target: menuBar; y: 0} - PropertyChanges { target: textArea; y: partition + drawer.height} - PropertyChanges { target: drawer; y: partition} - PropertyChanges { target: arrowIcon; rotation: 180} - }, - State{ - name: "DRAWER_CLOSED" - PropertyChanges { target: menuBar; y:-height; } - PropertyChanges { target: textArea; y: drawer.height; height: screen.height - drawer.height} - PropertyChanges { target: drawer; y: 0} - PropertyChanges { target: arrowIcon; rotation: 0} - } - ] - - transitions: [ - Transition{ - to: "*" - NumberAnimation { target: textArea; properties: "y, height"; duration: 100; easing.type:Easing.OutExpo } - NumberAnimation { target: menuBar; properties: "y"; duration: 100;easing.type: Easing.OutExpo } - NumberAnimation { target: drawer; properties: "y"; duration: 100;easing.type: Easing.OutExpo } - } - ] -} diff --git a/examples/tutorials/gettingStarted/gsQml/core/Button.qml b/examples/tutorials/gettingStarted/gsQml/core/Button.qml deleted file mode 100644 index 28ae4ec..0000000 --- a/examples/tutorials/gettingStarted/gsQml/core/Button.qml +++ /dev/null @@ -1,110 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -import Qt 4.7 - -Rectangle { - - //identifier of the item - id: button - - //these properties act as constants, useable outside this QML file - property int buttonHeight: 75 - property int buttonWidth: 150 - - //attaches to the Text element's text content - property string label - property color textColor: buttonLabel.color - - //the color highlight when the mouse hovers on the rectangle - property color onHoverColor: "lightsteelblue" - property color borderColor: "transparent" - - //buttonColor is set to the button's main color - property color buttonColor: "lightblue" - - property real labelSize: 14 - //set appearance properties - radius:6 - smooth: true - border.width: 2 - border.color: borderColor - width: buttonWidth; height: buttonHeight - - Text{ - id: buttonLabel - anchors.centerIn: parent - text: label //bind the text to the parent's text - color: "#DCDCCC" - font.pointSize: labelSize - } - - //buttonClick() is callable and a signal handler, onButtonClick is automatically created - signal buttonClick() - - //define the clickable area to be the whole rectangle - MouseArea{ - id: buttonMouseArea - anchors.fill: parent //stretch the area to the parent's dimension - onClicked: buttonClick() - - //if true, then onEntered and onExited called if mouse hovers in the mouse area - //if false, a button must be clicked to detect the mouse hover - hoverEnabled: true - - //display a border if the mouse hovers on the button mouse area - onEntered: parent.border.color = onHoverColor - //remove the border if the mouse exits the button mouse area - onExited: parent.border.color = borderColor - - } - - //change the color of the button when pressed - color: buttonMouseArea.pressed ? Qt.darker(buttonColor, 1.5) : buttonColor - //animate the color whenever the color property changes - Behavior on color { ColorAnimation{ duration: 55} } - - //scale the button when pressed - scale: buttonMouseArea.pressed ? 1.1 : 1.00 - //Animate the scale property change - Behavior on scale { NumberAnimation{ duration: 55} } - -} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml b/examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml deleted file mode 100644 index be9f6a1..0000000 --- a/examples/tutorials/gettingStarted/gsQml/core/EditMenu.qml +++ /dev/null @@ -1,111 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -import Qt 4.7 - -Rectangle{ - id: editMenu - height: 480; width:1000 - color: "powderblue" - property color buttonBorderColor: "#7A8182" - property color buttonFillColor: "#61BDCACD" - property string menuName:"Edit" - - gradient: Gradient{ - GradientStop { position: 0.0; color: "#6A7570" } - GradientStop { position: 1.0; color: Qt.darker("#6A7570") } - } - - Rectangle{ - id:actionContainer - color:"transparent" - anchors.centerIn: parent - width: parent.width; height: parent.height / 5 - Row{ - anchors.centerIn: parent - spacing: parent.width/9 - Button{ - id: loadButton - buttonColor: buttonFillColor - label: "Copy" - labelSize:16 - borderColor:buttonBorderColor - height: actionContainer.height - width: actionContainer.width/6 - onButtonClick:textArea.copy() - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } - GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } - } - } - - Button{ - id: saveButton - height: actionContainer.height - width: actionContainer.width/6 - buttonColor: buttonFillColor - label: "Paste" - borderColor:buttonBorderColor - labelSize:16 - onButtonClick:textArea.paste() - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } - GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } - } - } - Button{ - id: exitButton - label: "Select All" - height: actionContainer.height - width: actionContainer.width/6 - labelSize:16 - buttonColor: buttonFillColor - borderColor:buttonBorderColor - onButtonClick:textArea.selectAll() - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } - GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } - } - } - } - } - -} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml b/examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml deleted file mode 100644 index 9948a27..0000000 --- a/examples/tutorials/gettingStarted/gsQml/core/FileDialog.qml +++ /dev/null @@ -1,170 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt 4.7 - -Rectangle{ - id:dialog - height: 200 * partition; width: 200 - color: "transparent" - - signal selectChanged() - signal notifyRefresh() - onNotifyRefresh:dirView.model = directory.files - - property string selectedFile - property int selectedIndex: 0 - - Rectangle{ - id: dirBox - radius: 10 - anchors.centerIn:parent - height: parent.height -15; width: parent.width -30 - - Rectangle{ - id:header - height:parent.height*0.1 - width: parent.width - radius:3 - z:1 - gradient: Gradient { - GradientStop { position: 0.0; color: "#8C8F8C" } - GradientStop { position: 0.17; color: "#6A6D6A" } - GradientStop { position: 0.98;color: "#3F3F3F" } - GradientStop { position: 1.0; color: "#0e1B20" } - } - Text{ - height: header.height - anchors.centerIn: header - text: "files:" - color: "lightblue" - font.weight: Font.Light - font.italic: true - } - } - GridView{ - id:dirView - width:parent.width - height:parent.height*.9 - anchors.top: header.bottom - cellWidth: 100 - cellHeight: 75 -// highlight: Rectangle { width:cellWidth; height: cellHeight; color: "lightsteelblue" ;radius: 13} - model: directory.files - delegate: dirDelegate - clip: true - highlightMoveDuration:40 - } - - Component{ - id:dirDelegate - - Rectangle{ - id:file - color: "transparent" - width: GridView.view.cellWidth; height: GridView.view.cellHeight - - Text{ - id:fileName - width: parent.width - anchors.centerIn:parent - text: name - color: "#BDCACD" - font.weight: GridView.view.currentIndex == index ? Font.DemiBold : Font.Normal - font.pointSize: GridView.view.currentIndex == index ? 12 : 10 - elide: Text.ElideMiddle - horizontalAlignment: Text.AlignHCenter - } - Rectangle{ - id:selection - width:parent.width; height:parent.height - anchors.centerIn: parent - radius: 10 - smooth: true - scale: GridView.view.currentIndex == index ? 1 : 0.5 - opacity: GridView.view.currentIndex == index ? 1 : 0 - Text{ - id:overlay - width: parent.width - anchors.centerIn:parent - text: name - color: "#696167" - font.weight: Font.DemiBold - font.pointSize: 12 - smooth:true - elide: Text.ElideMiddle - horizontalAlignment: Text.AlignHCenter - } - Behavior on opacity{ NumberAnimation{ duration: 45} } - Behavior on scale { NumberAnimation{ duration: 45} } - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter("lightsteelblue",1.25) } - GradientStop { position: 0.67; color: Qt.darker("lightsteelblue",1.3) } - } - border.color:"lightsteelblue" - border.width:1 - } - MouseArea{ - id:fileMouseArea - anchors.fill:parent - hoverEnabled: true - - onClicked:{ - GridView.view.currentIndex = index - selectedFile = directory.files[index].name - selectChanged() - } - onEntered:{ - fileName.color = "lightsteelblue" - fileName.font.weight = Font.DemiBold - } - onExited: { - fileName.font.weight = Font.Normal - fileName.color = "#BDCACD" - } - } - } - } - gradient: Gradient{ - GradientStop { position: 0.0; color: "#A5333333" } - GradientStop { position: 1.0; color: "#03333333" } - } - } -} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml b/examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml deleted file mode 100644 index 20d8fd6..0000000 --- a/examples/tutorials/gettingStarted/gsQml/core/FileMenu.qml +++ /dev/null @@ -1,232 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt 4.7 - -Rectangle{ - id: fileMenu - height: 480; width:1000 - property color buttonBorderColor: "#7F8487" - property color buttonFillColor: "#8FBDCACD" - property string fileContent:directory.fileContent - - //the menuName is accessible from outside this QML file - property string menuName: "File" - - //used to divide the screen into parts. - property real partition: 1/3 - - color: "#6C646A" - gradient: Gradient{ - GradientStop { position: 0.0; color: "#6C646A" } - GradientStop { position: 1.0; color: Qt.darker("#6A6D6A") } - } - - Directory{ - id:directory - filename: textInput.text - onDirectoryChanged:fileDialog.notifyRefresh() - } - - Rectangle{ - id:actionContainer - - //make this rectangle invisible - color:"transparent" - anchors.left: parent.left - - //the height is a good proportion that creates more space at the top of the column of buttons - width: fileMenu.width * partition; height: fileMenu.height - - Column{ - anchors.centerIn: parent - spacing: parent.height/32 - Button{ - id: saveButton - label: "Save" - borderColor: buttonBorderColor - buttonColor: buttonFillColor - width: actionContainer.width/ 1.3 - height:actionContainer.height / 8 - labelSize:24 - onButtonClick:{ - directory.fileContent = textArea.textContent - directory.filename = textInput.text - directory.saveFile() - } - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } - GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } - } - - } - Button{ - id: loadButton - width: actionContainer.width/ 1.3 - height:actionContainer.height/ 8 - buttonColor: buttonFillColor - borderColor: buttonBorderColor - label: "Load" - labelSize:24 - onButtonClick:{ - directory.filename = textInput.text - directory.loadFile() - textArea.textContent = directory.fileContent - } - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } - GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } - } - } - Button{ - id: newButton - width: actionContainer.width/ 1.3 - height:actionContainer.height/ 8 - buttonColor: buttonFillColor - borderColor: buttonBorderColor - label: "New" - labelSize:24 - onButtonClick:{ - textArea.textContent = "" - textInput.text = "" - } - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } - GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } - } - - } - Rectangle{ - id: space - width: actionContainer.width/ 1.3 - height:actionContainer.height / 16 - color:"transparent" - } - Button{ - id: exitButton - width: actionContainer.width/ 1.3 - height:actionContainer.height/ 8 - label: "Exit" - labelSize:24 - buttonColor: buttonFillColor - borderColor: buttonBorderColor - onButtonClick:Qt.quit() - gradient: Gradient { - GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } - GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } - } - } - } - } - - Rectangle{ - id:dialogContainer - - width: 2*fileMenu.width * partition; height: fileMenu.height - anchors.right:parent.right - color:"transparent" - - Column { - anchors.centerIn: parent - spacing: parent.height /640 - FileDialog{ - id:fileDialog - height: 2*dialogContainer.height * partition; width: dialogContainer.width - onSelectChanged: textInput.text = selectedFile - } - - Rectangle{ - id:lowerPartition - height: dialogContainer.height * partition; width: dialogContainer.width - color: "transparent" - - Rectangle{ - id: nameField - gradient: Gradient{ - GradientStop { position: 0.0; color: "#806F6F6F" } - GradientStop { position: 1.0; color: "#136F6F6F" } - } - - radius: 10 - anchors {centerIn:parent; leftMargin: 15; rightMargin: 15; topMargin: 15} - height: parent.height-15; width: parent.width -20 - border {color:"#4A4A4A"; width:1} - - TextInput{ - id: textInput - z:2 - anchors {bottom: parent.bottom; topMargin: 10; horizontalCenter:parent.horizontalCenter} - width: parent.width - 10 - height: parent.height -10 - font.pointSize: 40 - color:"lightsteelblue" - focus:true - } - Text{ - id: textInstruction - anchors.centerIn:parent - text: "Select file name and press save or load" - font {pointSize: 11; weight:Font.Light; italic: true} - color: "lightblue" - z:2 - opacity: (textInput.text == "") ? 1: 0 - } - Text{ - id:fieldLabel - anchors {top: parent.top; left: parent.left} - text: " file name: " - font {pointSize: 11; weight: Font.Light; italic: true} - color: "lightblue" - z:2 - } - MouseArea{ - anchors.centerIn:parent - width: nameField.width; height: nameField.height - onClicked:{ - textInput.text = "" - textInput.focus = true - textInput.forceFocus() - } - } - } - } - } - } -} diff --git a/examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml b/examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml deleted file mode 100644 index c387f5f..0000000 --- a/examples/tutorials/gettingStarted/gsQml/core/MenuBar.qml +++ /dev/null @@ -1,148 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt 4.7 - -Rectangle { - id: menuBar - width: 1000; height:300 - color:"transparent" - property color fileColor: "plum" - property color editColor: "powderblue" - - property real partition: 1/10 - - Column{ - anchors.fill: parent - //container for the header and the buttons - z: 1 - Rectangle{ - id: labelList - height:menuBar.height*partition - width: menuBar.width - color: "beige" - gradient: Gradient { - GradientStop { position: 0.0; color: "#8C8F8C" } - GradientStop { position: 0.17; color: "#6A6D6A" } - GradientStop { position: 0.98;color: "#3F3F3F" } - GradientStop { position: 1.0; color: "#0e1B20" } - } - Text{ - height: parent.height - anchors {right: labelRow.left ; verticalCenter: parent.bottom} - text: "menu: " - color: "lightblue" - font {weight: Font.Light; italic: true} - smooth: true - } - - //row displays its children in a vertical row - Row{ - id: labelRow - anchors.centerIn: parent - spacing:40 - Button{ - id: fileButton - height: 20; width: 50 - label: "File" - buttonColor : menuListView.currentIndex == 0? fileColor : Qt.darker(fileColor, 1.5) - scale: menuListView.currentIndex == 0? 1.25: 1 - labelSize: menuListView.currentIndex == 0? 16:12 - radius: 1 - smooth:true - //on a button click, change the list's currently selected item to FileMenu - onButtonClick: menuListView.currentIndex = 0 - gradient: Gradient{ - GradientStop { position: 0.0; color: fileColor } - GradientStop { position: 1.0; color: "#136F6F6F" } - } - } - Button{ - id: editButton - height: 20; width: 50 - buttonColor : menuListView.currentIndex == 1? Qt.darker(editColor, 1.5) : Qt.darker(editColor, 1.9) - scale: menuListView.currentIndex == 1? 1.25: 1 - label: "Edit" - radius: 1 - labelSize: menuListView.currentIndex == 1? 16:12 - smooth:true - //on a button click, change the list's currently selected item to EditMenu - onButtonClick: menuListView.currentIndex = 1 - gradient: Gradient{ - GradientStop { position: 0.0; color: editColor } - GradientStop { position: 1.0; color: "#136F6F6F" } - } - } - } - } - - //list view will display a model according to a delegate - ListView{ - id: menuListView - width:menuBar.width; height: 9*menuBar.height*partition - - //the model contains the data - model: menuListModel - - //control the movement of the menu switching - snapMode: ListView.SnapOneItem - orientation: ListView.Horizontal - boundsBehavior: Flickable.StopAtBounds - flickDeceleration: 5000 - highlightFollowsCurrentItem: true - highlightMoveDuration:240 - highlightRangeMode: ListView.StrictlyEnforceRange - } - } - //a list of visual items already have delegates handling their display - VisualItemModel{ - id: menuListModel - - FileMenu{ - id:fileMenu - width: menuListView.width; height: menuListView.height - color: fileColor - } - EditMenu{ - color: editColor - width: menuListView.width; height: menuListView.height - } - } -} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/TextArea.qml b/examples/tutorials/gettingStarted/gsQml/core/TextArea.qml deleted file mode 100644 index 3953d9f..0000000 --- a/examples/tutorials/gettingStarted/gsQml/core/TextArea.qml +++ /dev/null @@ -1,86 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt 4.7 - -Rectangle{ - id:textArea - - function paste(){ textEdit.paste()} - function copy() { textEdit.copy() } - function selectAll() { textEdit.selectAll() } - - width :400; height:400 - - property color fontColor: "white" - property alias textContent: textEdit.text - Flickable{ - id: flickArea - width: parent.width; height: parent.height - anchors.fill:parent - - boundsBehavior: Flickable.StopAtBounds - flickableDirection: Flickable.HorizontalFlick - interactive: true - //Will move the text Edit area to make the area visible when scrolled with keyboard strokes - function ensureVisible(r){ - if (contentX >= r.x) - contentX = r.x; - else if (contentX+width <= r.x+r.width) - contentX = r.x+r.width-width; - if (contentY >= r.y) - contentY = r.y; - else if (contentY+height <= r.y+r.height) - contentY = r.y+r.height-height; - } - - TextEdit{ - id: textEdit - anchors.fill:parent - width:parent.width; height:parent.height - color:fontColor - focus: true - wrapMode: TextEdit.Wrap - font.pointSize:10 - onCursorRectangleChanged: flickArea.ensureVisible(cursorRectangle) - selectByMouse: true - } - } -} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/qmldir b/examples/tutorials/gettingStarted/gsQml/core/qmldir deleted file mode 100644 index 1beb5ed..0000000 --- a/examples/tutorials/gettingStarted/gsQml/core/qmldir +++ /dev/null @@ -1,48 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -Button ./Button.qml -FileDialog ./FileDialog.qml -TextArea ./TextArea.qml -TextEditor ./TextEditor.qml -EditMenu ./EditMenu.qml -MenuBar ./MenuBar.qml - -plugin FileDialog ../plugins diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro b/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro deleted file mode 100644 index 6247747..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro +++ /dev/null @@ -1,17 +0,0 @@ -TEMPLATE = lib -CONFIG += qt plugin -QT += declarative - -DESTDIR += ../plugins -OBJECTS_DIR = tmp -MOC_DIR = tmp - -TARGET = FileDialog - -HEADERS += directory.h \ - file.h \ - dialogPlugin.h - -SOURCES += directory.cpp \ - file.cpp \ - dialogPlugin.cpp diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp deleted file mode 100644 index c0132c0..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "dialogPlugin.h" -#include "directory.h" -#include "file.h" -#include <QtDeclarative/qdeclarative.h> - -void DialogPlugin::registerTypes(const char *uri){ - - //register the class Directory into QML as a "Directory" element version 1.0 - qmlRegisterType<Directory>(uri, 1, 0, "Directory"); - qmlRegisterType<File>(uri,1,0,"File"); - - //qRegisterMetaType<QDeclarativeListProperty<QString> > ("QDeclarativeListProperty<QString>"); - -} - -//FileDialog is the plugin name (same as the TARGET in the project file) and DialogPlugin is the plugin classs -Q_EXPORT_PLUGIN2(FileDialog, DialogPlugin); \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h deleted file mode 100644 index 7f8d3ff..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h +++ /dev/null @@ -1,57 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef DIALOGPLUGIN_H -#define DIALOGPLUGIN_H - -#include <QtDeclarative/QDeclarativeExtensionPlugin> - -class DialogPlugin : public QDeclarativeExtensionPlugin -{ - Q_OBJECT - - public: - //registerTypes is inherited from QDeclarativeExtensionPlugin - void registerTypes(const char *uri); - -}; - -#endif - diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp deleted file mode 100644 index b3e0256..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp +++ /dev/null @@ -1,219 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "directory.h" -#include <QDebug> - -/* -Directory constructor - -Initialize the saves directory and creates the file list -*/ -Directory::Directory(QObject *parent) : QObject(parent) -{ - - - m_dir.cd( QDir::currentPath()); - - //go to the saved directory. if not found, create save directory - m_saveDir = "saves"; - if (m_dir.cd(m_saveDir) == 0){ - m_dir.mkdir(m_saveDir); - m_dir.cd(m_saveDir); - } - m_filterList << "*.txt"; - - refresh(); -} - -/* -Directory::filesNumber -Return the number of Files -*/ -int Directory:: filesCount() const{ - return m_fileList.size(); -} - -/* -Function called to append data onto list property -*/ -void appendFiles(QDeclarativeListProperty<File> * property, File * file){ - //Do nothing. can't add to a directory using this method -} - -/* -Function called to retrieve file in the list using an index -*/ -File* fileAt(QDeclarativeListProperty<File> * property, int index){ - return static_cast< QList<File *> *>(property->data)->at(index); -} - -/* -Returns the number of files in the list -*/ -int filesSize(QDeclarativeListProperty<File> * property){ - return static_cast< QList<File *> *>(property->data)->size(); -} - -/* -Function called to empty the list property contents -*/ -void clearFilesPtr(QDeclarativeListProperty<File> *property){ - return static_cast< QList<File *> *>(property->data)->clear(); -} - -/* -Returns the list of files as a QDeclarativeListProperty. -*/ -QDeclarativeListProperty<File> Directory::files(){ - - refresh(); -// return QDeclarativeListProperty<QString>(this,m_filePtrList); //not recommended in the docs - return QDeclarativeListProperty<File>( this, &m_fileList, &appendFiles, &filesSize, &fileAt, &clearFilesPtr ); -} - -/* -Return te name of the currently selected file -*/ -QString Directory::filename() const{ - return currentFile.name(); -} - -/* -Return the file's content as a string. -*/ -QString Directory::fileContent() const{ - return m_fileContent; -} - -/* -Set the file name of the current file -*/ -void Directory::setFilename(const QString &str){ - if(str != currentFile.name()){ - currentFile.setName(str); - emit filenameChanged(); - } -} - -/* -Set the content of the file as a string -*/ -void Directory::setFileContent(const QString &str){ - if(str != m_fileContent){ - m_fileContent = str; - emit fileContentChanged(); - } -} - -/* -Called from QML to save the file using the filename and file content. -Saving makes sure that the file has a .txt extension. -*/ -void Directory::saveFile(){ - - if(currentFile.name().size() == 0){ - qWarning()<< "Empty filename. no save"; - return; - } - - QString extendedName = currentFile.name(); - if(!currentFile.name().endsWith(".txt")){ - extendedName.append(".txt"); - } - - QFile file( m_dir.filePath(extendedName) ); - if (file.open(QFile::WriteOnly | QFile::Truncate)){ - QTextStream outStream(&file); - outStream << m_fileContent; - } - file.close(); - refresh(); - emit directoryChanged(); -} - -/* -Load the contents of a file. -Only loads files with a .txt extension -*/ -void Directory::loadFile(){ - - m_fileContent.clear(); - QString extendedName = currentFile.name(); - if(!currentFile.name().endsWith(".txt")){ - extendedName.append(".txt"); - } - - QFile file( m_dir.filePath(extendedName) ); - if (file.open(QFile::ReadOnly )){ - QTextStream inStream(&file); - - QString line; - do{ - line = inStream.read(75); - m_fileContent.append(line); - }while (!line .isNull()); - } - file.close(); -} - -/* -Reloads the content of the files list. This is to ensure that the newly -created files are added onto the list. -*/ -void Directory::refresh(){ - m_dirFiles = m_dir.entryList(m_filterList,QDir::Files,QDir::Name); - m_fileList.clear(); - - File * file; - for(int i = 0; i < m_dirFiles.size() ; i ++){ - - file = new File(); - - if(m_dirFiles.at(i).endsWith(".txt")){ - QString name = m_dirFiles.at(i); - file->setName( name.remove(".txt",Qt::CaseSensitive)); - } - else{ - file->setName(m_dirFiles.at(i)); - } - m_fileList.append(file); - } -} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h deleted file mode 100644 index bef1a93..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h +++ /dev/null @@ -1,108 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef DIRECTORY_H -#define DIRECTORY_H - -#include "file.h" - -#include <QDir> -#include <QStringList> -#include <QTextStream> -#include <QDeclarativeListProperty> -#include <QObject> - -class Directory : public QObject{ - - Q_OBJECT - - //number of files in the directory - Q_PROPERTY(int filesCount READ filesCount) - - //list property containing file names as QString - Q_PROPERTY(QDeclarativeListProperty<File> files READ files CONSTANT ) - - //file name of the text file to read/write - Q_PROPERTY(QString filename READ filename WRITE setFilename NOTIFY filenameChanged) - - //text content of the file - Q_PROPERTY(QString fileContent READ fileContent WRITE setFileContent NOTIFY fileContentChanged) - - public: - Directory(QObject *parent = 0); - - //properties' read functions - int filesCount() const; - QString filename() const; - QString fileContent() const; - QDeclarativeListProperty<File> files(); - - //properties' write functions - void setFilename(const QString &str); - void setFileContent(const QString &str); - - //accessible from QML - Q_INVOKABLE void saveFile(); - Q_INVOKABLE void loadFile(); - - signals: - void directoryChanged(); - void filenameChanged(); - void fileContentChanged(); - - private: - QDir m_dir; - QStringList m_dirFiles; - File currentFile; - QString m_saveDir; - QStringList m_filterList; - - //contains the file data in QString format - QString m_fileContent; - - //Registered to QML in a plugin. Accessible from QML as a property of Directory - QList<File *> m_fileList; - - //refresh content of the directory - void refresh(); -}; - - -#endif diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp deleted file mode 100644 index 39a7469..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include "file.h" - -File::File(QObject *parent) : QObject(parent) -{ - m_name = ""; -} - -QString File::name() const{ - return m_name; -} -void File::setName(const QString &str){ - if(str != m_name){ - m_name = str; - emit nameChanged(); - } -} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/file.h b/examples/tutorials/gettingStarted/gsQml/filedialog/file.h deleted file mode 100644 index e4ba429..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/file.h +++ /dev/null @@ -1,67 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 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:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef FILE_H -#define FILE_H - - -#include <QString> -#include <QObject> - -class File : public QObject{ - - Q_OBJECT - - Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) - - public: - File(QObject *parent = 0); - - QString name() const; - void setName(const QString &str); - - signals: - void nameChanged(); - - private: - QString m_name; -}; - -#endif \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir b/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir deleted file mode 100644 index c2b27da..0000000 --- a/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir +++ /dev/null @@ -1 +0,0 @@ -plugin FileDialog plugins diff --git a/examples/tutorials/gettingStarted/gsQml/images/arrow.png b/examples/tutorials/gettingStarted/gsQml/images/arrow.png deleted file mode 100644 index 14978c2..0000000 Binary files a/examples/tutorials/gettingStarted/gsQml/images/arrow.png and /dev/null differ diff --git a/examples/tutorials/gettingStarted/gsQml/images/qt-logo.png b/examples/tutorials/gettingStarted/gsQml/images/qt-logo.png deleted file mode 100644 index 14ddf2a..0000000 Binary files a/examples/tutorials/gettingStarted/gsQml/images/qt-logo.png and /dev/null differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png deleted file mode 100644 index 27feed5..0000000 Binary files a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png and /dev/null differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png deleted file mode 100644 index 4d8f9f2..0000000 Binary files a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png and /dev/null differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png deleted file mode 100644 index 680acfe..0000000 Binary files a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png and /dev/null differ -- cgit v0.12 From 59e3430662cfdc3820115a2ff4c0b44829b3d1d4 Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Fri, 6 Aug 2010 16:32:19 +1000 Subject: Fix broken example code Task-number: QTBUG-12705 --- src/declarative/util/qdeclarativepropertymap.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/declarative/util/qdeclarativepropertymap.cpp b/src/declarative/util/qdeclarativepropertymap.cpp index 919727f..6b43040 100644 --- a/src/declarative/util/qdeclarativepropertymap.cpp +++ b/src/declarative/util/qdeclarativepropertymap.cpp @@ -104,22 +104,25 @@ void QDeclarativePropertyMapMetaObject::propertyCreated(int, QMetaPropertyBuilde The following example shows how you might declare data in C++ and then access it in QML. - Setup in C++: + In the C++ file: \code - //create our data + // create our data QDeclarativePropertyMap ownerData; ownerData.insert("name", QVariant(QString("John Smith"))); ownerData.insert("phone", QVariant(QString("555-5555"))); - //expose it to the UI layer - QDeclarativeContext *ctxt = view->rootContext(); - ctxt->setProperty("owner", &data); + // expose it to the UI layer + QDeclarativeView view; + QDeclarativeContext *ctxt = view.rootContext(); + ctxt->setContextProperty("owner", &ownerData); + + view.setSource(QUrl::fromLocalFile("main.qml")); + view.show(); \endcode - Then, in QML: + Then, in \c main.qml: \code - Text { text: owner.name } - Text { text: owner.phone } + Text { text: owner.name + " " + owner.phone } \endcode The binding is dynamic - whenever a key's value is updated, anything bound to that -- cgit v0.12 From 4808151512faef0d78152905885bd3009b89c1a6 Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Fri, 6 Aug 2010 09:42:28 +0200 Subject: Changed width of the document. Part of the fix for QTBUG-12180 --- doc/src/demos/spectrum.qdoc | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/doc/src/demos/spectrum.qdoc b/doc/src/demos/spectrum.qdoc index 944f944..b720ce1 100644 --- a/doc/src/demos/spectrum.qdoc +++ b/doc/src/demos/spectrum.qdoc @@ -28,12 +28,8 @@ /*! \example demos/spectrum \title Spectrum Analyzer - -This application is a demo which uses the QtMultimedia APIs to capture and -play back PCM audio. While either recording or playback is ongoing, the -application performs real-time level and frequency spectrum analysis, +This application is a demo which uses the QtMultimedia APIs to capture and +play back PCM audio. While either recording or playback is ongoing, the +application performs real-time level and frequency spectrum analysis, displaying the results in its main window. - - */ - -- cgit v0.12 From 7f59bc3c7f13058e2b8fca076072e99136dd4648 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen <miikka.heikkinen@digia.com> Date: Thu, 5 Aug 2010 13:00:36 +0300 Subject: Fix run and runonphone targets for projects that have TARGET with path Sis files are always generated in the pro file directory even if TARGET indicates another target directory. Reviewed-by: axis --- mkspecs/features/symbian/run_on_phone.prf | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/mkspecs/features/symbian/run_on_phone.prf b/mkspecs/features/symbian/run_on_phone.prf index 818151a..f77369c 100644 --- a/mkspecs/features/symbian/run_on_phone.prf +++ b/mkspecs/features/symbian/run_on_phone.prf @@ -13,23 +13,25 @@ else:!equals(DEPLOYMENT, default_deployment) { equals(GENERATE_RUN_TARGETS, true) { symbian-abld|symbian-sbsv2 { sis_destdir = + sis_file = $$basename(TARGET).sis } else { sis_destdir = $$DESTDIR + sis_file = $${TARGET}.sis !isEmpty(sis_destdir):!contains(sis_destdir, "[/\\\\]$"):sis_destdir = $${sis_destdir}/ contains(QMAKE_HOST.os, "Windows"):sis_destdir = $$replace(sis_destdir, "/", "\\") } contains(SYMBIAN_PLATFORMS, "WINSCW"):contains(TEMPLATE, "app") { run_target.target = run - run_target.commands = call "$${EPOCROOT}epoc32/release/winscw/udeb/$${TARGET}.exe" $(QT_RUN_OPTIONS) + run_target.commands = call "$${EPOCROOT}epoc32/release/winscw/udeb/$$basename(TARGET).exe" $(QT_RUN_OPTIONS) QMAKE_EXTRA_TARGETS += run_target } runonphone_target.target = runonphone runonphone_target.depends = sis - runonphone_target.commands = runonphone $(QT_RUN_ON_PHONE_OPTIONS) --sis "$${sis_destdir}$${TARGET}.sis" - contains(TEMPLATE, "app"):runonphone_target.commands += "$${TARGET}.exe" $(QT_RUN_OPTIONS) + runonphone_target.commands = runonphone $(QT_RUN_ON_PHONE_OPTIONS) --sis "$${sis_destdir}$${sis_file}" + contains(TEMPLATE, "app"):runonphone_target.commands += "$$basename(TARGET).exe" $(QT_RUN_OPTIONS) QMAKE_EXTRA_TARGETS += runonphone_target } -- cgit v0.12 From 64ca5d3ac1dc1b1e82c409cf011d97ca8f76f6ed Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen <miikka.heikkinen@digia.com> Date: Thu, 5 Aug 2010 14:55:27 +0300 Subject: Fix some autotest deployments to work in case Qt is already deployed Reviewed-by: Shane Kearns --- tests/auto/qdom/qdom.pro | 4 +++- tests/auto/qsvgrenderer/qsvgrenderer.pro | 4 +++- tests/auto/qtextcodec/test/test.pro | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/tests/auto/qdom/qdom.pro b/tests/auto/qdom/qdom.pro index 5434ada..9040b91 100644 --- a/tests/auto/qdom/qdom.pro +++ b/tests/auto/qdom/qdom.pro @@ -9,7 +9,9 @@ wince*|symbian: { addFiles.path = . DEPLOYMENT += addFiles - DEPLOYMENT_PLUGIN += qcncodecs qjpcodecs qkrcodecs qtwcodecs + wince*|qt_not_deployed { + DEPLOYMENT_PLUGIN += qcncodecs qjpcodecs qkrcodecs qtwcodecs + } !symbian:DEFINES += SRCDIR=\\\"\\\" } else { diff --git a/tests/auto/qsvgrenderer/qsvgrenderer.pro b/tests/auto/qsvgrenderer/qsvgrenderer.pro index 8cfbcce..0b785e3 100644 --- a/tests/auto/qsvgrenderer/qsvgrenderer.pro +++ b/tests/auto/qsvgrenderer/qsvgrenderer.pro @@ -13,6 +13,8 @@ wince*|symbian { addFiles.path = . DEPLOYMENT += addFiles - DEPLOYMENT_PLUGIN += qsvg + wince*|qt_not_deployed { + DEPLOYMENT_PLUGIN += qsvg + } } diff --git a/tests/auto/qtextcodec/test/test.pro b/tests/auto/qtextcodec/test/test.pro index efa2e85..b85032a 100644 --- a/tests/auto/qtextcodec/test/test.pro +++ b/tests/auto/qtextcodec/test/test.pro @@ -20,7 +20,9 @@ wince*|symbian { addFiles.sources = ../*.txt addFiles.path = . DEPLOYMENT += addFiles - DEPLOYMENT_PLUGIN += qcncodecs qjpcodecs qkrcodecs qtwcodecs + wince*|qt_not_deployed { + DEPLOYMENT_PLUGIN += qcncodecs qjpcodecs qkrcodecs qtwcodecs + } } wince*: { -- cgit v0.12 From bba4b0caa9865ee021a3e477e1bb861c56000f68 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen <miikka.heikkinen@digia.com> Date: Thu, 5 Aug 2010 15:53:44 +0300 Subject: Fix duplicate binary names issues in Symbian autotests In Symbian each binary name must be unique as all binaries are stored in the same directory on the device. Some autotests created helper binaries that had same names on different tests, which caused build and installation issues when building entire autotest project tree. Reviewed-by: Shane Kearns --- tests/auto/qfile/qfile.pro | 2 +- tests/auto/qpluginloader/lib/lib.pro | 2 +- tests/auto/qpluginloader/tst/tst.pro | 2 +- tests/auto/qpluginloader/tst_qpluginloader.cpp | 2 +- tests/auto/qtextcodec/qtextcodec.pro | 2 +- tests/auto/qtextcodec/tst_qtextcodec.cpp | 2 ++ tests/auto/qtextstream/qtextstream.pro | 3 ++- 7 files changed, 9 insertions(+), 6 deletions(-) diff --git a/tests/auto/qfile/qfile.pro b/tests/auto/qfile/qfile.pro index 0383e30..727f660 100644 --- a/tests/auto/qfile/qfile.pro +++ b/tests/auto/qfile/qfile.pro @@ -1,5 +1,5 @@ TEMPLATE = subdirs -wince*:{ +wince*|symbian:{ SUBDIRS = test } else { SUBDIRS = test stdinprocess diff --git a/tests/auto/qpluginloader/lib/lib.pro b/tests/auto/qpluginloader/lib/lib.pro index 96a9732..ce9bf13 100644 --- a/tests/auto/qpluginloader/lib/lib.pro +++ b/tests/auto/qpluginloader/lib/lib.pro @@ -2,7 +2,7 @@ TEMPLATE = lib CONFIG += dll CONFIG -= staticlib SOURCES = mylib.c -TARGET = mylib +TARGET = tst_qpluginloaderlib DESTDIR = ../bin QT = core diff --git a/tests/auto/qpluginloader/tst/tst.pro b/tests/auto/qpluginloader/tst/tst.pro index 2de0912..2d757e7 100644 --- a/tests/auto/qpluginloader/tst/tst.pro +++ b/tests/auto/qpluginloader/tst/tst.pro @@ -20,7 +20,7 @@ wince*: { } symbian: { - libDep.sources = mylib.dll + libDep.sources = tst_qpluginloaderlib.dll libDep.path = /sys/bin pluginDep.sources = theplugin.dll pluginDep.path = bin diff --git a/tests/auto/qpluginloader/tst_qpluginloader.cpp b/tests/auto/qpluginloader/tst_qpluginloader.cpp index 705e600..e913cb5 100644 --- a/tests/auto/qpluginloader/tst_qpluginloader.cpp +++ b/tests/auto/qpluginloader/tst_qpluginloader.cpp @@ -169,7 +169,7 @@ void tst_QPluginLoader::errorString() QCOMPARE(loader.errorString(), unknown); } { - QPluginLoader loader( sys_qualifiedLibraryName("mylib")); //not a plugin + QPluginLoader loader( sys_qualifiedLibraryName("tst_qpluginloaderlib")); //not a plugin bool loaded = loader.load(); #ifdef SHOW_ERRORS qDebug() << loader.errorString(); diff --git a/tests/auto/qtextcodec/qtextcodec.pro b/tests/auto/qtextcodec/qtextcodec.pro index 0bcf067..6cb13a9 100644 --- a/tests/auto/qtextcodec/qtextcodec.pro +++ b/tests/auto/qtextcodec/qtextcodec.pro @@ -1,4 +1,4 @@ TEMPLATE = subdirs SUBDIRS = test -!wince*:SUBDIRS += echo +!wince*:!symbian:SUBDIRS += echo diff --git a/tests/auto/qtextcodec/tst_qtextcodec.cpp b/tests/auto/qtextcodec/tst_qtextcodec.cpp index 0946c93..cc41591 100644 --- a/tests/auto/qtextcodec/tst_qtextcodec.cpp +++ b/tests/auto/qtextcodec/tst_qtextcodec.cpp @@ -1946,6 +1946,8 @@ void tst_QTextCodec::toLocal8Bit() { #ifdef QT_NO_PROCESS QSKIP("This test requires QProcess", SkipAll); +#elif defined(Q_OS_SYMBIAN) + QSKIP("This test requires streams support in QProcess", SkipAll); #else QProcess process; process.start("echo/echo"); diff --git a/tests/auto/qtextstream/qtextstream.pro b/tests/auto/qtextstream/qtextstream.pro index 8346d7f..a2dcc81 100644 --- a/tests/auto/qtextstream/qtextstream.pro +++ b/tests/auto/qtextstream/qtextstream.pro @@ -1,5 +1,6 @@ TEMPLATE = subdirs -SUBDIRS = test stdinProcess readAllStdinProcess readLineStdinProcess +SUBDIRS = test +!symbian: SUBDIRS += stdinProcess readAllStdinProcess readLineStdinProcess -- cgit v0.12 From f732113f45a918fcb39ed073f82bcf0de5b455b2 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen <miikka.heikkinen@digia.com> Date: Fri, 6 Aug 2010 10:40:16 +0300 Subject: Added $$MW_LAYER_SYSTEMINCLUDE to some autotests These autotests couldn't find e32svr.h in Symbian^3 env because that header has moved. Reviewed-by: TrustMe --- tests/auto/qfileinfo/qfileinfo.pro | 1 + tests/auto/qlocale/test/test.pro | 2 ++ tests/auto/qsslsocket/qsslsocket.pro | 1 + 3 files changed, 4 insertions(+) diff --git a/tests/auto/qfileinfo/qfileinfo.pro b/tests/auto/qfileinfo/qfileinfo.pro index ef5ed22..30656e2 100644 --- a/tests/auto/qfileinfo/qfileinfo.pro +++ b/tests/auto/qfileinfo/qfileinfo.pro @@ -16,6 +16,7 @@ wince*:|symbian: { symbian { TARGET.CAPABILITY=AllFiles LIBS *= -lefsrv + INCLUDEPATH *= $$MW_LAYER_SYSTEMINCLUDE # Needed for e32svr.h in S^3 envs } # support for running test from shadow build directory diff --git a/tests/auto/qlocale/test/test.pro b/tests/auto/qlocale/test/test.pro index e33d0fe..6512e19 100644 --- a/tests/auto/qlocale/test/test.pro +++ b/tests/auto/qlocale/test/test.pro @@ -37,3 +37,5 @@ symbian:contains(S60_VERSION,3.2) { "$${LITERAL_HASH}endif" MMP_RULES += custom_paged_rule } + +symbian: INCLUDEPATH *= $$MW_LAYER_SYSTEMINCLUDE # Needed for e32svr.h in S^3 envs diff --git a/tests/auto/qsslsocket/qsslsocket.pro b/tests/auto/qsslsocket/qsslsocket.pro index 3557fc8..accfa89 100644 --- a/tests/auto/qsslsocket/qsslsocket.pro +++ b/tests/auto/qsslsocket/qsslsocket.pro @@ -29,6 +29,7 @@ wince* { certFiles.sources = certs ssl.tar.gz certFiles.path = . DEPLOYMENT += certFiles + INCLUDEPATH *= $$MW_LAYER_SYSTEMINCLUDE # Needed for e32svr.h in S^3 envs } else { DEFINES += SRCDIR=\\\"$$PWD/\\\" } -- cgit v0.12 From 339270016bd8805b081f0b4ff550906a6bcfec5b Mon Sep 17 00:00:00 2001 From: Jani Hautakangas <ext-jani.hautakangas@nokia.com> Date: Fri, 6 Aug 2010 10:09:16 +0300 Subject: Register window types for Symbian system effects Set the purpose of the window (dialog/popup/child window etc...). Notify WServ when modal window is shown/hidden Notify WServ when temporary surface deallocation happens. Notify WServ when the application is going to shutdown. Task-number: QT-2027 Reviewed-by: Jason Barron --- src/gui/kernel/qapplication.h | 3 ++ src/gui/kernel/qapplication_p.h | 1 + src/gui/kernel/qapplication_s60.cpp | 58 ++++++++++++++++++++++++++++++++++++- 3 files changed, 61 insertions(+), 1 deletion(-) diff --git a/src/gui/kernel/qapplication.h b/src/gui/kernel/qapplication.h index 799d4c2..0242582 100644 --- a/src/gui/kernel/qapplication.h +++ b/src/gui/kernel/qapplication.h @@ -412,6 +412,9 @@ private: #if defined(QT_RX71_MULTITOUCH) Q_PRIVATE_SLOT(d_func(), void _q_readRX71MultiTouchEvents()) #endif +#if defined(Q_OS_SYMBIAN) + Q_PRIVATE_SLOT(d_func(), void _q_aboutToQuit()) +#endif }; QT_END_NAMESPACE diff --git a/src/gui/kernel/qapplication_p.h b/src/gui/kernel/qapplication_p.h index 53205b5..8dc16e0 100644 --- a/src/gui/kernel/qapplication_p.h +++ b/src/gui/kernel/qapplication_p.h @@ -519,6 +519,7 @@ public: int symbianHandleCommand(const QSymbianEvent *symbianEvent); int symbianResourceChange(const QSymbianEvent *symbianEvent); + void _q_aboutToQuit(); #endif #if defined(Q_WS_WIN) || defined(Q_WS_X11) || defined (Q_WS_QWS) || defined(Q_WS_MAC) void sendSyntheticEnterLeave(QWidget *widget); diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index 1f6a4ae..52f0db6 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -87,6 +87,10 @@ #include <hal.h> #include <hal_data.h> +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS +#include <graphics/wstfxconst.h> +#endif + QT_BEGIN_NAMESPACE // Goom Events through Window Server @@ -372,7 +376,7 @@ void QSymbianControl::ConstructL(bool isWindowOwning, bool desktop) { if (!desktop) { - if (isWindowOwning or !qwidget->parentWidget()) + if (isWindowOwning || !qwidget->parentWidget()) CreateWindowL(S60->windowGroup()); else /** @@ -395,6 +399,34 @@ void QSymbianControl::ConstructL(bool isWindowOwning, bool desktop) DrawableWindow()->SetPointerGrab(ETrue); } + +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + if (OwnsWindow()) { + TTfxWindowPurpose windowPurpose(ETfxPurposeNone); + switch (qwidget->windowType()) { + case Qt::Dialog: + windowPurpose = ETfxPurposeDialogWindow; + break; + case Qt::Popup: + windowPurpose = ETfxPurposePopupWindow; + break; + case Qt::Tool: + windowPurpose = ETfxPurposeToolWindow; + break; + case Qt::ToolTip: + windowPurpose = ETfxPurposeToolTipWindow; + break; + case Qt::SplashScreen: + windowPurpose = ETfxPurposeSplashScreenWindow; + break; + default: + windowPurpose = (isWindowOwning || !qwidget->parentWidget()) + ? ETfxPurposeWindow : ETfxPurposeChildWindow; + break; + } + Window().SetPurpose(windowPurpose); + } +#endif } QSymbianControl::~QSymbianControl() @@ -1483,6 +1515,10 @@ void qt_init(QApplicationPrivate * /* priv */, int) systemFont.setFamily(systemFont.defaultFamily()); QApplicationPrivate::setSystemFont(systemFont); +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + QObject::connect(qApp, SIGNAL(aboutToQuit()), qApp, SLOT(_q_aboutToQuit())); +#endif + /* ### Commented out for now as parameter handling not needed in SOS(yet). Code below will break testlib with -o flag int argc = priv->argc; @@ -1572,6 +1608,9 @@ bool QApplicationPrivate::modalState() void QApplicationPrivate::enterModal_sys(QWidget *widget) { +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + S60->wsSession().SendEffectCommand(ETfxCmdAppModalModeEnter); +#endif if (widget) { static_cast<QSymbianControl *>(widget->effectiveWinId())->FadeBehindPopup(ETrue); // Modal partial screen dialogs (like queries) capture pointer events. @@ -1587,6 +1626,9 @@ void QApplicationPrivate::enterModal_sys(QWidget *widget) void QApplicationPrivate::leaveModal_sys(QWidget *widget) { +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + S60->wsSession().SendEffectCommand(ETfxCmdAppModalModeExit); +#endif if (widget) { static_cast<QSymbianControl *>(widget->effectiveWinId())->FadeBehindPopup(EFalse); // ### FixMe: Add specialized behaviour for fullscreen modal dialogs @@ -1883,6 +1925,9 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent break; QRefCountedWidgetBackingStore &backingStore = window->d_func()->maybeTopData()->backingStore; if (visChangedEvent->iFlags & TWsVisibilityChangedEvent::ENotVisible) { +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + S60->wsSession().SendEffectCommand(ETfxCmdDeallocateLayer); +#endif // Decrement backing store reference count backingStore.deref(); // In order to ensure that any resources used by the window surface @@ -1893,6 +1938,9 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent // Increment backing store reference count backingStore.ref(); } else { +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + S60->wsSession().SendEffectCommand(ETfxCmdRestoreLayer); +#endif // Create backing store with an initial reference count of 1 backingStore.create(window); backingStore.ref(); @@ -2268,6 +2316,14 @@ void QApplication::restoreOverrideCursor() #endif // QT_NO_CURSOR +void QApplicationPrivate::_q_aboutToQuit() +{ +#ifdef SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS + // Send the shutdown tfx command + S60->wsSession().SendEffectCommand(ETfxCmdAppShutDown); +#endif +} + QS60ThreadLocalData::QS60ThreadLocalData() { CCoeEnv *env = CCoeEnv::Static(); -- cgit v0.12 From eb6d70eeeaaafb748a5fca38f6f033136aadf148 Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Fri, 6 Aug 2010 10:26:48 +0200 Subject: Test we do not have compiler warnings in our headers with more options I removed some statics because else the test could not be run several times Reviewed-by: Andreas Kling --- tests/auto/compilerwarnings/tst_compilerwarnings.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tests/auto/compilerwarnings/tst_compilerwarnings.cpp b/tests/auto/compilerwarnings/tst_compilerwarnings.cpp index 82c327a..8d344d8 100644 --- a/tests/auto/compilerwarnings/tst_compilerwarnings.cpp +++ b/tests/auto/compilerwarnings/tst_compilerwarnings.cpp @@ -114,6 +114,9 @@ void tst_CompilerWarnings::warnings_data() QTest::addColumn<QStringList>("cflags"); QTest::newRow("standard") << QStringList(); + QTest::newRow("warn deprecated, fast plus, no debug") << (QStringList() << "-DQT_DEPRECATED_WARNINGS" + << "-DQT_USE_FAST_OPERATOR_PLUS" << "-DQT_NU_DEBUG" << "-DQT_NO_DEBUG_STREAM" << "-DQT_NO_WARNING_OUTPUT"); + QTest::newRow("no deprecated, no keywords") << (QStringList() << "-DQT_NO_DEPRECATED" << "-DQT_NO_KEYWORDS"); #if 0 #ifdef Q_WS_QWS @@ -136,14 +139,14 @@ void tst_CompilerWarnings::warnings() QSKIP("gcc 3.x outputs too many bogus warnings", SkipAll); #endif - static QString tmpFile; + /*static*/ QString tmpFile; if (tmpFile.isEmpty()) { QTemporaryFile tmpQFile; tmpQFile.open(); tmpFile = tmpQFile.fileName(); tmpQFile.close(); } - static QString tmpSourceFile; + /*static*/ QString tmpSourceFile; bool openResult = true; const QString tmpBaseName("XXXXXX-test.cpp"); QString templatePath = QDir::temp().absoluteFilePath(tmpBaseName); -- cgit v0.12 From 033b53a02fb02c5aec412e3d87ad9661110c6e6e Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Fri, 6 Aug 2010 10:31:20 +0200 Subject: compilation with QT_NO_DEPRECATED Reviewed-by: Andreas Kling --- src/network/bearer/qnetworkconfiguration.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/network/bearer/qnetworkconfiguration.h b/src/network/bearer/qnetworkconfiguration.h index d9d36fd..02f9cb6 100644 --- a/src/network/bearer/qnetworkconfiguration.h +++ b/src/network/bearer/qnetworkconfiguration.h @@ -120,7 +120,9 @@ public: Purpose purpose() const; // Required to maintain source compatibility with Qt Mobility. +#ifdef QT_DEPRECATED QT_DEPRECATED inline QString bearerName() const { return bearerTypeName(); } +#endif BearerType bearerType() const; QString bearerTypeName() const; -- cgit v0.12 From e4acfde1ecfa6d4ae4e8d093e20e085a4b8d8c44 Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Fri, 6 Aug 2010 11:09:02 +0200 Subject: Adding Getting Started files. Auto test passes. --- .../tutorials/gettingStarted/gsQml/core/button.qml | 108 ++++++++++ .../gettingStarted/gsQml/core/editMenu.qml | 105 ++++++++++ .../gettingStarted/gsQml/core/fileDialog.qml | 163 +++++++++++++++ .../gettingStarted/gsQml/core/fileMenu.qml | 232 +++++++++++++++++++++ .../gettingStarted/gsQml/core/menuBar.qml | 147 +++++++++++++ .../tutorials/gettingStarted/gsQml/core/qmldir | 49 +++++ .../gettingStarted/gsQml/core/textArea.qml | 87 ++++++++ .../gettingStarted/gsQml/filedialog/cppPlugins.pro | 17 ++ .../gsQml/filedialog/dialogPlugin.cpp | 54 +++++ .../gettingStarted/gsQml/filedialog/dialogPlugin.h | 57 +++++ .../gettingStarted/gsQml/filedialog/directory.cpp | 224 ++++++++++++++++++++ .../gettingStarted/gsQml/filedialog/directory.h | 107 ++++++++++ .../gettingStarted/gsQml/filedialog/file.cpp | 57 +++++ .../gettingStarted/gsQml/filedialog/file.h | 67 ++++++ .../gettingStarted/gsQml/filedialog/qmldir | 1 + .../gettingStarted/gsQml/images/arrow.png | Bin 0 -> 583 bytes .../gsQml/pics/qml-texteditor5_editmenu.png | Bin 0 -> 65123 bytes .../gsQml/pics/qml-texteditor5_filemenu.png | Bin 0 -> 21367 bytes .../gsQml/pics/qml-texteditor5_newfile.png | Bin 0 -> 76693 bytes .../tutorials/gettingStarted/gsQml/texteditor.qml | 128 ++++++++++++ 20 files changed, 1603 insertions(+) create mode 100644 examples/tutorials/gettingStarted/gsQml/core/button.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/editMenu.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/fileDialog.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/fileMenu.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/menuBar.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/core/qmldir create mode 100644 examples/tutorials/gettingStarted/gsQml/core/textArea.qml create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/directory.h create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/file.h create mode 100644 examples/tutorials/gettingStarted/gsQml/filedialog/qmldir create mode 100644 examples/tutorials/gettingStarted/gsQml/images/arrow.png create mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png create mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png create mode 100644 examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png create mode 100644 examples/tutorials/gettingStarted/gsQml/texteditor.qml diff --git a/examples/tutorials/gettingStarted/gsQml/core/button.qml b/examples/tutorials/gettingStarted/gsQml/core/button.qml new file mode 100644 index 0000000..dd5dcad --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/button.qml @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +import Qt 4.7 + +Rectangle { + //identifier of the item + id: button + + //these properties act as constants, useable outside this QML file + property int buttonHeight: 75 + property int buttonWidth: 150 + + //attaches to the Text element's text content + property string label + property color textColor: buttonLabel.color + + //the color highlight when the mouse hovers on the rectangle + property color onHoverColor: "lightsteelblue" + property color borderColor: "transparent" + + //buttonColor is set to the button's main color + property color buttonColor: "lightblue" + + property real labelSize: 14 + + //set appearance properties + radius: 6 + smooth: true + border { width: 2; color: borderColor } + width: buttonWidth; height: buttonHeight + + Text { + id: buttonLabel + anchors.centerIn: parent + text: label //bind the text to the parent's text + color: "#DCDCCC" + font.pointSize: labelSize + } + + //buttonClick() is callable and a signal handler, onButtonClick is automatically created + signal buttonClick() + + //define the clickable area to be the whole rectangle + MouseArea { + id: buttonMouseArea + anchors.fill: parent //stretch the area to the parent's dimension + onClicked: buttonClick() + + //if true, then onEntered and onExited called if mouse hovers in the mouse area + //if false, a button must be clicked to detect the mouse hover + hoverEnabled: true + + //display a border if the mouse hovers on the button mouse area + onEntered: parent.border.color = onHoverColor + //remove the border if the mouse exits the button mouse area + onExited: parent.border.color = borderColor + } + + //change the color of the button when pressed + color: buttonMouseArea.pressed ? Qt.darker(buttonColor, 1.5) : buttonColor + //animate the color whenever the color property changes + Behavior on color { ColorAnimation{ duration: 55 } } + + //scale the button when pressed + scale: buttonMouseArea.pressed ? 1.1 : 1.00 + //Animate the scale property change + Behavior on scale { NumberAnimation{ duration: 55 } } + +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/editMenu.qml b/examples/tutorials/gettingStarted/gsQml/core/editMenu.qml new file mode 100644 index 0000000..7f47d9f --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/editMenu.qml @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +import Qt 4.7 + +Rectangle { + id: editMenu + height: 480; width:1000 + color: "powderblue" + property color buttonBorderColor: "#7A8182" + property color buttonFillColor: "#61BDCACD" + property string menuName:"Edit" + gradient: Gradient { + GradientStop { position: 0.0; color: "#6A7570" } + GradientStop { position: 1.0; color: Qt.darker("#6A7570") } + } + + Rectangle { + id:actionContainer + color:"transparent" + anchors.centerIn: parent + width: parent.width; height: parent.height / 5 + Row { + anchors.centerIn: parent + spacing: parent.width/9 + Button { + id: loadButton + buttonColor: buttonFillColor + label: "Copy" + labelSize: 16 + borderColor: buttonBorderColor + height: actionContainer.height; width: actionContainer.width/6 + onButtonClick: textArea.copy() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + Button { + id: saveButton + height: actionContainer.height; width: actionContainer.width/6 + buttonColor: buttonFillColor + label: "Paste" + borderColor: buttonBorderColor + labelSize: 16 + onButtonClick: textArea.paste() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + Button { + id: exitButton + label: "Select All" + height: actionContainer.height; width: actionContainer.width/6 + labelSize: 16 + buttonColor: buttonFillColor + borderColor:buttonBorderColor + onButtonClick: textArea.selectAll() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + } + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/fileDialog.qml b/examples/tutorials/gettingStarted/gsQml/core/fileDialog.qml new file mode 100644 index 0000000..425f717 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/fileDialog.qml @@ -0,0 +1,163 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle { + id:dialog + height: 200 * partition; width: 200 + color: "transparent" + + signal selectChanged() + signal notifyRefresh() + onNotifyRefresh:dirView.model = directory.files + + property string selectedFile + property int selectedIndex: 0 + + Rectangle { + id: dirBox + radius: 10 + anchors.centerIn:parent + height: parent.height -15; width: parent.width -30 + + Rectangle { + id:header + height: parent.height*0.1; width: parent.width + radius:3 + z:1 + gradient: Gradient { + GradientStop { position: 0.0; color: "#8C8F8C" } + GradientStop { position: 0.17; color: "#6A6D6A" } + GradientStop { position: 0.98;color: "#3F3F3F" } + GradientStop { position: 1.0; color: "#0e1B20" } + } + Text { + height: header.height; anchors.centerIn: header + text: "files:" + color: "lightblue" + font.weight: Font.Light + font.italic: true + } + } + GridView { + id:dirView + width:parent.width; height:parent.height*.9 + anchors.top: header.bottom + cellWidth: 100; cellHeight: 75 + model: directory.files + delegate: dirDelegate + clip: true + highlightMoveDuration: 40 + } + Component { + id: dirDelegate + Rectangle { + id:file + color: "transparent" + width: GridView.view.cellWidth; height: GridView.view.cellHeight + + Text { + id:fileName + width: parent.width + anchors.centerIn: parent + text: name + color: "#BDCACD" + font.weight: GridView.view.currentIndex == index ? Font.DemiBold : Font.Normal + font.pointSize: GridView.view.currentIndex == index ? 12 : 10 + elide: Text.ElideMiddle + horizontalAlignment: Text.AlignHCenter + } + Rectangle { + id: selection + width: parent.width; height: parent.height + anchors.centerIn: parent + radius: 10 + smooth: true + scale: GridView.view.currentIndex == index ? 1 : 0.5 + opacity: GridView.view.currentIndex == index ? 1 : 0 + Text { + id: overlay + width: parent.width + anchors.centerIn: parent + text: name + color: "#696167" + font.weight: Font.DemiBold + font.pointSize: 12 + smooth: true + elide: Text.ElideMiddle + horizontalAlignment: Text.AlignHCenter + } + Behavior on opacity { NumberAnimation{ duration: 45 } } + Behavior on scale { NumberAnimation{ duration: 45 } } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter("lightsteelblue",1.25) } + GradientStop { position: 0.67; color: Qt.darker("lightsteelblue",1.3) } + } + border.color: "lightsteelblue" + border.width: 1 + } + MouseArea { + id:fileMouseArea + anchors.fill:parent + hoverEnabled: true + + onClicked: { + GridView.view.currentIndex = index + selectedFile = directory.files[index].name + selectChanged() + } + onEntered: { + fileName.color = "lightsteelblue" + fileName.font.weight = Font.DemiBold + } + onExited: { + fileName.font.weight = Font.Normal + fileName.color = "#BDCACD" + } + } + } + } + gradient: Gradient { + GradientStop { position: 0.0; color: "#A5333333" } + GradientStop { position: 1.0; color: "#03333333" } + } + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/core/fileMenu.qml b/examples/tutorials/gettingStarted/gsQml/core/fileMenu.qml new file mode 100644 index 0000000..afe48c7 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/fileMenu.qml @@ -0,0 +1,232 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle { + id: fileMenu + height: 480; width:1000 + property color buttonBorderColor: "#7F8487" + property color buttonFillColor: "#8FBDCACD" + property string fileContent:directory.fileContent + + //the menuName is accessible from outside this QML file + property string menuName: "File" + + //used to divide the screen into parts. + property real partition: 1/3 + + color: "#6C646A" + gradient: Gradient { + GradientStop { position: 0.0; color: "#6C646A" } + GradientStop { position: 1.0; color: Qt.darker("#6A6D6A") } + } + + Directory { + id:directory + filename: textInput.text + onDirectoryChanged:fileDialog.notifyRefresh() + } + + Rectangle { + id:actionContainer + + //make this rectangle invisible + color:"transparent" + anchors.left: parent.left + + //the height is a good proportion that creates more space at the top of + //the column of buttons + width: fileMenu.width * partition; height: fileMenu.height + + Column { + anchors.centerIn: parent + spacing: parent.height/32 + Button { + id: saveButton + label: "Save" + borderColor: buttonBorderColor + buttonColor: buttonFillColor + width: actionContainer.width/ 1.3 + height:actionContainer.height / 8 + labelSize:24 + onButtonClick: { + directory.fileContent = textArea.textContent + directory.filename = textInput.text + directory.saveFile() + } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + Button { + id: loadButton + width: actionContainer.width/ 1.3 + height:actionContainer.height/ 8 + buttonColor: buttonFillColor + borderColor: buttonBorderColor + label: "Load" + labelSize:24 + onButtonClick:{ + directory.filename = textInput.text + directory.loadFile() + textArea.textContent = directory.fileContent + } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + Button { + id: newButton + width: actionContainer.width/ 1.3 + height: actionContainer.height/ 8 + buttonColor: buttonFillColor + borderColor: buttonBorderColor + label: "New" + labelSize: 24 + onButtonClick:{ + textArea.textContent = "" + textInput.text = "" + } + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + + } + Rectangle { + id: space + width: actionContainer.width/ 1.3 + height: actionContainer.height / 16 + color: "transparent" + } + Button { + id: exitButton + width: actionContainer.width/ 1.3 + height: actionContainer.height/ 8 + label: "Exit" + labelSize: 24 + buttonColor: buttonFillColor + borderColor: buttonBorderColor + onButtonClick: Qt.quit() + gradient: Gradient { + GradientStop { position: 0.0; color: Qt.lighter(buttonFillColor,1.25) } + GradientStop { position: 0.67; color: Qt.darker(buttonFillColor,1.3) } + } + } + } + } + Rectangle { + id:dialogContainer + + width: 2*fileMenu.width * partition; height: fileMenu.height + anchors.right:parent.right + color: "transparent" + + Column { + anchors.centerIn: parent + spacing: parent.height /640 + FileDialog { + id:fileDialog + height: 2*dialogContainer.height * partition + width: dialogContainer.width + onSelectChanged: textInput.text = selectedFile + } + + Rectangle { + id:lowerPartition + height: dialogContainer.height * partition; width: dialogContainer.width + color: "transparent" + + Rectangle { + id: nameField + gradient: Gradient { + GradientStop { position: 0.0; color: "#806F6F6F" } + GradientStop { position: 1.0; color: "#136F6F6F" } + } + radius: 10 + anchors { centerIn:parent; leftMargin: 15; rightMargin: 15; topMargin: 15 } + height: parent.height-15 + width: parent.width -20 + border { color: "#4A4A4A"; width:1 } + + TextInput { + id: textInput + z:2 + anchors { bottom: parent.bottom; topMargin: 10; horizontalCenter: parent.horizontalCenter } + width: parent.width - 10 + height: parent.height -10 + font.pointSize: 40 + color: "lightsteelblue" + focus: true + } + Text { + id: textInstruction + anchors.centerIn: parent + text: "Select file name and press save or load" + font {pointSize: 11; weight: Font.Light; italic: true} + color: "lightblue" + z: 2 + opacity: (textInput.text == "") ? 1 : 0 + } + Text { + id:fieldLabel + anchors { top: parent.top; left: parent.left } + text: " file name: " + font { pointSize: 11; weight: Font.Light; italic: true } + color: "lightblue" + z:2 + } + MouseArea { + anchors.centerIn:parent + width: nameField.width; height: nameField.height + onClicked: { + textInput.text = "" + textInput.focus = true + textInput.forceFocus() + } + } + } + } + } + } +} diff --git a/examples/tutorials/gettingStarted/gsQml/core/menuBar.qml b/examples/tutorials/gettingStarted/gsQml/core/menuBar.qml new file mode 100644 index 0000000..0695772 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/menuBar.qml @@ -0,0 +1,147 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle { + id: menuBar + width: 1000; height:300 + color:"transparent" + property color fileColor: "plum" + property color editColor: "powderblue" + + property real partition: 1/10 + + Column { + anchors.fill: parent + //container for the header and the buttons + z: 1 + Rectangle { + id: labelList + height:menuBar.height*partition + width: menuBar.width + color: "beige" + gradient: Gradient { + GradientStop { position: 0.0; color: "#8C8F8C" } + GradientStop { position: 0.17; color: "#6A6D6A" } + GradientStop { position: 0.98;color: "#3F3F3F" } + GradientStop { position: 1.0; color: "#0e1B20" } + } + Text { + height: parent.height + anchors { right: labelRow.left ; verticalCenter: parent.bottom } + text: "menu: " + color: "lightblue" + font { weight: Font.Light; italic: true } + smooth: true + } + //row displays its children in a vertical row + Row { + id: labelRow + anchors.centerIn: parent + spacing:40 + Button { + id: fileButton + height: 20; width: 50 + label: "File" + buttonColor : menuListView.currentIndex == 0? fileColor : Qt.darker(fileColor, 1.5) + scale: menuListView.currentIndex == 0? 1.25: 1 + labelSize: menuListView.currentIndex == 0? 16:12 + radius: 1 + smooth:true + //on a button click, change the list's currently selected item to FileMenu + onButtonClick: menuListView.currentIndex = 0 + gradient: Gradient { + GradientStop { position: 0.0; color: fileColor } + GradientStop { position: 1.0; color: "#136F6F6F" } + } + } + Button { + id: editButton + height: 20; width: 50 + buttonColor : menuListView.currentIndex == 1? Qt.darker(editColor, 1.5) : Qt.darker(editColor, 1.9) + scale: menuListView.currentIndex == 1? 1.25: 1 + label: "Edit" + radius: 1 + labelSize: menuListView.currentIndex == 1? 16:12 + smooth:true + //on a button click, change the list's currently selected item to EditMenu + onButtonClick: menuListView.currentIndex = 1 + gradient: Gradient { + GradientStop { position: 0.0; color: editColor } + GradientStop { position: 1.0; color: "#136F6F6F" } + } + } + } + } + + //list view will display a model according to a delegate + ListView { + id: menuListView + width:menuBar.width; height: 9*menuBar.height*partition + + //the model contains the data + model: menuListModel + + //control the movement of the menu switching + snapMode: ListView.SnapOneItem + orientation: ListView.Horizontal + boundsBehavior: Flickable.StopAtBounds + flickDeceleration: 5000 + highlightFollowsCurrentItem: true + highlightMoveDuration:240 + highlightRangeMode: ListView.StrictlyEnforceRange + } + } + //a list of visual items already have delegates handling their display + VisualItemModel { + id: menuListModel + + FileMenu { + id:fileMenu + width: menuListView.width; height: menuListView.height + color: fileColor + } + EditMenu { + color: editColor + width: menuListView.width; height: menuListView.height + } + } +} diff --git a/examples/tutorials/gettingStarted/gsQml/core/qmldir b/examples/tutorials/gettingStarted/gsQml/core/qmldir new file mode 100644 index 0000000..08575cc --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/qmldir @@ -0,0 +1,49 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +Button ./button.qml +FileDialog ./fileDialog.qml +TextArea ./textArea.qml +TextEditor ./textEditor.qml +EditMenu ./editMenu.qml +MenuBar ./menuBar.qml +FileMenu ./fileMenu.qml + +plugin FileDialog ../plugins diff --git a/examples/tutorials/gettingStarted/gsQml/core/textArea.qml b/examples/tutorials/gettingStarted/gsQml/core/textArea.qml new file mode 100644 index 0000000..6d3d214 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/core/textArea.qml @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 + +Rectangle { + id:textArea + + function paste() { textEdit.paste() } + function copy() { textEdit.copy() } + function selectAll() { textEdit.selectAll() } + + width :400; height:400 + + property color fontColor: "white" + property alias textContent: textEdit.text + Flickable { + id: flickArea + width: parent.width; height: parent.height + anchors.fill:parent + + boundsBehavior: Flickable.StopAtBounds + flickableDirection: Flickable.HorizontalFlick + interactive: true + //Will move the text Edit area to make the area visible when + //scrolled with keyboard strokes + function ensureVisible(r) { + if (contentX >= r.x) + contentX = r.x; + else if (contentX+width <= r.x+r.width) + contentX = r.x+r.width-width; + if (contentY >= r.y) + contentY = r.y; + else if (contentY+height <= r.y+r.height) + contentY = r.y+r.height-height; + } + + TextEdit { + id: textEdit + anchors.fill:parent + width:parent.width; height:parent.height + color:fontColor + focus: true + wrapMode: TextEdit.Wrap + font.pointSize:10 + onCursorRectangleChanged: flickArea.ensureVisible(cursorRectangle) + selectByMouse: true + } + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro b/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro new file mode 100644 index 0000000..d85787d --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/cppPlugins.pro @@ -0,0 +1,17 @@ +TEMPLATE = lib +CONFIG += qt plugin +QT += declarative + +DESTDIR += ../plugins +OBJECTS_DIR = tmp +MOC_DIR = tmp + +TARGET = FileDialog + +HEADERS += directory.h \ + file.h \ + dialogPlugin.h + +SOURCES += directory.cpp \ + file.cpp \ + dialogPlugin.cpp diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp new file mode 100644 index 0000000..e3a82dc --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.cpp @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "dialogPlugin.h" +#include "directory.h" +#include "file.h" +#include <QtDeclarative/qdeclarative.h> + +void DialogPlugin::registerTypes(const char *uri) +{ + //register the class Directory into QML as a "Directory" element version 1.0 + qmlRegisterType<Directory>(uri, 1, 0, "Directory"); + qmlRegisterType<File>(uri,1,0,"File"); +} + +//FileDialog is the plugin name (same as the TARGET in the project file) and DialogPlugin is the plugin classs +Q_EXPORT_PLUGIN2(FileDialog, DialogPlugin); \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h new file mode 100644 index 0000000..c345641 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/dialogPlugin.h @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef DIALOGPLUGIN_H +#define DIALOGPLUGIN_H + +#include <QtDeclarative/QDeclarativeExtensionPlugin> + +class DialogPlugin : public QDeclarativeExtensionPlugin +{ + Q_OBJECT + + public: + //registerTypes is inherited from QDeclarativeExtensionPlugin + void registerTypes(const char *uri); + +}; + +#endif + diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp new file mode 100644 index 0000000..c46a65b --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.cpp @@ -0,0 +1,224 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "directory.h" +#include <QDebug> + +/* +Directory constructor + +Initialize the saves directory and creates the file list +*/ +Directory::Directory(QObject *parent) : QObject(parent) +{ + m_dir.cd( QDir::currentPath() ); + + //go to the saved directory. if not found, create save directory + m_saveDir = "saves"; + if ( m_dir.cd(m_saveDir) == 0 ) { + m_dir.mkdir(m_saveDir); + m_dir.cd(m_saveDir); + } + m_filterList << "*.txt"; + refresh(); +} + +/* +Directory::filesNumber +Return the number of Files +*/ +int Directory::filesCount() const +{ + return m_fileList.size(); +} + +/* +Function called to append data onto list property +*/ +void appendFiles(QDeclarativeListProperty<File> * property, File * file) +{ + Q_UNUSED(property); + Q_UNUSED(file); + //Do nothing. can't add to a directory using this method +} + +/* +Function called to retrieve file in the list using an index +*/ +File* fileAt(QDeclarativeListProperty<File> * property, int index) +{ + return static_cast< QList<File *> *>(property->data)->at(index); +} + +/* +Returns the number of files in the list +*/ +int filesSize(QDeclarativeListProperty<File> * property) +{ + return static_cast< QList<File *> *>(property->data)->size(); +} + +/* +Function called to empty the list property contents +*/ +void clearFilesPtr(QDeclarativeListProperty<File> *property) +{ + return static_cast< QList<File *> *>(property->data)->clear(); +} + +/* +Returns the list of files as a QDeclarativeListProperty. +*/ +QDeclarativeListProperty<File> Directory::files() +{ + refresh(); + return QDeclarativeListProperty<File>( this, &m_fileList, &appendFiles, &filesSize, &fileAt, &clearFilesPtr ); +} + +/* +Return the name of the currently selected file +*/ +QString Directory::filename() const +{ + return currentFile.name(); +} + +/* +Return the file's content as a string. +*/ +QString Directory::fileContent() const +{ + return m_fileContent; +} + +/* +Set the file name of the current file +*/ +void Directory::setFilename(const QString &str) +{ + if( str != currentFile.name() ) { + currentFile.setName(str); + emit filenameChanged(); + } +} + +/* +Set the content of the file as a string +*/ +void Directory::setFileContent(const QString &str) +{ + if(str != m_fileContent){ + m_fileContent = str; + emit fileContentChanged(); + } +} + +/* +Called from QML to save the file using the filename and file content. +Saving makes sure that the file has a .txt extension. +*/ +void Directory::saveFile() +{ + if(currentFile.name().size() == 0){ + qWarning()<< "Empty filename. no save"; + return; + } + QString extendedName = currentFile.name(); + if(!currentFile.name().endsWith(".txt")){ + extendedName.append(".txt"); + } + QFile file( m_dir.filePath(extendedName) ); + if ( file.open(QFile::WriteOnly | QFile::Truncate) ) { + QTextStream outStream(&file); + outStream << m_fileContent; + } + file.close(); + refresh(); + emit directoryChanged(); +} + +/* +Load the contents of a file. +Only loads files with a .txt extension +*/ +void Directory::loadFile() +{ + m_fileContent.clear(); + QString extendedName = currentFile.name(); + if( !currentFile.name().endsWith(".txt") ) { + extendedName.append(".txt"); + } + + QFile file( m_dir.filePath(extendedName) ); + if ( file.open(QFile::ReadOnly ) ) { + QTextStream inStream(&file); + + QString line; + do { + line = inStream.read(75); + m_fileContent.append(line); + } while ( !line.isNull() ) ; + } + file.close(); +} + +/* +Reloads the content of the files list. This is to ensure that the newly +created files are added onto the list. +*/ +void Directory::refresh() +{ + m_dirFiles = m_dir.entryList(m_filterList,QDir::Files,QDir::Name); + m_fileList.clear(); + + File * file; + for(int i = 0; i < m_dirFiles.size() ; i ++) { + file = new File(); + + if( m_dirFiles.at(i).endsWith(".txt") ) { + QString name = m_dirFiles.at(i); + file->setName( name.remove(".txt",Qt::CaseSensitive) ); + } + else { + file->setName(m_dirFiles.at(i)); + } + m_fileList.append(file); + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h new file mode 100644 index 0000000..0dc388a --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/directory.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef DIRECTORY_H +#define DIRECTORY_H + +#include "file.h" + +#include <QDir> +#include <QStringList> +#include <QTextStream> +#include <QDeclarativeListProperty> +#include <QObject> + +class Directory : public QObject { + + Q_OBJECT + + //number of files in the directory + Q_PROPERTY(int filesCount READ filesCount) + + //list property containing file names as QString + Q_PROPERTY(QDeclarativeListProperty<File> files READ files CONSTANT ) + + //file name of the text file to read/write + Q_PROPERTY(QString filename READ filename WRITE setFilename NOTIFY filenameChanged) + + //text content of the file + Q_PROPERTY(QString fileContent READ fileContent WRITE setFileContent NOTIFY fileContentChanged) + + public: + Directory(QObject *parent = 0); + + //properties' read functions + int filesCount() const; + QString filename() const; + QString fileContent() const; + QDeclarativeListProperty<File> files(); + + //properties' write functions + void setFilename(const QString &str); + void setFileContent(const QString &str); + + //accessible from QML + Q_INVOKABLE void saveFile(); + Q_INVOKABLE void loadFile(); + + signals: + void directoryChanged(); + void filenameChanged(); + void fileContentChanged(); + + private: + QDir m_dir; + QStringList m_dirFiles; + File currentFile; + QString m_saveDir; + QStringList m_filterList; + + //contains the file data in QString format + QString m_fileContent; + + //Registered to QML in a plugin. Accessible from QML as a property of Directory + QList<File *> m_fileList; + + //refresh content of the directory + void refresh(); +}; + +#endif diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp b/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp new file mode 100644 index 0000000..ccf762c --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/file.cpp @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include "file.h" + +File::File(QObject *parent) : QObject(parent) +{ + m_name = ""; +} + +QString File::name() const{ + return m_name; +} +void File::setName(const QString &str){ + if(str != m_name){ + m_name = str; + emit nameChanged(); + } +} \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/file.h b/examples/tutorials/gettingStarted/gsQml/filedialog/file.h new file mode 100644 index 0000000..606f374 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/file.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef FILE_H +#define FILE_H + + +#include <QString> +#include <QObject> + +class File : public QObject{ + + Q_OBJECT + + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + + public: + File(QObject *parent = 0); + + QString name() const; + void setName(const QString &str); + + signals: + void nameChanged(); + + private: + QString m_name; +}; + +#endif \ No newline at end of file diff --git a/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir b/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir new file mode 100644 index 0000000..c2b27da --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/filedialog/qmldir @@ -0,0 +1 @@ +plugin FileDialog plugins diff --git a/examples/tutorials/gettingStarted/gsQml/images/arrow.png b/examples/tutorials/gettingStarted/gsQml/images/arrow.png new file mode 100644 index 0000000..14978c2 Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/images/arrow.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png new file mode 100644 index 0000000..27feed5 Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_editmenu.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png new file mode 100644 index 0000000..4d8f9f2 Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_filemenu.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png new file mode 100644 index 0000000..680acfe Binary files /dev/null and b/examples/tutorials/gettingStarted/gsQml/pics/qml-texteditor5_newfile.png differ diff --git a/examples/tutorials/gettingStarted/gsQml/texteditor.qml b/examples/tutorials/gettingStarted/gsQml/texteditor.qml new file mode 100644 index 0000000..3bd9d55 --- /dev/null +++ b/examples/tutorials/gettingStarted/gsQml/texteditor.qml @@ -0,0 +1,128 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import Qt 4.7 +import "core" + +Rectangle { + id: screen + width: 1000; height: 1000 + property int partition: height/3 + border { width: 1; color: "#DCDCCC"} + state: "DRAWER_CLOSED" + + //Item 1: MenuBar on the top portion of the screen + MenuBar { + id:menuBar + height: screen.partition; width: screen.width + z: 1 + } + + //Item 2: The editable text area + TextArea { + id: textArea + y: drawer.height + color: "#3F3F3F" + fontColor: "#DCDCCC" + height: partition*2; width:parent.width + } + + //Item 3: The drawer handle + Rectangle { + id: drawer + height: 15; width: parent.width + border { color : "#6A6D6A"; width: 1 } + z: 1 + gradient: Gradient { + GradientStop { position: 0.0; color: "#8C8F8C" } + GradientStop { position: 0.17; color: "#6A6D6A" } + GradientStop { position: 0.77; color: "#3F3F3F" } + GradientStop { position: 1.0; color: "#6A6D6A" } + } + Image { + id: arrowIcon + source: "images/arrow.png" + anchors.horizontalCenter: parent.horizontalCenter + Behavior{ NumberAnimation { property: "rotation"; easing.type: Easing.OutExpo } } + } + + MouseArea { + id: drawerMouseArea + anchors.fill: parent + hoverEnabled: true + onEntered: parent.border.color = Qt.lighter("#6A6D6A") + onExited: parent.border.color = "#6A6D6A" + onClicked: { + if (screen.state == "DRAWER_CLOSED") { + screen.state = "DRAWER_OPEN" + } + else if (screen.state == "DRAWER_OPEN"){ + screen.state = "DRAWER_CLOSED" + } + } + } + } + + states:[ + State { + name: "DRAWER_OPEN" + PropertyChanges { target: menuBar; y: 0} + PropertyChanges { target: textArea; y: partition + drawer.height} + PropertyChanges { target: drawer; y: partition} + PropertyChanges { target: arrowIcon; rotation: 180} + }, + State { + name: "DRAWER_CLOSED" + PropertyChanges { target: menuBar; y:-height; } + PropertyChanges { target: textArea; y: drawer.height; height: screen.height - drawer.height } + PropertyChanges { target: drawer; y: 0 } + PropertyChanges { target: arrowIcon; rotation: 0 } + } + ] + + transitions: [ + Transition { + to: "*" + NumberAnimation { target: textArea; properties: "y, height"; duration: 100; easing.type:Easing.OutExpo } + NumberAnimation { target: menuBar; properties: "y"; duration: 100; easing.type: Easing.OutExpo } + NumberAnimation { target: drawer; properties: "y"; duration: 100; easing.type: Easing.OutExpo } + } + ] +} -- cgit v0.12 From a273f6fb0b2410da772e7759125f955da9a5e19c Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Fri, 6 Aug 2010 11:52:41 +0200 Subject: doc: Fixed some missing images. Task-nr: QTBUG-8246 --- doc/src/examples/imagegestures.qdoc | 2 -- doc/src/getting-started/examples.qdoc | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/doc/src/examples/imagegestures.qdoc b/doc/src/examples/imagegestures.qdoc index 57479d8..3d4e467 100644 --- a/doc/src/examples/imagegestures.qdoc +++ b/doc/src/examples/imagegestures.qdoc @@ -32,8 +32,6 @@ This example shows how to enable gestures for a widget and use gesture input to perform actions. - \image imagegestures-example.png Screenshot of the Image Gestures example. - We use two classes to create the user interface for the application: \c MainWidget and \c ImageWidget. The \c MainWidget class is simply used as a container for the \c ImageWidget class, which we will configure to accept gesture input. Since we diff --git a/doc/src/getting-started/examples.qdoc b/doc/src/getting-started/examples.qdoc index b2895ba..1bf86e5 100644 --- a/doc/src/getting-started/examples.qdoc +++ b/doc/src/getting-started/examples.qdoc @@ -529,7 +529,7 @@ \title OpenVG Examples \brief Accessing OpenVG from Qt - \image openvg-examples.png + \image opengl-examples.png Qt provides support for integration with OpenVG implementations on platforms with suitable drivers. -- cgit v0.12 From 6b61a2787759673f246493453c0809d24c9d6ae5 Mon Sep 17 00:00:00 2001 From: Shane Kearns <shane.kearns@accenture.com> Date: Fri, 6 Aug 2010 10:56:44 +0100 Subject: Make input methods work correctly with Symbian^3 FEP in numeric mode Enable alphanumeric modes to use EAknEditorFlagUseSCTNumericCharmap flag so that all symbols are shown when you press the * key when the FEP is in portrait mode (traditional 4x3 mobile phone keypad emulation) Enable text input mode as well as numeric input mode for ImhFormattedNumbersOnly or ImhDialableCharactersOnly, as the '*' key on the virtual keypad does not work to launch the symbols menu otherwise. Task-number: QT-3681 Reviewed-by: Jason Barron --- src/gui/inputmethod/qcoefepinputcontext_s60.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp index 999edda..cd05e38 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp +++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp @@ -359,10 +359,10 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) commitTemporaryPreeditString(); - bool numbersOnly = hints & ImhDigitsOnly || hints & ImhFormattedNumbersOnly - || hints & ImhDialableCharactersOnly; - bool noOnlys = !(numbersOnly || hints & ImhUppercaseOnly - || hints & ImhLowercaseOnly); + bool numbersOnly = (hints & ImhDigitsOnly) || (hints & ImhFormattedNumbersOnly) + || (hints & ImhDialableCharactersOnly); + bool noOnlys = !(numbersOnly || (hints & ImhUppercaseOnly) + || (hints & ImhLowercaseOnly)); TInt flags; Qt::InputMethodHints oldHints = hints; @@ -388,8 +388,7 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) hints |= ImhPreferLowercase; } else if (hints & ImhUppercaseOnly) { hints |= ImhPreferUppercase; - } else if (hints & ImhDigitsOnly || hints & ImhFormattedNumbersOnly - || hints & ImhDialableCharactersOnly) { + } else if (numbersOnly) { hints |= ImhPreferNumbers; } } @@ -406,6 +405,11 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) if (numbersOnly) { flags |= EAknEditorNumericInputMode; } + if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 + && ((hints & ImhFormattedNumbersOnly) || (hints & ImhDialableCharactersOnly)) { + //workaround - the * key does not launch the symbols menu, making it impossible to use these modes unless text mode is enabled. + flags |= EAknEditorTextInputMode; + } if (hints & ImhUppercaseOnly || hints & ImhLowercaseOnly) { flags |= EAknEditorTextInputMode; } @@ -456,6 +460,9 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) if (hints & ImhNoPredictiveText || hints & ImhHiddenText) { flags |= EAknEditorFlagNoT9; } + // if alphanumeric input, then make all symbols available in numeric mode too. + if (!numbersOnly) + flags |= EAknEditorFlagUseSCTNumericCharmap; m_fepState->SetFlags(flags); ReportAknEdStateEvent(MAknEdStateObserver::EAknEdwinStateFlagsUpdate); -- cgit v0.12 From fb6aa3b0769c33685ad38a13fe5ad0ca48679a93 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Fri, 6 Aug 2010 12:18:00 +0200 Subject: doc: Fixed some S60 qdoc errors. --- src/gui/s60framework/qs60mainapplication.cpp | 9 ++++++ src/gui/s60framework/qs60mainappui.cpp | 45 ++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) diff --git a/src/gui/s60framework/qs60mainapplication.cpp b/src/gui/s60framework/qs60mainapplication.cpp index 0f9367e..5d4c54e 100644 --- a/src/gui/s60framework/qs60mainapplication.cpp +++ b/src/gui/s60framework/qs60mainapplication.cpp @@ -136,16 +136,25 @@ TFileName QS60MainApplication::ResourceFileName() const return KNullDesC(); } +/*! + \internal +*/ void QS60MainApplication::PreDocConstructL() { QS60MainApplicationBase::PreDocConstructL(); } +/*! + \internal +*/ CDictionaryStore *QS60MainApplication::OpenIniFileLC(RFs &aFs) const { return QS60MainApplicationBase::OpenIniFileLC(aFs); } +/*! + \internal +*/ void QS60MainApplication::NewAppServerL(CApaAppServer *&aAppServer) { QS60MainApplicationBase::NewAppServerL(aAppServer); diff --git a/src/gui/s60framework/qs60mainappui.cpp b/src/gui/s60framework/qs60mainappui.cpp index 40c2d03..ea9dbb3 100644 --- a/src/gui/s60framework/qs60mainappui.cpp +++ b/src/gui/s60framework/qs60mainappui.cpp @@ -281,76 +281,121 @@ void QS60MainAppUi::RestoreMenuL(CCoeControl *menuWindow, TInt resourceId, TMenu } } +/*! + \internal +*/ void QS60MainAppUi::Exit() { QS60MainAppUiBase::Exit(); } +/*! + \internal +*/ void QS60MainAppUi::SetFadedL(TBool aFaded) { QS60MainAppUiBase::SetFadedL(aFaded); } +/*! + \internal +*/ TRect QS60MainAppUi::ApplicationRect() const { return QS60MainAppUiBase::ApplicationRect(); } +/*! + \internal +*/ void QS60MainAppUi::HandleScreenDeviceChangedL() { QS60MainAppUiBase::HandleScreenDeviceChangedL(); } +/*! + \internal +*/ void QS60MainAppUi::HandleApplicationSpecificEventL(TInt aType, const TWsEvent &aEvent) { QS60MainAppUiBase::HandleApplicationSpecificEventL(aType, aEvent); } +/*! + \internal +*/ TTypeUid::Ptr QS60MainAppUi::MopSupplyObject(TTypeUid aId) { return QS60MainAppUiBase::MopSupplyObject(aId); } +/*! + \internal +*/ void QS60MainAppUi::ProcessCommandL(TInt aCommand) { QS60MainAppUiBase::ProcessCommandL(aCommand); } +/*! + \internal +*/ TErrorHandlerResponse QS60MainAppUi::HandleError (TInt aError, const SExtendedError &aExtErr, TDes &aErrorText, TDes &aContextText) { return QS60MainAppUiBase::HandleError(aError, aExtErr, aErrorText, aContextText); } +/*! + \internal +*/ void QS60MainAppUi::HandleViewDeactivation(const TVwsViewId &aViewIdToBeDeactivated, const TVwsViewId &aNewlyActivatedViewId) { QS60MainAppUiBase::HandleViewDeactivation(aViewIdToBeDeactivated, aNewlyActivatedViewId); } +/*! + \internal +*/ void QS60MainAppUi::PrepareToExit() { QS60MainAppUiBase::PrepareToExit(); } +/*! + \internal +*/ void QS60MainAppUi::HandleTouchPaneSizeChange() { QS60MainAppUiBase::HandleTouchPaneSizeChange(); } +/*! + \internal +*/ void QS60MainAppUi::HandleSystemEventL(const TWsEvent &aEvent) { QS60MainAppUiBase::HandleSystemEventL(aEvent); } +/*! + \internal +*/ void QS60MainAppUi::Reserved_MtsmPosition() { QS60MainAppUiBase::Reserved_MtsmPosition(); } +/*! + \internal +*/ void QS60MainAppUi::Reserved_MtsmObject() { QS60MainAppUiBase::Reserved_MtsmObject(); } +/*! + \internal +*/ void QS60MainAppUi::HandleForegroundEventL(TBool aForeground) { QS60MainAppUiBase::HandleForegroundEventL(aForeground); -- cgit v0.12 From 30d6f7ed29a2a5723387768cfe82a807a2724b8b Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Fri, 6 Aug 2010 12:31:48 +0200 Subject: doc: Fixed some qdoc errors. --- src/gui/graphicsview/qgraphicsitem.cpp | 15 +++++++++++++++ src/gui/graphicsview/qgraphicstransform.cpp | 18 ++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp index ff3dc1f..e1e27d2 100644 --- a/src/gui/graphicsview/qgraphicsitem.cpp +++ b/src/gui/graphicsview/qgraphicsitem.cpp @@ -7758,6 +7758,21 @@ void QGraphicsItemPrivate::resetHeight() } /*! + \property QGraphicsObject::children + \internal +*/ + +/*! + \property QGraphicsObject::width + \internal +*/ + +/*! + \property QGraphicsObject::height + \internal +*/ + +/*! \property QGraphicsObject::parent \brief the parent of the item diff --git a/src/gui/graphicsview/qgraphicstransform.cpp b/src/gui/graphicsview/qgraphicstransform.cpp index 986bee6..7b69317 100644 --- a/src/gui/graphicsview/qgraphicstransform.cpp +++ b/src/gui/graphicsview/qgraphicstransform.cpp @@ -345,6 +345,24 @@ void QGraphicsScale::applyTo(QMatrix4x4 *matrix) const */ /*! + \fn QGraphicsScale::xScaleChanged() + + QGraphicsScale emits this signal when its xScale changes. +*/ + +/*! + \fn QGraphicsScale::yScaleChanged() + + QGraphicsScale emits this signal when its yScale changes. +*/ + +/*! + \fn QGraphicsScale::zScaleChanged() + + QGraphicsScale emits this signal when its zScale changes. +*/ + +/*! \fn QGraphicsScale::scaleChanged() This signal is emitted whenever the xScale, yScale, or zScale -- cgit v0.12 From 0210bbbd7bf8254be5f7f19f524068cd39fc34c2 Mon Sep 17 00:00:00 2001 From: Jani Hautakangas <ext-jani.hautakangas@nokia.com> Date: Fri, 6 Aug 2010 13:18:24 +0300 Subject: Use ARGB32 premultiplied backing store format in Symbian^3 raster paint engine for translucent windows. Task-number: QTBUG-12710 Reviewed-by: Jason Barron --- src/gui/kernel/qapplication_s60.cpp | 3 ++- src/gui/painting/qwindowsurface_s60.cpp | 12 ++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index 52f0db6..a14b1a7 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1087,7 +1087,8 @@ void QSymbianControl::Draw(const TRect& controlRect) const break; case QWExtra::ZeroFill: - if (Window().DisplayMode() == EColor16MA) { + if (Window().DisplayMode() == EColor16MA + || Window().DisplayMode() == Q_SYMBIAN_ECOLOR16MAP) { gc.SetBrushStyle(CGraphicsContext::ESolidBrush); gc.SetDrawMode(CGraphicsContext::EDrawModeWriteAlpha); gc.SetBrushColor(TRgb::Color16MA(0)); diff --git a/src/gui/painting/qwindowsurface_s60.cpp b/src/gui/painting/qwindowsurface_s60.cpp index 477bd93..8bac1f5 100644 --- a/src/gui/painting/qwindowsurface_s60.cpp +++ b/src/gui/painting/qwindowsurface_s60.cpp @@ -67,10 +67,14 @@ QS60WindowSurface::QS60WindowSurface(QWidget* widget) TDisplayMode mode = S60->screenDevice()->DisplayMode(); bool isOpaque = qt_widget_private(widget)->isOpaque; - if (mode == EColor16MA && isOpaque) - mode = EColor16MU; // Faster since 16MU -> 16MA is typically accelerated - else if (mode == EColor16MU && !isOpaque) - mode = EColor16MA; // Try for transparency anyway + if (isOpaque) { + mode = EColor16MU; + } else { + if (QSysInfo::symbianVersion() >= QSysInfo::SV_SF_3) + mode = Q_SYMBIAN_ECOLOR16MAP; // Symbian^3 WServ has support for ARGB32_PRE + else + mode = EColor16MA; // Symbian prior to Symbian^3 sw accelerates EColor16MA + } // We create empty CFbsBitmap here -> it will be resized in setGeometry CFbsBitmap *bitmap = q_check_ptr(new CFbsBitmap); // CBase derived object needs check on new -- cgit v0.12 From d2a52ba7d5fa48632d6f0092da8db97188993252 Mon Sep 17 00:00:00 2001 From: Shane Kearns <shane.kearns@accenture.com> Date: Fri, 6 Aug 2010 11:38:18 +0100 Subject: Test code for input method hints A simple test application to set any combination of input method hints on a QLineEdit widget. This makes it easier to debug when the original report relies on webkit. Task-number: QT-3681 Reviewed-by: Miikka Heikkinen --- tests/manual/inputmethodhints/inputmethodhints.cpp | 99 +++++++++++++++ tests/manual/inputmethodhints/inputmethodhints.h | 63 ++++++++++ tests/manual/inputmethodhints/inputmethodhints.pro | 13 ++ tests/manual/inputmethodhints/inputmethodhints.ui | 138 +++++++++++++++++++++ tests/manual/inputmethodhints/main.cpp | 53 ++++++++ 5 files changed, 366 insertions(+) create mode 100644 tests/manual/inputmethodhints/inputmethodhints.cpp create mode 100644 tests/manual/inputmethodhints/inputmethodhints.h create mode 100644 tests/manual/inputmethodhints/inputmethodhints.pro create mode 100644 tests/manual/inputmethodhints/inputmethodhints.ui create mode 100644 tests/manual/inputmethodhints/main.cpp diff --git a/tests/manual/inputmethodhints/inputmethodhints.cpp b/tests/manual/inputmethodhints/inputmethodhints.cpp new file mode 100644 index 0000000..0c00b8d --- /dev/null +++ b/tests/manual/inputmethodhints/inputmethodhints.cpp @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, 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. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "inputmethodhints.h" + +inputmethodhints::inputmethodhints(QWidget *parent) + : QMainWindow(parent) +{ + ui.setupUi(this); + connect(ui.cbDialableOnly, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbDigitsOnly, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbEmailOnly, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbFormattedNumbersOnly, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbHiddenText, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbLowercaseOnly, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbNoAutoUppercase, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbNoPredictiveText, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbPreferLowercase, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbPreferNumbers, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbPreferUpperCase, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbUppercaseOnly, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); + connect(ui.cbUrlOnly, SIGNAL(stateChanged(int)), this, SLOT(checkboxChanged(int))); +} + +inputmethodhints::~inputmethodhints() +{ + +} + +void inputmethodhints::checkboxChanged(int) +{ + int flags = 0; + if (ui.cbDialableOnly->isChecked()) + flags |= Qt::ImhDialableCharactersOnly; + if (ui.cbDigitsOnly->isChecked()) + flags |= Qt::ImhDigitsOnly; + if (ui.cbEmailOnly->isChecked()) + flags |= Qt::ImhEmailCharactersOnly; + if (ui.cbFormattedNumbersOnly->isChecked()) + flags |= Qt::ImhFormattedNumbersOnly; + if (ui.cbHiddenText->isChecked()) + flags |= Qt::ImhHiddenText; + if (ui.cbLowercaseOnly->isChecked()) + flags |= Qt::ImhLowercaseOnly; + if (ui.cbNoAutoUppercase->isChecked()) + flags |= Qt::ImhNoAutoUppercase; + if (ui.cbNoPredictiveText->isChecked()) + flags |= Qt::ImhNoPredictiveText; + if (ui.cbPreferLowercase->isChecked()) + flags |= Qt::ImhPreferLowercase; + if (ui.cbPreferNumbers->isChecked()) + flags |= Qt::ImhPreferNumbers; + if (ui.cbPreferUpperCase->isChecked()) + flags |= Qt::ImhPreferUppercase; + if (ui.cbUppercaseOnly->isChecked()) + flags |= Qt::ImhUppercaseOnly; + if (ui.cbUrlOnly->isChecked()) + flags |= Qt::ImhUrlCharactersOnly; + ui.lineEdit->clear(); + ui.lineEdit->setInputMethodHints(Qt::InputMethodHints(flags)); +} diff --git a/tests/manual/inputmethodhints/inputmethodhints.h b/tests/manual/inputmethodhints/inputmethodhints.h new file mode 100644 index 0000000..988a4be --- /dev/null +++ b/tests/manual/inputmethodhints/inputmethodhints.h @@ -0,0 +1,63 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, 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. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef INPUTMETHODHINTS_H +#define INPUTMETHODHINTS_H + +#include <QtGui/QMainWindow> +#include "ui_tst_inputmethodhints.h" + +class inputmethodhints : public QMainWindow +{ + Q_OBJECT + +public: + inputmethodhints(QWidget *parent = 0); + ~inputmethodhints(); + +public slots: + void checkboxChanged(int); + +private: + Ui::MainWindow ui; +}; + +#endif // INPUTMETHODHINTS_H diff --git a/tests/manual/inputmethodhints/inputmethodhints.pro b/tests/manual/inputmethodhints/inputmethodhints.pro new file mode 100644 index 0000000..7298ec6 --- /dev/null +++ b/tests/manual/inputmethodhints/inputmethodhints.pro @@ -0,0 +1,13 @@ +TEMPLATE = app +TARGET = tst_inputmethodhints + +QT += core \ + gui + +HEADERS += inputmethodhints.h +SOURCES += main.cpp \ + inputmethodhints.cpp +FORMS += inputmethodhints.ui +RESOURCES += + +symbian:TARGET.UID3 = 0xE4938ABC diff --git a/tests/manual/inputmethodhints/inputmethodhints.ui b/tests/manual/inputmethodhints/inputmethodhints.ui new file mode 100644 index 0000000..d0dc01d --- /dev/null +++ b/tests/manual/inputmethodhints/inputmethodhints.ui @@ -0,0 +1,138 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>MainWindow</class> + <widget class="QMainWindow" name="MainWindow"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>360</width> + <height>640</height> + </rect> + </property> + <property name="windowTitle"> + <string>MainWindow</string> + </property> + <widget class="QWidget" name="centralwidget"> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <item> + <widget class="QTabWidget" name="tabWidget"> + <property name="currentIndex"> + <number>1</number> + </property> + <widget class="QWidget" name="tab"> + <attribute name="title"> + <string>behaviour</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QCheckBox" name="cbHiddenText"> + <property name="text"> + <string>ImhHiddenText</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbNoAutoUppercase"> + <property name="text"> + <string>ImhNoAutoUppercase</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbPreferNumbers"> + <property name="text"> + <string>ImhPreferNumbers</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbPreferUpperCase"> + <property name="text"> + <string>ImhPreferUppercase</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbPreferLowercase"> + <property name="text"> + <string>ImhPreferLowercase</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbNoPredictiveText"> + <property name="text"> + <string>ImhNoPredictiveText</string> + </property> + </widget> + </item> + </layout> + </widget> + <widget class="QWidget" name="tab_2"> + <attribute name="title"> + <string>restrictions</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <widget class="QCheckBox" name="cbDigitsOnly"> + <property name="text"> + <string>ImhDigitsOnly</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbFormattedNumbersOnly"> + <property name="text"> + <string>ImhFormattedNumbersOnly</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbUppercaseOnly"> + <property name="text"> + <string>ImhUppercaseOnly</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbLowercaseOnly"> + <property name="text"> + <string>ImhLowercaseOnly</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbDialableOnly"> + <property name="text"> + <string>ImhDialableCharactersOnly</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbEmailOnly"> + <property name="text"> + <string>ImhEmailCharactersOnly</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="cbUrlOnly"> + <property name="text"> + <string>ImhUrlCharactersOnly</string> + </property> + </widget> + </item> + </layout> + </widget> + </widget> + </item> + <item> + <widget class="QLineEdit" name="lineEdit"/> + </item> + </layout> + </widget> + </widget> + <resources/> + <connections/> +</ui> diff --git a/tests/manual/inputmethodhints/main.cpp b/tests/manual/inputmethodhints/main.cpp new file mode 100644 index 0000000..022bf3f --- /dev/null +++ b/tests/manual/inputmethodhints/main.cpp @@ -0,0 +1,53 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, 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. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "inputmethodhints.h" + +#include <QtGui> +#include <QApplication> + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + inputmethodhints w; + w.showMaximized(); + return a.exec(); +} -- cgit v0.12 From e4c144db1cde192745a198160a01fca1416fe855 Mon Sep 17 00:00:00 2001 From: Shane Kearns <shane.kearns@accenture.com> Date: Fri, 6 Aug 2010 12:00:54 +0100 Subject: fix compile error Task-number: QT-3681 Reviewed-by: Trust Me --- src/gui/inputmethod/qcoefepinputcontext_s60.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp index cd05e38..ae51b1c 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp +++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp @@ -406,7 +406,7 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) flags |= EAknEditorNumericInputMode; } if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 - && ((hints & ImhFormattedNumbersOnly) || (hints & ImhDialableCharactersOnly)) { + && ((hints & ImhFormattedNumbersOnly) || (hints & ImhDialableCharactersOnly))) { //workaround - the * key does not launch the symbols menu, making it impossible to use these modes unless text mode is enabled. flags |= EAknEditorTextInputMode; } -- cgit v0.12 From 8521d8d32235ad5b59088121ea7b4e9ce69adfaa Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Fri, 6 Aug 2010 13:02:59 +0200 Subject: doc: Fixed some qdoc errors. --- src/network/access/qnetworkrequest.cpp | 43 ++++++++++++---------------------- tools/qdoc3/generator.cpp | 7 ++++-- 2 files changed, 20 insertions(+), 30 deletions(-) diff --git a/src/network/access/qnetworkrequest.cpp b/src/network/access/qnetworkrequest.cpp index fa592c2..38cae8b 100644 --- a/src/network/access/qnetworkrequest.cpp +++ b/src/network/access/qnetworkrequest.cpp @@ -105,7 +105,8 @@ QT_BEGIN_NAMESPACE /*! \enum QNetworkRequest::Attribute - + \since 4.7 + Attribute codes for the QNetworkRequest and QNetworkReply. Attributes are extra meta-data that are used to control the @@ -186,34 +187,28 @@ QT_BEGIN_NAMESPACE \value CustomVerbAttribute Requests only, type: QVariant::ByteArray - Holds the value for the custom HTTP verb to send (destined for usage - of other verbs than GET, POST, PUT and DELETE). This verb is set - when calling QNetworkAccessManager::sendCustomRequest(). + Holds the value for the custom HTTP verb to send (destined for usage + of other verbs than GET, POST, PUT and DELETE). This verb is set + when calling QNetworkAccessManager::sendCustomRequest(). \value CookieLoadControlAttribute - Requests only, type: QVariant::Int (default: QNetworkRequest::Automatic) - Indicates whether to send 'Cookie' headers in the request. - - This attribute is set to false by QtWebKit when creating a cross-origin - XMLHttpRequest where withCredentials has not been set explicitly to true by the - Javascript that created the request. - - See http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag for more information. - - \since 4.7 + Requests only, type: QVariant::Int (default: + QNetworkRequest::Automatic) Indicates whether to send 'Cookie' + headers in the request. This attribute is set to false by + QtWebKit when creating a cross-origin XMLHttpRequest where + withCredentials has not been set explicitly to true by the + Javascript that created the request. See + \l{http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag} + {here} for more information. \value CookieSaveControlAttribute Requests only, type: QVariant::Int (default: QNetworkRequest::Automatic) Indicates whether to save 'Cookie' headers received from the server in reply to the request. - This attribute is set to false by QtWebKit when creating a cross-origin XMLHttpRequest where withCredentials has not been set explicitly to true by the Javascript that created the request. - - See http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag for more information. - - \since 4.7 + See \l{http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag} {here} for more information. \value AuthenticationReuseAttribute Requests only, type: QVariant::Int (default: QNetworkRequest::Automatic) @@ -221,22 +216,14 @@ QT_BEGIN_NAMESPACE if available. If this is set to QNetworkRequest::Manual and the authentication mechanism is 'Basic' or 'Digest', Qt will not send an an 'Authorization' HTTP header with any cached credentials it may have for the request's URL. - This attribute is set to QNetworkRequest::Manual by QtWebKit when creating a cross-origin XMLHttpRequest where withCredentials has not been set explicitly to true by the Javascript that created the request. - - See http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag for more information. - - \since 4.7 + See \l{http://www.w3.org/TR/XMLHttpRequest2/#credentials-flag} {here} for more information. \omitvalue MaximumDownloadBufferSizeAttribute - \since 4.7 - \internal \omitvalue DownloadBufferAttribute - \since 4.7 - \internal \value User Special type. Additional information can be passed in diff --git a/tools/qdoc3/generator.cpp b/tools/qdoc3/generator.cpp index 24219a1..7f39be2 100644 --- a/tools/qdoc3/generator.cpp +++ b/tools/qdoc3/generator.cpp @@ -1068,8 +1068,11 @@ void Generator::generateSince(const Node *node, CodeMarker *marker) Text text; text << Atom::ParaLeft << "This " - << typeString(node) - << " was introduced in "; + << typeString(node); + if (node->type() == Node::Enum) + text << " was introduced or modified in "; + else + text << " was introduced in "; if (project.isEmpty()) text << "version"; else -- cgit v0.12 From fc4e9d15d4b85ade770cf92c10258a556fafa698 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Fri, 6 Aug 2010 13:12:25 +0200 Subject: doc: Fixed some qdoc errors. --- src/dbus/qdbusconnection.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/dbus/qdbusconnection.cpp b/src/dbus/qdbusconnection.cpp index 055fead..e1fcb36 100644 --- a/src/dbus/qdbusconnection.cpp +++ b/src/dbus/qdbusconnection.cpp @@ -212,6 +212,7 @@ void QDBusConnectionManager::setConnection(const QString &name, QDBusConnectionP \value ExportScriptableSlots export this object's scriptable slots \value ExportScriptableSignals export this object's scriptable signals \value ExportScriptableProperties export this object's scriptable properties + \value ExportScriptableInvokables export this object's scriptable invokables \value ExportScriptableContents shorthand form for ExportScriptableSlots | ExportScriptableSignals | ExportScriptableProperties @@ -219,6 +220,7 @@ void QDBusConnectionManager::setConnection(const QString &name, QDBusConnectionP \value ExportNonScriptableSlots export this object's non-scriptable slots \value ExportNonScriptableSignals export this object's non-scriptable signals \value ExportNonScriptableProperties export this object's non-scriptable properties + \value ExportNonScriptableInvokables export this object's non-scriptable invokables \value ExportNonScriptableContents shorthand form for ExportNonScriptableSlots | ExportNonScriptableSignals | ExportNonScriptableProperties @@ -226,10 +228,9 @@ void QDBusConnectionManager::setConnection(const QString &name, QDBusConnectionP \value ExportAllSlots export all of this object's slots \value ExportAllSignals export all of this object's signals \value ExportAllProperties export all of this object's properties + \value ExportAllInvokables export all of this object's invokables \value ExportAllContents export all of this object's contents - \value ExportChildObjects export this object's child objects - \sa registerObject(), QDBusAbstractAdaptor, {usingadaptors.html}{Using adaptors} */ -- cgit v0.12 From 1f32f4013ab9178e8434bff847013a84491fe516 Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Fri, 6 Aug 2010 13:32:29 +0200 Subject: Removed duplicate case for const variable snippet. Reviewer: David Boddie Task number: QTBUG-10411 --- doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp b/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp index 088e043..0bd5fdf 100644 --- a/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp +++ b/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp @@ -87,14 +87,9 @@ void myFunction(bool useSubClass) // is equivalent to: const QScopedPointer<QWidget> p(new QWidget()); - QWidget *const p = new QWidget(); - // is equivalent to: - const QScopedPointer<QWidget> p(new QWidget()); - const QWidget *p = new QWidget(); // is equivalent to: QScopedPointer<const QWidget> p(new QWidget()); - //! [2] //! [3] -- cgit v0.12 From 5988d0dfcca6374f7bc06bad3ec9e3a3b8ebc22f Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen <miikka.heikkinen@digia.com> Date: Fri, 6 Aug 2010 12:44:12 +0300 Subject: Rename Symbian generated mmp/mk files to include target in filename Mmp and mk files previously contained UID3 as unique identifier in the filename. However, this was not particularly useful for building subprojects in massive project trees such as Qt, as it was difficult to remember UID for each subproject. Now with intuitive naming of mmps, it is possible to build a subproject like this: sbs -c armv6_urel -p qtcore_dll.mmp Task-number: QTBUG-12715 Reviewed-by: Jason Barron --- qmake/generators/symbian/symmake.cpp | 33 +++++++++++++------------------ qmake/generators/symbian/symmake.h | 2 ++ qmake/generators/symbian/symmake_abld.cpp | 9 ++------- qmake/generators/symbian/symmake_abld.h | 2 +- 4 files changed, 19 insertions(+), 27 deletions(-) diff --git a/qmake/generators/symbian/symmake.cpp b/qmake/generators/symbian/symmake.cpp index ff58270..cf6bd13 100644 --- a/qmake/generators/symbian/symmake.cpp +++ b/qmake/generators/symbian/symmake.cpp @@ -241,13 +241,8 @@ bool SymbianMakefileGenerator::writeMakefile(QTextStream &t) writeMkFile(wrapperFileName, false); - QString shortProFilename = project->projectFile(); - shortProFilename.replace(0, shortProFilename.lastIndexOf("/") + 1, QString("")); - shortProFilename.replace(Option::pro_ext, QString("")); - - QString mmpFilename = Option::output_dir + QLatin1Char('/') + shortProFilename + QLatin1Char('_') - + uid3 + Option::mmp_ext; - writeMmpFile(mmpFilename, symbianLangCodes); + QString absoluteMmpFileName = Option::output_dir + QLatin1Char('/') + mmpFileName; + writeMmpFile(absoluteMmpFileName, symbianLangCodes); if (targetType == TypeExe) { if (!project->isActiveConfig("no_icon")) { @@ -281,6 +276,15 @@ void SymbianMakefileGenerator::init() project->values("MAKEFILE") += BLD_INF_FILENAME; // .mmp + mmpFileName = fixedTarget; + if (targetType == TypeExe) + mmpFileName.append("_exe"); + else if (targetType == TypeDll || targetType == TypePlugin) + mmpFileName.append("_dll"); + else if (targetType == TypeLib) + mmpFileName.append("_lib"); + mmpFileName.append(Option::mmp_ext); + initMmpVariables(); uid2 = project->first("TARGET.UID2"); @@ -480,7 +484,7 @@ void SymbianMakefileGenerator::writeMmpFileHeader(QTextStream &t) t << QDateTime::currentDateTime().toString(Qt::ISODate) << endl; t << "// This file is generated by qmake and should not be modified by the" << endl; t << "// user." << endl; - t << "// Name : " << escapeFilePath(fileFixify(project->projectFile().remove(project->projectFile().length() - 4, 4))) << Option::mmp_ext << endl; + t << "// Name : " << mmpFileName << endl; t << "// ==============================================================================" << endl << endl; } @@ -890,8 +894,6 @@ void SymbianMakefileGenerator::writeBldInfContent(QTextStream &t, bool addDeploy // Add includes of subdirs bld.inf files - QString mmpfilename = escapeFilePath(fileFixify(project->projectFile())); - mmpfilename = mmpfilename.replace(mmpfilename.lastIndexOf("."), 4, Option::mmp_ext); QString currentPath = qmake_getpwd(); QDir directory(currentPath); @@ -973,15 +975,8 @@ void SymbianMakefileGenerator::writeBldInfContent(QTextStream &t, bool addDeploy t << endl << mmpTag << endl << endl; writeBldInfMkFilePart(t, addDeploymentExtension); - if (targetType != TypeSubdirs) { - QString shortProFilename = project->projectFile(); - shortProFilename.replace(0, shortProFilename.lastIndexOf("/") + 1, QString("")); - shortProFilename.replace(Option::pro_ext, QString("")); - - QString mmpFilename = shortProFilename + QString("_") + uid3 + Option::mmp_ext; - - t << mmpFilename << endl; - } + if (targetType != TypeSubdirs) + t << mmpFileName << endl; userItems = userBldInfRules.value(mmpTag); foreach(QString item, userItems) diff --git a/qmake/generators/symbian/symmake.h b/qmake/generators/symbian/symmake.h index 9853790..a1a8e88 100644 --- a/qmake/generators/symbian/symmake.h +++ b/qmake/generators/symbian/symmake.h @@ -59,6 +59,7 @@ class SymbianMakefileGenerator : public MakefileGenerator, public SymbianCommonG protected: QString platform; QString uid2; + QString mmpFileName; QMap<QString, QStringList> sources; QMap<QString, QStringList> systeminclude; QMap<QString, QStringList> library; @@ -78,6 +79,7 @@ protected: QString generateUID3(); void initMmpVariables(); + void generateMmpFileName(); void handleMmpRulesOverrides(QString &checkString, bool &inResourceBlock, QStringList &restrictedMmpKeywords, diff --git a/qmake/generators/symbian/symmake_abld.cpp b/qmake/generators/symbian/symmake_abld.cpp index d60528b..c896ac6 100644 --- a/qmake/generators/symbian/symmake_abld.cpp +++ b/qmake/generators/symbian/symmake_abld.cpp @@ -70,10 +70,6 @@ SymbianAbldMakefileGenerator::~SymbianAbldMakefileGenerator() { } void SymbianAbldMakefileGenerator::writeMkFile(const QString& wrapperFileName, bool deploymentOnly) { - QString gnuMakefileName = QLatin1String("Makefile_") + uid3; - removeEpocSpecialCharacters(gnuMakefileName); - gnuMakefileName.append(".mk"); - QFile ft(gnuMakefileName); if (ft.open(QIODevice::WriteOnly)) { generatedFiles << ft.fileName(); @@ -471,9 +467,8 @@ void SymbianAbldMakefileGenerator::writeBldInfMkFilePart(QTextStream& t, bool ad // Normally emulator deployment gets done via regular makefile, but since subdirs // do not get that, special deployment only makefile is generated for them if needed. if (targetType != TypeSubdirs || addDeploymentExtension) { - QString gnuMakefileName = QLatin1String("Makefile_") + uid3; - removeEpocSpecialCharacters(gnuMakefileName); - gnuMakefileName.append(".mk"); + gnuMakefileName = QLatin1String("Makefile_") + fileInfo(mmpFileName).completeBaseName() + + QLatin1String(".mk"); t << "gnumakefile " << gnuMakefileName << endl; } } diff --git a/qmake/generators/symbian/symmake_abld.h b/qmake/generators/symbian/symmake_abld.h index f998b28..214e0c5 100644 --- a/qmake/generators/symbian/symmake_abld.h +++ b/qmake/generators/symbian/symmake_abld.h @@ -58,7 +58,7 @@ protected: virtual void appendAbldTempDirs(QStringList& sysincspaths, QString includepath); bool writeDeploymentTargets(QTextStream &t, bool isRom); - + QString gnuMakefileName; public: SymbianAbldMakefileGenerator(); -- cgit v0.12 From 0df2adc66a72aeed79906e86527f80b337b32ab1 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Fri, 6 Aug 2010 13:34:53 +0200 Subject: Doc: Fixing validation bugs --- tools/qdoc3/test/qt-html-templates.qdocconf | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tools/qdoc3/test/qt-html-templates.qdocconf b/tools/qdoc3/test/qt-html-templates.qdocconf index cf15628..94c8f47 100644 --- a/tools/qdoc3/test/qt-html-templates.qdocconf +++ b/tools/qdoc3/test/qt-html-templates.qdocconf @@ -12,7 +12,7 @@ HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ " <div id=\"nav-logo\">\n" \ " <a href=\"index.html\">Home</a></div>\n" \ " <a href=\"index.html\" class=\"qtref\"><span>Qt Reference Documentation</span></a>\n" \ - " <div id=\"narrowsearch\"><form onsubmit=\"return false;\" action=\"\" id=\"qtdocsearch\">\n" \ + " <div id=\"narrowsearch\"><form onsubmit=\"return false;\" action=\"\" id=\"qtdocsearchTop\">\n" \ " <fieldset>\n" \ " <input type=\"text\" value=\"\" id=\"pageType2\" name=\"searchstring\"/>\n" \ " </fieldset>\n" \ @@ -41,7 +41,7 @@ HTML.postheader = " <div class=\"header\" id=\"qtdocheader\">\n" \ " <li><a href=\"functions.html\">Function index</a></li> \n" \ " <li><a href=\"modules.html\">Modules</a></li> \n" \ " <li><a href=\"namespaces.html\">Namespaces</a></li> \n" \ - " <li><a href=\"qtglobal.html\">Global stuff</a></li> \n" \ + " <li><a href=\"qtglobal.html\">Global Declarations</a></li> \n" \ " <li><a href=\"qdeclarativeelements.html\">QML elements</a></li> \n" \ " </ul> \n" \ " </li> \n" \ @@ -149,6 +149,7 @@ HTML.footer = " <!-- /div -->\n" \ " <span></span>\n" \ " </div>\n" \ " </div> \n" \ + " </div> \n" \ " <div class=\"footer\">\n" \ " <p>\n" \ " <acronym title=\"Copyright\">©</acronym> 2008-2010 Nokia Corporation and/or its\n" \ @@ -161,8 +162,8 @@ HTML.footer = " <!-- /div -->\n" \ " <div id=\"feedbackBox\">\n" \ " <div id=\"feedcloseX\" class=\"feedclose t_button\">X</div>\n" \ " <form id=\"feedform\" action=\"http://doc.qt.nokia.com/docFeedbck/feedback.php\" method=\"get\">\n" \ - " <p id=\"noteHead\">Thank you for giving your feedback. <div class=\"note\">Make sure it is related to this specific page. For more general bugs and \n" \ - " requests, please use the <a href=\"http://bugreports.qt.nokia.com/secure/Dashboard.jspa\">Qt Bug Tracker</a>.</div></p>\n" \ + " <p id=\"noteHead\">Thank you for giving your feedback.</p> <div class=\"note\"><p>Make sure it is related to this specific page. For more general bugs and \n" \ + " requests, please use the <a href=\"http://bugreports.qt.nokia.com/secure/Dashboard.jspa\">Qt Bug Tracker</a>.</p></div>\n" \ " <p><textarea id=\"feedbox\" name=\"feedText\" rows=\"5\" cols=\"40\"></textarea></p>\n" \ " <p><input id=\"feedsubmit\" class=\"feedclose\" type=\"submit\" name=\"feedback\" /></p>\n" \ " </form>\n" \ -- cgit v0.12 From 2118f407b02654e9e3c6706647e8b9b711e8982b Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Fri, 6 Aug 2010 14:30:42 +0200 Subject: doc: Re-introduced next/previous page links in the footer. Task-Nr: QTBUG-12278 --- tools/qdoc3/htmlgenerator.cpp | 55 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index b1a8336..d23b41e 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -1878,6 +1878,61 @@ void HtmlGenerator::generateHeader(const QString& title, break; } + navigationLinks.clear(); + + if (node && !node->links().empty()) { + QPair<QString,QString> linkPair; + QPair<QString,QString> anchorPair; + const Node *linkNode; + + if (node->links().contains(Node::PreviousLink)) { + linkPair = node->links()[Node::PreviousLink]; + linkNode = findNodeForTarget(linkPair.first, node, marker); + if (!linkNode || linkNode == node) + anchorPair = linkPair; + else + anchorPair = anchorForNode(linkNode); + + out() << " <link rel=\"prev\" href=\"" + << anchorPair.first << "\" />\n"; + + navigationLinks += "[Previous: <a href=\"" + anchorPair.first + "\">"; + if (linkPair.first == linkPair.second && !anchorPair.second.isEmpty()) + navigationLinks += protect(anchorPair.second); + else + navigationLinks += protect(linkPair.second); + navigationLinks += "</a>]\n"; + } + if (node->links().contains(Node::NextLink)) { + linkPair = node->links()[Node::NextLink]; + linkNode = findNodeForTarget(linkPair.first, node, marker); + if (!linkNode || linkNode == node) + anchorPair = linkPair; + else + anchorPair = anchorForNode(linkNode); + + out() << " <link rel=\"next\" href=\"" + << anchorPair.first << "\" />\n"; + + navigationLinks += "[Next: <a href=\"" + anchorPair.first + "\">"; + if (linkPair.first == linkPair.second && !anchorPair.second.isEmpty()) + navigationLinks += protect(anchorPair.second); + else + navigationLinks += protect(linkPair.second); + navigationLinks += "</a>]\n"; + } + if (node->links().contains(Node::StartLink)) { + linkPair = node->links()[Node::StartLink]; + linkNode = findNodeForTarget(linkPair.first, node, marker); + if (!linkNode || linkNode == node) + anchorPair = linkPair; + else + anchorPair = anchorForNode(linkNode); + out() << " <link rel=\"start\" href=\"" + << anchorPair.first << "\" />\n"; + } + } + #if 0 // Removed for new doc format. MWS if (node && !node->links().empty()) out() << "<p>\n" << navigationLinks << "</p>\n"; -- cgit v0.12 From 065cc163d7848131dcfd8bb210c8590b6cd11991 Mon Sep 17 00:00:00 2001 From: Pierre Rossi <pierre.rossi@nokia.com> Date: Wed, 30 Jun 2010 21:47:37 +0200 Subject: Some french translations Reviewed-by: gabi --- tools/linguist/phrasebooks/french.qph | 22 +- translations/assistant_fr.ts | 220 - translations/designer_fr.ts | 1437 +---- translations/linguist_fr.ts | 412 -- translations/qt_fr.ts | 10775 ++++++++++++++++++-------------- translations/qt_help_fr.ts | 158 +- 6 files changed, 6251 insertions(+), 6773 deletions(-) diff --git a/tools/linguist/phrasebooks/french.qph b/tools/linguist/phrasebooks/french.qph index 9e1a580..47cb306 100644 --- a/tools/linguist/phrasebooks/french.qph +++ b/tools/linguist/phrasebooks/french.qph @@ -801,7 +801,7 @@ </phrase> <phrase> <source>Redo</source> - <target>Annuler Annuler</target> + <target>Rétablir</target> </phrase> <phrase> <source>region selection</source> @@ -1111,10 +1111,6 @@ <target>&Édition</target> </phrase> <phrase> - <source>&Redo</source> - <target>Re&faire</target> -</phrase> -<phrase> <source>debugger</source> <target>débogueur</target> </phrase> @@ -1438,4 +1434,20 @@ <source>&Debug</source> <target>&Déboguer</target> </phrase> +<phrase> + <source>Slider</source> + <target>Barre de défilement</target> +</phrase> +<phrase> + <source>&Restore</source> + <target>&Restaurer</target> +</phrase> +<phrase> + <source>&Move</source> + <target>&Déplacer</target> +</phrase> +<phrase> + <source>New</source> + <target>Créer</target> +</phrase> </QPH> diff --git a/translations/assistant_fr.ts b/translations/assistant_fr.ts index 4c6c5a0..e8f5fd1 100644 --- a/translations/assistant_fr.ts +++ b/translations/assistant_fr.ts @@ -4,7 +4,6 @@ <context> <name>AboutDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/aboutdialog.cpp" line="+110"/> <source>&Close</source> <translation>&Fermer</translation> </message> @@ -12,19 +11,16 @@ <context> <name>AboutLabel</name> <message> - <location line="-14"/> <source>Warning</source> <translation>Avertissement</translation> </message> <message> - <location line="+1"/> <source>Unable to launch external application. </source> <translation>Impossible d'ouvrir l'application externe. </translation> </message> <message> - <location line="+1"/> <source>OK</source> <translation>OK</translation> </message> @@ -32,46 +28,34 @@ <context> <name>BookmarkDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/bookmarkdialog.ui"/> <source>Add Bookmark</source> <translation>Ajouter un signet</translation> </message> <message> - <location/> <source>Bookmark:</source> <translation>Signet :</translation> </message> <message> - <location/> <source>Add in Folder:</source> <translation>Ajouter dans le dossier :</translation> </message> <message> - <location/> <source>+</source> <translation>+</translation> </message> <message> - <location/> <source>New Folder</source> <translation>Nouveau dossier</translation> </message> <message> - <location filename="../tools/assistant/tools/assistant/bookmarkmanager.cpp" line="+184"/> - <location line="+18"/> - <location line="+39"/> - <location line="+18"/> - <location line="+30"/> <source>Bookmarks</source> <translation>Signets</translation> </message> <message> - <location line="-61"/> <source>Delete Folder</source> <translation>Supprimer le dossier</translation> </message> <message> - <location line="+1"/> <source>Rename Folder</source> <translation>Renommer le dossier</translation> </message> @@ -79,23 +63,18 @@ <context> <name>BookmarkManager</name> <message> - <location line="+435"/> <source>Bookmarks</source> <translation>Signets</translation> </message> <message> - <location line="+37"/> <source>Remove</source> <translation>Suppression</translation> </message> <message> - <location line="+1"/> <source>You are going to delete a Folder, this will also<br>remove it's content. Are you sure to continue?</source> <translation>Vous allez supprimer un dossier, ceci va aussi<br>supprimer son contenu. Voulez-vous continuer ?</translation> </message> <message> - <location line="+143"/> - <location line="+9"/> <source>New Folder</source> <translation>Nouveau dossier</translation> </message> @@ -103,47 +82,38 @@ <context> <name>BookmarkWidget</name> <message> - <location line="-463"/> <source>Delete Folder</source> <translation>Supprimer le dossier</translation> </message> <message> - <location line="+1"/> <source>Rename Folder</source> <translation>Renommer le dossier</translation> </message> <message> - <location line="+2"/> <source>Show Bookmark</source> <translation>Afficher le signet</translation> </message> <message> - <location line="+1"/> <source>Show Bookmark in New Tab</source> <translation>Afficher le signet dans un nouvel onglet</translation> </message> <message> - <location line="+3"/> <source>Delete Bookmark</source> <translation>Supprimer le signet</translation> </message> <message> - <location line="+1"/> <source>Rename Bookmark</source> <translation>Renommer le signet</translation> </message> <message> - <location line="+38"/> <source>Filter:</source> <translation>Filtre :</translation> </message> <message> - <location line="+24"/> <source>Add</source> <translation>Ajouter</translation> </message> <message> - <location line="+9"/> <source>Remove</source> <translation>Retirer</translation> </message> @@ -151,48 +121,38 @@ <context> <name>CentralWidget</name> <message> - <location filename="../tools/assistant/tools/assistant/centralwidget.cpp" line="+239"/> <source>Add new page</source> <translation>Créer une nouvelle page</translation> </message> <message> - <location line="+9"/> <source>Close current page</source> <translation>Fermer la page courante</translation> </message> <message> - <location line="+312"/> <source>Print Document</source> <translation>Imprimer le document</translation> </message> <message> - <location line="+130"/> - <location line="+2"/> <source>unknown</source> <translation>inconnu</translation> </message> <message> - <location line="+93"/> <source>Add New Page</source> <translation>Créer une nouvelle page</translation> </message> <message> - <location line="+3"/> <source>Close This Page</source> <translation>Fermer cette page</translation> </message> <message> - <location line="+3"/> <source>Close Other Pages</source> <translation>Fermer les autres pages</translation> </message> <message> - <location line="+5"/> <source>Add Bookmark for this Page...</source> <translation>Ajouter un signet pour cette page...</translation> </message> <message> - <location line="+235"/> <source>Search</source> <translation>Recherche</translation> </message> @@ -200,12 +160,10 @@ <context> <name>ContentWindow</name> <message> - <location filename="../tools/assistant/tools/assistant/contentwindow.cpp" line="+158"/> <source>Open Link</source> <translation>Ouvrir le lien</translation> </message> <message> - <location line="+1"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> @@ -213,12 +171,10 @@ <context> <name>FilterNameDialogClass</name> <message> - <location filename="../tools/assistant/tools/assistant/filternamedialog.ui"/> <source>Add Filter Name</source> <translation>Ajouter un filtre</translation> </message> <message> - <location/> <source>Filter Name:</source> <translation>Nom du filtre :</translation> </message> @@ -226,27 +182,22 @@ <context> <name>FindWidget</name> <message> - <location filename="../tools/assistant/tools/assistant/centralwidget.cpp" line="-918"/> <source>Previous</source> <translation>Précédent</translation> </message> <message> - <location line="+4"/> <source>Next</source> <translation>Suivant</translation> </message> <message> - <location line="+4"/> <source>Case Sensitive</source> <translation>Sensible à la casse</translation> </message> <message> - <location line="+3"/> <source>Whole words</source> <translation>Mots complets</translation> </message> <message> - <location line="+12"/> <source><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Search wrapped</source> <translation><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Recherche à partir du début</translation> </message> @@ -254,27 +205,22 @@ <context> <name>FontPanel</name> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="+63"/> <source>Font</source> <translation>Police</translation> </message> <message> - <location line="+11"/> <source>&Writing system</source> <translation>&Système d'écriture</translation> </message> <message> - <location line="+3"/> <source>&Family</source> <translation>&Famille</translation> </message> <message> - <location line="+4"/> <source>&Style</source> <translation>&Style</translation> </message> <message> - <location line="+4"/> <source>&Point size</source> <translation>&Taille en points</translation> </message> @@ -282,39 +228,32 @@ <context> <name>HelpViewer</name> <message> - <location filename="../tools/assistant/tools/assistant/helpviewer.cpp" line="+281"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> <message> - <location line="+147"/> <source><title>Error 404...</title><div align="center"><br><br><h1>The page could not be found</h1><br><h3>'%1'</h3></div></source> <translation><title>Erreur 404...</title><div align="center"><br><br><h1>La page n'a pas pu être trouvée</h1><br><h3>'%1'</h3></div></translation> </message> <message> - <location line="+61"/> <source>Help</source> <translation>Aide</translation> </message> <message> - <location line="+1"/> <source>Unable to launch external application. </source> <translation>Impossible de lancer l'application externe. </translation> </message> <message> - <location line="+0"/> <source>OK</source> <translation>OK</translation> </message> <message> - <location line="+63"/> <source>Copy &Link Location</source> <translation>Copier l'&adresse cible</translation> </message> <message> - <location line="+3"/> <source>Open Link in New Tab Ctrl+LMB</source> <translatorcomment>LMB? ← ouais exactement pareil...</translatorcomment> <translation>Ouvrir dans un nouvel onglet Ctrl+clic gauche</translation> @@ -323,17 +262,14 @@ <context> <name>IndexWindow</name> <message> - <location filename="../tools/assistant/tools/assistant/indexwindow.cpp" line="+66"/> <source>&Look for:</source> <translation>&Rechercher :</translation> </message> <message> - <location line="+68"/> <source>Open Link</source> <translation>Ouvrir le lien</translation> </message> <message> - <location line="+1"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> @@ -341,97 +277,74 @@ <context> <name>InstallDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/installdialog.ui"/> - <location filename="../tools/assistant/tools/assistant/installdialog.cpp" line="+76"/> <source>Install Documentation</source> <translation>Installer la documentation</translation> </message> <message> - <location/> <source>Available Documentation:</source> <translation>Documentation disponible :</translation> </message> <message> - <location/> <source>Install</source> <translation>Installer</translation> </message> <message> - <location/> <source>Cancel</source> <translation>Annuler</translation> </message> <message> - <location/> <source>Close</source> <translation>Fermer</translation> </message> <message> - <location/> <source>Installation Path:</source> <translation>Chemin d'installation :</translation> </message> <message> - <location/> <source>...</source> <translation>…</translation> </message> <message> - <location filename="../tools/assistant/tools/assistant/installdialog.cpp" line="+30"/> <source>Downloading documentation info...</source> <translation>Téléchargement des informations de la documentation…</translation> </message> <message> - <location line="+48"/> <source>Download canceled.</source> <translation>Téléchargement annulé.</translation> </message> <message> - <location line="+26"/> - <location line="+78"/> - <location line="+27"/> <source>Done.</source> <translation>Terminé.</translation> </message> <message> - <location line="-90"/> <source>The file %1 already exists. Do you want to overwrite it?</source> <translation>Le fichier %1 existe déjà. Voulez-vous l'écraser ?</translation> </message> <message> - <location line="+11"/> <source>Unable to save the file %1: %2.</source> <translation>Impossible de sauver le fichier %1 : %2.</translation> </message> <message> - <location line="+8"/> <source>Downloading %1...</source> <translation>Téléchargement de %1 en cours…</translation> </message> <message> - <location line="+19"/> - <location line="+42"/> - <location line="+38"/> <source>Download failed: %1.</source> <translation>Échec du téléchargement : %1.</translation> </message> <message> - <location line="-70"/> <source>Documentation info file is corrupt!</source> <translation>Le fichier d'information de documentation est corrompu !</translation> </message> <message> - <location line="+37"/> <source>Download failed: Downloaded file is corrupted.</source> <translation>Échec du téléchargement : le fichier téléchargé est corrompu.</translation> </message> <message> - <location line="+2"/> <source>Installing documentation %1...</source> <translation>Installation de la documentation %1…</translation> </message> <message> - <location line="+22"/> <source>Error while installing documentation: %1</source> <translation>Erreur durant l'installation de la documentation : @@ -441,304 +354,239 @@ <context> <name>MainWindow</name> <message> - <location filename="../tools/assistant/tools/assistant/mainwindow.cpp" line="+110"/> - <location line="+383"/> <source>Index</source> <translation>Index</translation> </message> <message> - <location line="-377"/> - <location line="+375"/> <source>Contents</source> <translation>Sommaire</translation> </message> <message> - <location line="-370"/> - <location line="+374"/> <source>Bookmarks</source> <translation>Signets</translation> </message> <message> - <location line="-362"/> - <location line="+207"/> - <location line="+514"/> <source>Qt Assistant</source> <translation>Qt Assistant</translation> </message> <message> - <location line="-546"/> - <location line="+5"/> <source>Unfiltered</source> <translation>Non-filtré</translation> </message> <message> - <location line="+21"/> <source>Looking for Qt Documentation...</source> <translation>Recherche la documentation de Qt…</translation> </message> <message> - <location line="+84"/> <source>&File</source> <translation>&Fichier</translation> </message> <message> - <location line="+2"/> <source>Page Set&up...</source> <translation>&Mise en page…</translation> </message> <message> - <location line="+2"/> <source>Print Preview...</source> <translation>Aperçu avant impression…</translation> </message> <message> - <location line="+3"/> <source>&Print...</source> <translation>&Imprimer…</translation> </message> <message> - <location line="+7"/> <source>New &Tab</source> <translation>Nouvel ongle&t</translation> </message> <message> - <location line="+3"/> <source>&Close Tab</source> <translation>&Fermer l'onglet</translation> </message> <message> - <location line="+4"/> <source>&Quit</source> <translation>&Quitter</translation> </message> <message> - <location line="+4"/> <source>&Edit</source> <translation>&Édition</translation> </message> <message> - <location line="+1"/> <source>&Copy selected Text</source> <translation>&Copier le texte selectionné</translation> </message> <message> - <location line="+8"/> <source>&Find in Text...</source> <translation>&Rechercher dans le texte…</translation> </message> <message> - <location line="+2"/> <source>&Find</source> <translation>&Rechercher</translation> </message> <message> - <location line="+4"/> <source>Find &Next</source> <translation>Rechercher le suiva&nt</translation> </message> <message> - <location line="+4"/> <source>Find &Previous</source> <translation>Rechercher le &précédent</translation> </message> <message> - <location line="+5"/> <source>Preferences...</source> <translation>Préférences…</translation> </message> <message> - <location line="+3"/> <source>&View</source> <translation>&Affichage</translation> </message> <message> - <location line="+1"/> <source>Zoom &in</source> <translation>Zoom &avant</translation> </message> <message> - <location line="+6"/> <source>Zoom &out</source> <translation>Zoom a&rrière</translation> </message> <message> - <location line="+6"/> <source>Normal &Size</source> <translation>&Taille normale</translation> </message> <message> - <location line="+4"/> <source>Ctrl+0</source> <translation>Ctrl+0</translation> </message> <message> - <location line="+5"/> <source>ALT+C</source> <translation>ALT+C</translation> </message> <message> - <location line="+2"/> <source>ALT+I</source> <translation>ALT+I</translation> </message> <message> - <location line="+2"/> <source>ALT+O</source> <translation>ALT+O</translation> </message> <message> - <location line="+1"/> <source>Search</source> <translation>Recherche</translation> </message> <message> - <location line="+1"/> <source>ALT+S</source> <translation>ALT+S</translation> </message> <message> - <location line="+2"/> <source>&Go</source> <translation>A&ller</translation> </message> <message> - <location line="+1"/> <source>&Home</source> <translation>&Accueil</translation> </message> <message> - <location line="+1"/> <source>ALT+Home</source> <translation>ALT+Home</translation> </message> <message> - <location line="+3"/> <source>&Back</source> <translation>&Précédent</translation> </message> <message> - <location line="+5"/> <source>&Forward</source> <translation>&Suivant</translation> </message> <message> - <location line="+6"/> <source>Sync with Table of Contents</source> <translation>Synchroniser la table des matières</translation> </message> <message> - <location line="+2"/> <source>Sync</source> <translation>Rafraîchir</translation> </message> <message> - <location line="+5"/> <source>Next Page</source> <translation>Page suivante</translation> </message> <message> - <location line="+1"/> <source>Ctrl+Alt+Right</source> <translation>Ctrl+Alt+Right</translation> </message> <message> - <location line="+3"/> <source>Previous Page</source> <translation>Page précédente</translation> </message> <message> - <location line="+1"/> <source>Ctrl+Alt+Left</source> <translation>Ctrl+Alt+Left</translation> </message> <message> - <location line="+3"/> <source>&Bookmarks</source> <translation>Si&gnets</translation> </message> <message> - <location line="+1"/> <source>Add Bookmark...</source> <translation>Ajouter un signet…</translation> </message> <message> - <location line="+2"/> <source>CTRL+D</source> <translation>CTRL+D</translation> </message> <message> - <location line="+2"/> <source>&Help</source> <translation>Ai&de</translation> </message> <message> - <location line="+1"/> <source>About...</source> <translation>À propos…</translation> </message> <message> - <location line="+16"/> <source>Navigation Toolbar</source> <translation>Barre d'outils de navigation</translation> </message> <message> - <location line="+22"/> <source>&Window</source> <translation>&Fenêtre</translation> </message> <message> - <location line="+2"/> <source>Zoom</source> <translation>Zoom</translation> </message> <message> - <location line="+1"/> <source>Minimize</source> <translation>Minimiser</translation> </message> <message> - <location line="+1"/> <source>Ctrl+M</source> <translation>Ctrl+M</translation> </message> <message> - <location line="+50"/> <source>Toolbars</source> <translation>Barres d'outils</translation> </message> <message> - <location line="+15"/> <source>Filter Toolbar</source> <translation>Barre d'outils de filtrage</translation> </message> <message> - <location line="+2"/> <source>Filtered by:</source> <translation>Filtre :</translation> </message> <message> - <location line="+25"/> <source>Address Toolbar</source> <translation>Barre d'outils d'adresse</translation> </message> <message> - <location line="+4"/> <source>Address:</source> <translation>Adresse :</translation> </message> <message> - <location line="+114"/> <source>Could not find the associated content item.</source> <translatorcomment>what is item in this context? ← same question here</translatorcomment> <translation>Impossible de trouver l'élément de contenu associé.</translation> </message> <message> - <location line="+71"/> <source>About %1</source> <translation>À propos de %1</translation> </message> <message> - <location line="+114"/> <source>Updating search index</source> <translation>Mise à jour de l'index de recherche</translation> </message> @@ -746,48 +594,38 @@ <context> <name>PreferencesDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/preferencesdialog.cpp" line="+259"/> - <location line="+43"/> <source>Add Documentation</source> <translation>Ajouter de la documentation</translation> </message> <message> - <location line="-43"/> <source>Qt Compressed Help Files (*.qch)</source> <translation>Fichiers d'aide Qt compressés (*.qch)</translation> </message> <message> - <location line="+29"/> <source>The namespace %1 is already registered!</source> <translation>L'espace de nom %1 existe déjà !</translation> </message> <message> - <location line="+8"/> <source>The specified file is not a valid Qt Help File!</source> <translation>Le fichier spécifié n'est pas un fichier d'aide Qt valide !</translation> </message> <message> - <location line="+23"/> <source>Remove Documentation</source> <translation>Supprimer la documentation</translation> </message> <message> - <location line="+1"/> <source>Some documents currently opened in Assistant reference the documentation you are attempting to remove. Removing the documentation will close those documents.</source> <translation>Certains documents ouverts dans Assistant ont des références vers la documentation que vous allez supprimer. Supprimer la documentation fermera ces documents.</translation> </message> <message> - <location line="+2"/> <source>Cancel</source> <translation>Annuler</translation> </message> <message> - <location line="+1"/> <source>OK</source> <translation>OK</translation> </message> <message> - <location line="+88"/> <source>Use custom settings</source> <translation>Utiliser des paramètres personnalisés</translation> </message> @@ -795,118 +633,95 @@ <context> <name>PreferencesDialogClass</name> <message> - <location filename="../tools/assistant/tools/assistant/preferencesdialog.ui"/> <source>Preferences</source> <translation>Préférences</translation> </message> <message> - <location/> <source>Fonts</source> <translation>Polices</translation> </message> <message> - <location/> <source>Font settings:</source> <translation>Configuration des polices :</translation> </message> <message> - <location/> <source>Browser</source> <translation>Navigateur</translation> </message> <message> - <location/> <source>Application</source> <translation>Application</translation> </message> <message> - <location/> <source>Filters</source> <translation>Filtres</translation> </message> <message> - <location/> <source>Filter:</source> <translation>Filtre :</translation> </message> <message> - <location/> <source>Attributes:</source> <translation>Attributs :</translation> </message> <message> - <location/> <source>1</source> <translation>1</translation> </message> <message> - <location/> <source>Add</source> <translation>Ajouter</translation> </message> <message> - <location/> <source>Remove</source> <translation>Supprimer</translation> </message> <message> - <location/> <source>Documentation</source> <translation>Documentation</translation> </message> <message> - <location/> <source>Registered Documentation:</source> <translatorcomment>documentation enregistrée ? ← je préfère référencée pour les deux...</translatorcomment> <translation>Documentation référencée :</translation> </message> <message> - <location/> <source>Add...</source> <translation>Ajouter…</translation> </message> <message> - <location/> <source>Options</source> <translation>Options</translation> </message> <message> - <location/> <source>On help start:</source> <translation>Au démarrage :</translation> </message> <message> - <location/> <source>Show my home page</source> <translation>Afficher ma page d'accueil</translation> </message> <message> - <location/> <source>Show a blank page</source> <translation>Afficher une page blanche</translation> </message> <message> - <location/> <source>Show my tabs from last session</source> <translation>Afficher mes onglets de la dernière session</translation> </message> <message> - <location/> <source>Homepage</source> <translation>Page d'accueil</translation> </message> <message> - <location/> <source>Current Page</source> <translation>Page courante</translation> </message> <message> - <location/> <source>Blank Page</source> <translation>Page blanche</translation> </message> <message> - <location/> <source>Restore to default</source> <translation>Restaurer les valeurs par défaut</translation> </message> @@ -914,69 +729,50 @@ <context> <name>QObject</name> <message> - <location filename="../tools/assistant/tools/assistant/cmdlineparser.cpp" line="+112"/> <source>The specified collection file does not exist!</source> <translation>Le fichier de collection spécifié n'existe pas !</translation> </message> <message> - <location line="+4"/> <source>Missing collection file!</source> <translation>Fichier de collection manquant !</translation> </message> <message> - <location line="+9"/> <source>Invalid URL!</source> <translation>URL invalide !</translation> </message> <message> - <location line="+4"/> <source>Missing URL!</source> <translation>URL manquante !</translation> </message> <message> - <location line="+17"/> - <location line="+19"/> - <location line="+19"/> <source>Unknown widget: %1</source> <translation>Widget inconnu : %1</translation> </message> <message> - <location line="-34"/> - <location line="+19"/> - <location line="+19"/> <source>Missing widget!</source> <translation>Widget manquant !</translation> </message> <message> - <location line="+7"/> - <location line="+12"/> <source>The specified Qt help file does not exist!</source> <translation>Le fichier d'aide Qt spécifié n'existe pas !</translation> </message> <message> - <location line="-7"/> - <location line="+12"/> <source>Missing help file!</source> <translation>Fichier d'aide manquant !</translation> </message> <message> - <location line="+7"/> <source>Missing filter argument!</source> <translation>Argument de filtre manquant !</translation> </message> <message> - <location line="+12"/> <source>Unknown option: %1</source> <translation>Option inconnue : %1</translation> </message> <message> - <location line="+30"/> - <location line="+2"/> <source>Qt Assistant</source> <translation>Qt Assistant</translation> </message> <message> - <location filename="../tools/assistant/tools/assistant/main.cpp" line="+225"/> <source>Could not register documentation file %1 @@ -989,17 +785,14 @@ Raison : %2</translation> </message> <message> - <location line="+4"/> <source>Documentation successfully registered.</source> <translation>Documentation enregistrée avec succès.</translation> </message> <message> - <location line="+8"/> <source>Documentation successfully unregistered.</source> <translation>Documentation retirée avec succès.</translation> </message> <message> - <location line="+3"/> <source>Could not unregister documentation file %1 @@ -1012,12 +805,10 @@ Raison : %2</translation> </message> <message> - <location line="+37"/> <source>Cannot load sqlite database driver!</source> <translation>Impossible de charger le driver de la base de données sqlite !</translation> </message> <message> - <location line="+9"/> <source>The specified collection file could not be read!</source> <translation>Le fichier de collection spécifié ne peut pas être lu !</translation> </message> @@ -1025,12 +816,10 @@ Raison : <context> <name>RemoteControl</name> <message> - <location filename="../tools/assistant/tools/assistant/remotecontrol.cpp" line="+163"/> <source>Debugging Remote Control</source> <translation>Débogage du contrôle à distance</translation> </message> <message> - <location line="+1"/> <source>Received Command: %1 %2</source> <translation>Commande reçue : %1 %2</translation> </message> @@ -1038,22 +827,18 @@ Raison : <context> <name>SearchWidget</name> <message> - <location filename="../tools/assistant/tools/assistant/searchwidget.cpp" line="+196"/> <source>&Copy</source> <translation>&Copier</translation> </message> <message> - <location line="+4"/> <source>Copy &Link Location</source> <translation>Copier &l'adresse du lien</translation> </message> <message> - <location line="+4"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> <message> - <location line="+8"/> <source>Select All</source> <translation>Sélectionner tout</translation> </message> @@ -1061,27 +846,22 @@ Raison : <context> <name>TopicChooser</name> <message> - <location filename="../tools/assistant/tools/assistant/topicchooser.ui"/> <source>Choose Topic</source> <translation>Choisir le domaine</translation> </message> <message> - <location/> <source>&Topics</source> <translation>&Domaines</translation> </message> <message> - <location/> <source>&Display</source> <translation>&Afficher</translation> </message> <message> - <location/> <source>&Close</source> <translation>&Fermer</translation> </message> <message> - <location filename="../tools/assistant/tools/assistant/topicchooser.cpp" line="+54"/> <source>Choose a topic for <b>%1</b>:</source> <translation>Choisir le domaine pour <b>%1</b> :</translation> </message> diff --git a/translations/designer_fr.ts b/translations/designer_fr.ts index bfdbb73..175d5c5 100644 --- a/translations/designer_fr.ts +++ b/translations/designer_fr.ts @@ -4,27 +4,22 @@ <context> <name>AbstractFindWidget</name> <message> - <location filename="../tools/shared/findwidget/abstractfindwidget.cpp" line="127"/> <source>&Previous</source> <translation>&Précédent</translation> </message> <message> - <location filename="../tools/shared/findwidget/abstractfindwidget.cpp" line="135"/> <source>&Next</source> <translation>&Suivant</translation> </message> <message> - <location filename="../tools/shared/findwidget/abstractfindwidget.cpp" line="159"/> <source>&Case sensitive</source> <translation>&Sensible à la casse</translation> </message> <message> - <location filename="../tools/shared/findwidget/abstractfindwidget.cpp" line="167"/> <source>Whole &words</source> <translation>M&ots complets</translation> </message> <message> - <location filename="../tools/shared/findwidget/abstractfindwidget.cpp" line="179"/> <source><img src=":/trolltech/shared/images/wrap.png">&nbsp;Search wrapped</source> <translation><img src=":/trolltech/shared/images/wrap.png">&nbsp;Recherche à partir du début</translation> </message> @@ -32,17 +27,14 @@ <context> <name>AddLinkDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/addlinkdialog.ui" line="5"/> <source>Insert Link</source> <translation>Insérer lien</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/addlinkdialog.ui" line="19"/> <source>Title:</source> <translation>Titre :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/addlinkdialog.ui" line="36"/> <source>URL:</source> <translation>URL :</translation> </message> @@ -50,7 +42,6 @@ <context> <name>AppFontDialog</name> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="418"/> <source>Additional Fonts</source> <translation>Polices additionnelles</translation> </message> @@ -58,38 +49,31 @@ <context> <name>AppFontManager</name> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="151"/> <source>'%1' is not a file.</source> <translation>'%1' n'est pas un fichier.</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="155"/> <source>The font file '%1' does not have read permissions.</source> <translation>Le fichier de la police '%1' n'a pas les permissions de lecture.</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="163"/> <source>The font file '%1' is already loaded.</source> <translation>Le fichier de la police '%1' est déjà chargé.</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="170"/> <source>The font file '%1' could not be loaded.</source> <translatorcomment>passé composé plutôt</translatorcomment> <translation>Le fichier de la police '%1' n'a pas pu chargé.</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="187"/> <source>'%1' is not a valid font id.</source> <translation>'%1' n'est pas un identifiant de police valide.</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="198"/> <source>There is no loaded font matching the id '%1'.</source> <translation>Il n'y a pas de police chargée correspondant à l'identifiant '%1'.</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="213"/> <source>The font '%1' (%2) could not be unloaded.</source> <translation>La police '%1' (%2) ne peut pas être déchargée.</translation> </message> @@ -97,53 +81,43 @@ <context> <name>AppFontWidget</name> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="239"/> <source>Fonts</source> <translation>Polices</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="297"/> <source>Add font files</source> <translation>Ajouter des fichiers de polices</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="302"/> <source>Remove current font file</source> <translation>Retirer le fichier de police courant</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="306"/> <source>Remove all font files</source> <translation>Retirer tous les fichiers de polices</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="325"/> <source>Add Font Files</source> <translation>Ajouter des fichiers de polices</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="326"/> <source>Font files (*.ttf)</source> <translation>Fichier de polices (*.ttf)</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="339"/> <source>Error Adding Fonts</source> <translation>Erreur dans l'ajout de polices</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="363"/> <source>Error Removing Fonts</source> <translatorcomment>s/de/des/ pour être cohérent avec le suivant...</translatorcomment> <translation>Erreur lors de la suppression des polices</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="385"/> <source>Remove Fonts</source> <translation>Retirer les polices</translation> </message> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="385"/> <source>Would you like to remove all fonts?</source> <translation>Voulez-vous supprimer toutes les polices ?</translation> </message> @@ -151,12 +125,10 @@ <context> <name>AppearanceOptionsWidget</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.ui" line="14"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.ui" line="20"/> <source>User Interface Mode</source> <translation>Mode de l'interface utilisateur</translation> </message> @@ -164,17 +136,14 @@ <context> <name>AssistantClient</name> <message> - <location filename="../tools/designer/src/designer/assistantclient.cpp" line="100"/> <source>Unable to send request: Assistant is not responding.</source> <translation>Impossible d'envoyer la requête : Assistant ne répond pas.</translation> </message> <message> - <location filename="../tools/designer/src/designer/assistantclient.cpp" line="139"/> <source>The binary '%1' does not exist.</source> <translation>Le binaire '%1' n'existe pas.</translation> </message> <message> - <location filename="../tools/designer/src/designer/assistantclient.cpp" line="148"/> <source>Unable to launch assistant (%1).</source> <translation>Impossible de démarrer Assistant (%1).</translation> </message> @@ -182,93 +151,75 @@ <context> <name>BrushPropertyManager</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="52"/> <source>No brush</source> <translation>Pas de pinceau</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="53"/> <source>Solid</source> <translatorcomment>c'est plutôt continu ou "trait continu" pour moi</translatorcomment> <translation>Trait continu</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="54"/> <source>Dense 1</source> <translation>Dense 1</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="55"/> <source>Dense 2</source> <translation>Dense 2</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="56"/> <source>Dense 3</source> <translation>Dense 3</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="57"/> <source>Dense 4</source> <translation>Dense 4</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="58"/> <source>Dense 5</source> <translation>Dense 5</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="59"/> <source>Dense 6</source> <translation>Dense 6</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="60"/> <source>Dense 7</source> <translation>Dense 7</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="61"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="62"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="63"/> <source>Cross</source> <translation>Croix</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="64"/> <source>Backward diagonal</source> <translation>Diagonale arrière</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="65"/> <source>Forward diagonal</source> <translation>Diagonale avant</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="66"/> <source>Crossing diagonal</source> <translation>Diagonale croisée</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="149"/> <source>Style</source> <translation>Style</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="160"/> <source>Color</source> <translation>Couleur</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="265"/> <source>[%1, %2]</source> <translation>[%1, %2]</translation> </message> @@ -276,353 +227,276 @@ <context> <name>Command</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="208"/> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="466"/> <source>Change signal</source> <translation>Modifier le signal</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="210"/> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="478"/> <source>Change slot</source> <translation>Modifier le slot</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="258"/> <source>Change signal-slot connection</source> <translation>Modfier la connection signal-slot</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="492"/> <source>Change sender</source> <translatorcomment>expéditeur/source</translatorcomment> <translation>Modifier l'envoyeur</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="510"/> <source>Change receiver</source> <translatorcomment>destinataire++/cible?</translatorcomment> <translation>Modifier le destinataire</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="221"/> <source>Create button group</source> <translation>Créer un groupe de boutons</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="248"/> <source>Break button group</source> <translation>Dissocier le groupe de bouton</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="257"/> <source>Break button group '%1'</source> <translation>Dissossier le groupe de bouton '%1'</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="274"/> <source>Add buttons to group</source> <translation>Ajouter les boutons au groupe</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="282"/> - <location filename="../tools/designer/src/lib/shared/formlayoutmenu.cpp" line="458"/> <source>Add '%1' to '%2'</source> <extracomment>Command description for adding buttons to a QButtonGroup</extracomment> <translation>Ajouter '%1' à '%2'</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="296"/> <source>Remove buttons from group</source> <translation>Retirer les boutons du groupe</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="311"/> <source>Remove '%1' from '%2'</source> <extracomment>Command description for removing buttons from a QButtonGroup</extracomment> <translation>Retirer '%1' de '%2'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="143"/> <source>Add connection</source> <translation>Ajouter une connexion</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="197"/> <source>Adjust connection</source> <translation>Réajuster les connexions</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="216"/> <source>Delete connections</source> <translation>Supprimer les connexions</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="274"/> <source>Change source</source> <translation>Modifier la source</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="276"/> <source>Change target</source> <translation>Modifier la cible</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/morphmenu.cpp" line="349"/> <source>Morph %1/'%2' into %3</source> <extracomment>MorphWidgetCommand description</extracomment> <translation>Transformer %1/'%2' en %3</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="149"/> <source>Insert '%1'</source> <translation>Insérer '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="282"/> <source>Change Z-order of '%1'</source> <translatorcomment>l'ordre de '%1' sur l'axe z? profondeur ?</translatorcomment> <translation>Modifier la profondeur de '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="316"/> <source>Raise '%1'</source> <translation>Élever '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="349"/> <source>Lower '%1'</source> <translation>Abaisser '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="462"/> <source>Delete '%1'</source> <translation>Supprimer '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="581"/> <source>Reparent '%1'</source> <translation>Reparenter '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="634"/> <source>Promote to custom widget</source> <translation>Promouvoir en widget personnalisé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="676"/> <source>Demote from custom widget</source> <translation>Annuler la promotion en widget personnalisé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="755"/> <source>Lay out using grid</source> <translation>Mettre en page à l'aide d'une grille</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="758"/> <source>Lay out vertically</source> <translation>Mettre en page verticalement</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="761"/> <source>Lay out horizontaly</source> + <translation type="obsolete">Mettre en page horizontalement</translation> + </message> + <message> + <source>Lay out horizontally</source> <translation>Mettre en page horizontalement</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="802"/> <source>Break layout</source> <translation>Casser la mise en page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="907"/> <source>Simplify Grid Layout</source> <translation>Simplifier la mise en page en grille</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1042"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1277"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1355"/> <source>Move Page</source> <translation>Déplacer la page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1076"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1199"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1387"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2053"/> <source>Delete Page</source> <translation>Supprimer la page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1114"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1237"/> <source>Page</source> <translation>Page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1119"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1242"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1428"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2095"/> <source>Insert Page</source> <translation>Insérer une page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1448"/> <source>Change Tab order</source> <translation>Modifier l'ordre des tabulations</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1476"/> <source>Create Menu Bar</source> <translation>Créer une barre de menu</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1520"/> <source>Delete Menu Bar</source> <translation>Supprimer la barre de menu</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1567"/> <source>Create Status Bar</source> <translation>Créer une barre d'état</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1609"/> <source>Delete Status Bar</source> <translation>Supprimer la barre d'état</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1654"/> <source>Add Tool Bar</source> <translation>Ajouter une barre d'outil</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1713"/> <source>Add Dock Window</source> <translation>Ajouter une fenêtre ancrable</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1766"/> <source>Adjust Size of '%1'</source> <translation>Ajuster les dimensions de '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1823"/> <source>Change Form Layout Item Geometry</source> <translation>Modifier la géométrie de l'élément de formulaire</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="1918"/> <source>Change Layout Item Geometry</source> <translation>Modifier la géométrie de l'élément de mise en page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2056"/> <source>Delete Subwindow</source> <translation>Supprimer la sous-fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2097"/> <source>page</source> <translation>page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2100"/> <source>Insert Subwindow</source> <translation>Insérer une sous-fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2102"/> <source>subwindow</source> <translation>sous-fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2103"/> <source>Subwindow</source> <translation>Sous fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2494"/> <source>Change Table Contents</source> <translation>Modifier le contenu de la table</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2601"/> <source>Change Tree Contents</source> <translation>Modifier le contenu de l'arbre</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2675"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2821"/> <source>Add action</source> <translation>Ajouter une action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2701"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2827"/> <source>Remove action</source> <translation>Supprimer l'action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2880"/> <source>Add menu</source> <translation>Ajouter un menu</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2886"/> <source>Remove menu</source> <translation>Supprimer le menu</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2892"/> <source>Create submenu</source> <translation>Créer une sous-fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="2923"/> <source>Delete Tool Bar</source> <translation>Supprimer la barre d'outils</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command2.cpp" line="154"/> <source>Change layout of '%1' from %2 to %3</source> <translation>Modifier la mise en page de '%1' de %2 à %3</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="1195"/> <source>Set action text</source> <translation>Définir le texte de l'action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="1198"/> <source>Insert action</source> <translation>Insérer action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="1287"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="907"/> <source>Move action</source> <translation>Déplacer action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="483"/> <source>Change Title</source> <translation>Modifier le titre</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="485"/> <source>Insert Menu</source> <translation>Insérer menu</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1213"/> <source>Changed '%1' of '%2'</source> <translation>Modifier '%1' de '%2'</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1216"/> <source>Changed '%1' of %n objects</source> <translation> <numerusform>Modifier '%1' de %n objet</numerusform> @@ -630,12 +504,10 @@ </translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1292"/> <source>Reset '%1' of '%2'</source> <translation>Réinitialiser '%1' de '%2'</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1295"/> <source>Reset '%1' of %n objects</source> <translation> <numerusform>Réinitialiser '%1' de %n objet</numerusform> @@ -643,12 +515,10 @@ </translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1384"/> <source>Add dynamic property '%1' to '%2'</source> <translation>Ajouter la propriété dynamique '%1' à '%2'</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1387"/> <source>Add dynamic property '%1' to %n objects</source> <translation> <numerusform>Ajouter la propriété dynamique '%1' à %n objet</numerusform> @@ -656,12 +526,10 @@ </translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1473"/> <source>Remove dynamic property '%1' from '%2'</source> <translation>Supprimer la propriété dynamique '%1' de '%2'</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="1476"/> <source>Remove dynamic property '%1' from %n objects</source> <translation> <numerusform>Supprimer la propriété dynamique '%1' de %n objet</numerusform> @@ -669,12 +537,10 @@ </translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/scriptcommand.cpp" line="55"/> <source>Change script</source> <translation>Modifier le script</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="202"/> <source>Change signals/slots</source> <translation>Modifier signaux/slots</translation> </message> @@ -682,24 +548,18 @@ <context> <name>ConnectDialog</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui" line="13"/> <source>Configure Connection</source> <translation>Configurer connexion</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui" line="19"/> - <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui" line="59"/> <source>GroupBox</source> <translation>GroupBox</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui" line="34"/> - <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui" line="74"/> <source>Edit...</source> <translation>Éditer...</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui" line="99"/> <source>Show signals and slots inherited from QWidget</source> <translation>Afficher les signaux et slots hérités de QWidget</translation> </message> @@ -707,17 +567,14 @@ <context> <name>ConnectionDelegate</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="643"/> <source><object></source> <translation><objet></translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="661"/> <source><signal></source> <translation><signal></translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="661"/> <source><slot></source> <translation><slot></translation> </message> @@ -725,19 +582,16 @@ <context> <name>DPI_Chooser</name> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="69"/> <source>Standard (96 x 96)</source> <extracomment>Embedded device standard screen resolution</extracomment> <translation>Standard (96 x 96)</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="71"/> <source>Greenphone (179 x 185)</source> <extracomment>Embedded device screen resolution</extracomment> <translation>Greenphone (179 x 185)</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="73"/> <source>High (192 x 192)</source> <extracomment>Embedded device high definition screen resolution</extracomment> <translatorcomment>"haute resolution" would be missleading</translatorcomment> @@ -747,89 +601,72 @@ <context> <name>Designer</name> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="449"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="459"/> <source>This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form.</source> <translation>Ce fichier contient des ressorts de premier niveau. <br>Ils ne sont <b>PAS</b> sauvegardé dans le formulaire.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="461"/> <source>Perhaps you forgot to create a layout?</source> <translation>Peut-être avez-vous oublié de créer un layout ?</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="634"/> <source>Invalid UI file: The root element <ui> is missing.</source> <translation>Fichier UI invalide. L'élément racine <ui> est manquant.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="640"/> <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> <translation>Une erreur est survenue lors de la lecture du fichier UI à la ligne %1, colonne %2: %3</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="666"/> <source>This file cannot be read because it was created using %1.</source> <translation>Ce fichier ne peut pas être lu car il a été créé à l'aide de %1.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="680"/> <source>This file was created using Designer from Qt-%1 and cannot be read.</source> <translation>Ce fichier a été créé à l'aide du Designer de Qt-%1 et ne peut être lu.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="710"/> <source>The converted file could not be read.</source> <translation>Le fichier converti ne peut pas être lu.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="714"/> <source>This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer.</source> <translation>Ce fichier a été créé par le Designer de Qt-%1 et sera converti au nouveau format par Qt Designer.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="717"/> <source>The old form has not been touched, but you will have to save the form under a new name.</source> <translation>L'ancienne interface n'a pas été modifiée, vous devez sauvergarder l'interface sous un nouveau nom.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="728"/> <source>This file was created using Designer from Qt-%1 and could not be read: %2</source> <translation>Le fichier a été créé à l'aide de Designer de Qt-%1 et ne peut pas être lu : %2</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="731"/> <source>Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format.</source> <translation>Veuillez le faire passer par <b>uic3&nbsp;-convert</b> pour le convertir au format de fichier de Qt 4.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="762"/> <source>This file cannot be read because the extra info extension failed to load.</source> <translation>Ce fichier ne peut pas être lu car les informations d'extension n'ont pu être chargées.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="682"/> <source>Unable to launch %1.</source> <translation>Impossible de lancer %1.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="686"/> <source>%1 timed out.</source> <translation>%1 est arrivé à échéance.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qsimpleresource.cpp" line="339"/> <source>Custom Widgets</source> <translation>Widgets personnalisés</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qsimpleresource.cpp" line="351"/> <source>Promoted Widgets</source> <translation>Widgets promus</translation> </message> @@ -837,12 +674,10 @@ <context> <name>DesignerMetaEnum</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="173"/> <source>%1 is not a valid enumeration value of '%2'.</source> <translation>%1 n'est pas une valeur d'énumeration valide de '%2'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="178"/> <source>'%1' could not be converted to an enumeration value of type '%2'.</source> <translation>'%1' ne peut pas être converti en une valeur d'énumération de type '%2'.</translation> </message> @@ -850,7 +685,6 @@ <context> <name>DesignerMetaFlags</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="256"/> <source>'%1' could not be converted to a flag value of type '%2'.</source> <translation>'%1' ne peut pas être converti en un drapeau de type '%2'.</translation> </message> @@ -858,13 +692,11 @@ <context> <name>DeviceProfile</name> <message> - <location filename="../tools/designer/src/lib/shared/deviceprofile.cpp" line="397"/> <source>'%1' is not a number.</source> <extracomment>Reading a number for an embedded device profile</extracomment> <translation>'%1' n'est pas un nombre.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/deviceprofile.cpp" line="420"/> <source>An invalid tag <%1> was encountered.</source> <translation>La balise invalide <%1> a été rencontré.</translation> </message> @@ -872,27 +704,22 @@ <context> <name>DeviceProfileDialog</name> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.ui" line="20"/> <source>&Family</source> <translation>&Famille</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.ui" line="33"/> <source>&Point Size</source> <translation>&Taille en points</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.ui" line="46"/> <source>Style</source> <translation>Style</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.ui" line="59"/> <source>Device DPI</source> <translation>PPP/DPI de l'appareil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.ui" line="69"/> <source>Name</source> <translation>Nom</translation> </message> @@ -900,57 +727,46 @@ <context> <name>DeviceSkin</name> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="79"/> <source>The image file '%1' could not be loaded.</source> <translation>Le fichier image '%1' n'a pas pu être chargé.</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="143"/> <source>The skin directory '%1' does not contain a configuration file.</source> <translation>Le repertoire de revêtement '%1' ne contient pas un fichier de configuration.</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="148"/> <source>The skin configuration file '%1' could not be opened.</source> <translation>Le fichier de configuration de revêtement '%1' ne peut pas être ouvert.</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="154"/> <source>The skin configuration file '%1' could not be read: %2</source> <translation>Le fichier de configuration de revêtement '%1' ne peut pas être lu: %2</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="224"/> <source>Syntax error: %1</source> <translation>Erreur de syntaxe : %1</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="245"/> <source>The skin "up" image file '%1' does not exist.</source> <translation>Le fichier image "up" de revêtement '%1' n'existe pas.</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="255"/> <source>The skin "down" image file '%1' does not exist.</source> <translation>Le fichier image "down" de revêtement '%1' n'existe pas.</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="266"/> <source>The skin "closed" image file '%1' does not exist.</source> <translation>Le fichier image "closed" de revêtement '%1' n'existe pas.</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="278"/> <source>The skin cursor image file '%1' does not exist.</source> <translation>Le fichier image de revêtement '%1' n'existe pas.</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="303"/> <source>Syntax error in area definition: %1</source> <translation>Erreur de syntaxe dans la zone de définition : %1</translation> </message> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="341"/> <source>Mismatch in number of areas, expected %1, got %2.</source> <translation>Incohérence dans le nombre de zones, %1 attendu, %2 reçu.</translation> </message> @@ -958,7 +774,6 @@ <context> <name>EmbeddedOptionsControl</name> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="307"/> <source><html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Resolution</b></td><td>%4 x %5</td></tr></table></html></source> <extracomment>Format embedded device profile description</extracomment> <translation><html><table><tr><td><b>Police</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Résolution</b></td><td>%4 x %5</td></tr></table></html></translation> @@ -967,13 +782,11 @@ <context> <name>EmbeddedOptionsPage</name> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="410"/> <source>Embedded Design</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Design pour appareil mobile</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="420"/> <source>Device Profiles</source> <extracomment>EmbeddedOptionsControl group box"</extracomment> <translation>Profils des appareils</translation> @@ -982,27 +795,22 @@ <context> <name>FontPanel</name> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="63"/> <source>Font</source> <translation>Police</translation> </message> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="74"/> <source>&Writing system</source> <translation>&Système d'écriture</translation> </message> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="77"/> <source>&Family</source> <translation>&Famille</translation> </message> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="81"/> <source>&Style</source> <translation>&Style</translation> </message> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="85"/> <source>&Point size</source> <translation>&Taille en points</translation> </message> @@ -1010,22 +818,18 @@ <context> <name>FontPropertyManager</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/fontpropertymanager.cpp" line="62"/> <source>PreferDefault</source> <translation>PreferDefault</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/fontpropertymanager.cpp" line="63"/> <source>NoAntialias</source> <translation>NoAntialias</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/fontpropertymanager.cpp" line="64"/> <source>PreferAntialias</source> <translation>PreferAntialias</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/fontpropertymanager.cpp" line="125"/> <source>Antialiasing</source> <translation>Antialiasing</translation> </message> @@ -1033,13 +837,11 @@ <context> <name>FormBuilder</name> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilderextra.cpp" line="359"/> <source>Invalid stretch value for '%1': '%2'</source> <extracomment>Parsing layout stretch values</extracomment> <translation>Valeur d'extension invalide pour '%1' : '%2'</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilderextra.cpp" line="421"/> <source>Invalid minimum size for '%1': '%2'</source> <extracomment>Parsing grid layout minimum size values</extracomment> <translation>Taille minimum invalide pour '%1' : '%2'</translation> @@ -1048,28 +850,23 @@ <context> <name>FormEditorOptionsPage</name> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor_optionspage.cpp" line="91"/> <source>%1 %</source> <translation>%1 %</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor_optionspage.cpp" line="95"/> <source>Preview Zoom</source> <translation>Zoom de visualisation</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor_optionspage.cpp" line="97"/> <source>Default Zoom</source> <translation>Zoom par défaut</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor_optionspage.cpp" line="126"/> <source>Forms</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Formulaires</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor_optionspage.cpp" line="139"/> <source>Default Grid</source> <translation>Grille par défaut</translation> </message> @@ -1077,38 +874,31 @@ <context> <name>FormLayoutRowDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui" line="6"/> <source>Add Form Layout Row</source> <translation>Ajouter une ligne de mise en page au formulaire</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui" line="17"/> <source>&Label text:</source> <translation>&Texte du label :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui" line="40"/> <source>Field &type:</source> <translation>&Type du champ :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui" line="60"/> <source>&Field name:</source> <translation>&Nom du champ :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui" line="70"/> <source>&Buddy:</source> <translatorcomment>copain c'est un peu beaucoup ptet</translatorcomment> <translation>&Copain :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui" line="87"/> <source>&Row:</source> <translation>&Ligne :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui" line="103"/> <source>Label &name:</source> <translation>&Nom du label :</translation> </message> @@ -1116,12 +906,10 @@ <context> <name>FormWindow</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1701"/> <source>Unexpected element <%1></source> <translation>Element inattendu : <%1></translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1708"/> <source>Error while pasting clipboard contents at line %1, column %2: %3</source> <translation>Erreur lors du collage du contenu du presse-papier à la ligne %1, colonne %2 : %3</translation> </message> @@ -1129,62 +917,50 @@ <context> <name>FormWindowSettings</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="54"/> <source>Form Settings</source> <translation>Configuration du formulaire</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="68"/> <source>Layout &Default</source> <translation>Mise en page par &défaut</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="83"/> <source>&Spacing:</source> <translation>&Espacements :</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="93"/> <source>&Margin:</source> <translation>&Marge :</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="112"/> <source>&Layout Function</source> <translation>&Fonction de mise en page</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="133"/> <source>Ma&rgin:</source> <translation>Ma&rge :</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="143"/> <source>Spa&cing:</source> <translation>Espa&cement :</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="166"/> <source>&Pixmap Function</source> <translation>Fonction de &pixmap</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="219"/> <source>&Include Hints</source> <translation>Indication d'&include</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="237"/> <source>Grid</source> <translation>Grille</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="244"/> <source>Embedded Design</source> <translation>Design pour appareil mobile</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui" line="260"/> <source>&Author</source> <translation>&Auteur</translation> </message> @@ -1192,7 +968,6 @@ <context> <name>IconSelector</name> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="352"/> <source>All Pixmaps (</source> <translation>Tous les pixmaps (</translation> </message> @@ -1200,7 +975,6 @@ <context> <name>ItemPropertyBrowser</name> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="66"/> <source>XX Icon Selected off</source> <extracomment>Sample string to determinate the width for the first column of the list item property browser</extracomment> <translation>XX Icon Selected off</translation> @@ -1209,33 +983,27 @@ <context> <name>MainWindowBase</name> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="119"/> <source>Main</source> <extracomment>Not currently used (main tool bar)</extracomment> <translation>Principal</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="125"/> <source>File</source> <translation>Fichier</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="126"/> <source>Edit</source> <translation>Édition</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="127"/> <source>Tools</source> <translation>Outils</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="128"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="135"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> @@ -1243,52 +1011,42 @@ <context> <name>NewForm</name> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="78"/> <source>Show this Dialog on Startup</source> <translation>Afficher cette boîte de dialogue au démarrage</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="79"/> <source>C&reate</source> <translation>C&réer</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="80"/> <source>Recent</source> <translation>Récent</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="83"/> <source>New Form</source> <translation>Nouveau formulaire</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="112"/> <source>&Close</source> <translation>&Fermer</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="115"/> <source>&Open...</source> <translation>&Ouvrir...</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="119"/> <source>&Recent Forms</source> <translation>&Formulaires récents</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="183"/> <source>Read error</source> <translation>Erreur de lecture</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="206"/> <source>A temporary form file could not be created in %1.</source> <translation>Un fichier temporaire de formulaire n'a pas pu être créé dans %1.</translation> </message> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="212"/> <source>The temporary form file %1 could not be written.</source> <translation>Le fichier temporaire de formulaire %1 n'a pas pu être écrit.</translation> </message> @@ -1296,22 +1054,18 @@ <context> <name>ObjectInspectorModel</name> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspectormodel.cpp" line="360"/> <source>Object</source> <translation>Objet</translation> </message> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspectormodel.cpp" line="361"/> <source>Class</source> <translation>Classe</translation> </message> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspectormodel.cpp" line="396"/> <source>separator</source> <translation>séparateur</translation> </message> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspectormodel.cpp" line="494"/> <source><noname></source> <translation><sans nom></translation> </message> @@ -1319,12 +1073,10 @@ <context> <name>ObjectNameDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="158"/> <source>Change Object Name</source> <translation>Modifier le nom de l'objet</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="162"/> <source>Object Name</source> <translation>Nom de l'objet</translation> </message> @@ -1332,12 +1084,10 @@ <context> <name>PluginDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.ui" line="54"/> <source>Plugin Information</source> <translation>Information du plugin</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.ui" line="80"/> <source>1</source> <translation>1</translation> </message> @@ -1345,7 +1095,6 @@ <context> <name>PreferencesDialog</name> <message> - <location filename="../tools/designer/src/designer/preferencesdialog.ui" line="20"/> <source>Preferences</source> <translation>Préférences</translation> </message> @@ -1353,34 +1102,26 @@ <context> <name>PreviewConfigurationWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="5"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="8"/> <source>Print/Preview Configuration</source> <translation>Configuration d'impression/prévisualisation</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="17"/> <source>Style</source> <translation>Style</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="27"/> <source>Style sheet</source> <translation>Feuille de style</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="46"/> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="53"/> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="74"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui" line="62"/> <source>Device skin</source> <translation>Revêtement de l'appareil</translation> </message> @@ -1388,7 +1129,6 @@ <context> <name>PromotionModel</name> <message> - <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="112"/> <source>Not used</source> <extracomment>Usage of promoted widgets</extracomment> <translation>Non utilisé</translation> @@ -1397,8 +1137,6 @@ <context> <name>Q3WizardContainer</name> <message> - <location filename="../tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.cpp" line="172"/> - <location filename="../tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.cpp" line="177"/> <source>Page</source> <translation>Page</translation> </message> @@ -1406,59 +1144,48 @@ <context> <name>QAbstractFormBuilder</name> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="206"/> <source>Unexpected element <%1></source> <translation>Élément imprévu <%1></translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="211"/> <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> <translation>Une erreur s'est produite lors de la lecture du fichier UI à la ligne %1, colonne %2 : %3</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="217"/> <source>Invalid UI file: The root element <ui> is missing.</source> <translation>Fichier UI invalide : l'élément racine <ui> est manquant.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="336"/> <source>The creation of a widget of the class '%1' failed.</source> <translation>La création d'un widget de la classe '%1' a échoué.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="632"/> <source>Attempt to add child that is not of class QWizardPage to QWizard.</source> <translation>Tentative d'ajout d'enfant qui n'est pas de la classe QWizardPage à QWizard.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="718"/> <source>Attempt to add a layout to a widget '%1' (%2) which already has a layout of non-box type %3. This indicates an inconsistency in the ui-file.</source> <translation>Tentative d'ajout d'un layout au widget '%1' (%2) qui a déjà un layout dont le type n'est pas boîte %3. Ceci indique une incohérence dans le fichier ui.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="862"/> <source>Empty widget item in %1 '%2'.</source> <translation>Widget vide dans %1 '%2'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="1542"/> <source>Flags property are not supported yet.</source> <translation>Les propriétés de type drapeau ne sont pas supportées.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="1623"/> <source>While applying tab stops: The widget '%1' could not be found.</source> <translation>Lors de l'application des arrêts de tabulation : le widget '%1' ne peut pas être trouvé.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="2531"/> <source>Invalid QButtonGroup reference '%1' referenced by '%2'.</source> <translation>Référence invalide '%1' à QButtonGroup, référencé par '%2'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="3042"/> <source>This version of the uitools library is linked without script support.</source> <translation>Cette version de la bibliothèque uitools n'a pas le support des scripts.</translation> </message> @@ -1466,12 +1193,10 @@ Ceci indique une incohérence dans le fichier ui.</translation> <context> <name>QAxWidgetPlugin</name> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgetplugin.cpp" line="75"/> <source>ActiveX control</source> <translation>Control ActiveX</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgetplugin.cpp" line="80"/> <source>ActiveX control widget</source> <translation>Widget control ActiveX</translation> </message> @@ -1479,22 +1204,18 @@ Ceci indique une incohérence dans le fichier ui.</translation> <context> <name>QAxWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="119"/> <source>Set Control</source> <translation>Définir le contrôle</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="120"/> <source>Reset Control</source> <translation>Réinitialiser le contrôle</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="161"/> <source>Licensed Control</source> <translation>Contrôle licencié</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="162"/> <source>The control requires a design-time license</source> <translation>Le contrôle requiert une license par interface</translation> </message> @@ -1502,67 +1223,54 @@ Ceci indique une incohérence dans le fichier ui.</translation> <context> <name>QCoreApplication</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="83"/> <source>%1 is not a promoted class.</source> <translation>%1 n'est pas une classe promue.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="148"/> <source>The base class %1 is invalid.</source> <translation>La classe de base %1 est invalide.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="155"/> <source>The class %1 already exists.</source> <translation>La classe %1 existe déjà.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="164"/> <source>Promoted Widgets</source> <translation>Widgets promus</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="290"/> <source>The class %1 cannot be removed</source> <translation>La classe %1 ne peut pas être retirée</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="299"/> <source>The class %1 cannot be removed because it is still referenced.</source> <translation>La classe %1 ne peut pas être retirée car elle est toujours référencée.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="309"/> <source>The class %1 cannot be renamed</source> <translation>La classe %1 ne peut pas être renommée</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="316"/> <source>The class %1 cannot be renamed to an empty name.</source> <translation>La classe %1 ne peut pas être renommé avec un nom vide.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="321"/> <source>There is already a class named %1.</source> <translation>Une classe existe déjà avec le nom %1.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="350"/> <source>Cannot set an empty include file.</source> <translation>Impossible de créer un fichier include vide.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formscriptrunner.cpp" line="88"/> <source>Exception at line %1: %2</source> <translation>Exception à la ligne %1 : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formscriptrunner.cpp" line="124"/> <source>Unknown error</source> <translation>Erreur inconnue</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formscriptrunner.cpp" line="174"/> <source>An error occurred while running the script for %1: %2 Script: %3</source> <translation>Une erreur s'est produite lors de l'exécution du script de %1 : %2 @@ -1572,17 +1280,14 @@ Script : %3</translation> <context> <name>QDesigner</name> <message> - <location filename="../tools/designer/src/designer/qdesigner.cpp" line="141"/> <source>%1 - warning</source> <translation>Avertissement - %1</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner.cpp" line="237"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner.cpp" line="238"/> <source>This application cannot be used for the Console edition of Qt</source> <translation>Cette application ne peut pas être utilisée avec l'édition console de Qt</translation> </message> @@ -1590,228 +1295,178 @@ Script : %3</translation> <context> <name>QDesignerActions</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="128"/> <source>Saved %1.</source> <translation>%1 sauvé.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="154"/> <source>%1 already exists. Do you want to replace it?</source> <translation>%1 existe déjà. Voulez-vous le remplacer ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="178"/> <source>Edit Widgets</source> <translation>Éditer les widgets</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="179"/> <source>&New...</source> <translation>&Nouveau...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="180"/> <source>&Open...</source> <translation>&Ouvrir...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="181"/> <source>&Save</source> <translation>&Enregistrer</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="182"/> <source>Save &As...</source> <translation>Enregistrer &sous...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="183"/> <source>Save A&ll</source> <translation>Enregistrer &tout</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="184"/> <source>Save As &Template...</source> <translation>Sauver comme &modèle...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="185"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1086"/> <source>&Close</source> <translation>&Fermer</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="186"/> <source>Save &Image...</source> <translation>Enregistrer &image...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="187"/> <source>&Print...</source> <translation>Im&primer...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="188"/> <source>&Quit</source> <translation>&Quitter</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="190"/> <source>View &Code...</source> <translation>&Visualizer le code...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="191"/> <source>&Minimize</source> <translation>&Minimiser</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="193"/> <source>Bring All to Front</source> <translation>Amener tout au premier plan</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="195"/> <source>Preferences...</source> <translation>Préférences...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="196"/> <source>Additional Fonts...</source> <translation>Polices additionnelles...</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="258"/> <source>ALT+CTRL+S</source> <translation>ALT+CTRL+S</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="260"/> <source>CTRL+SHIFT+S</source> <translation>CTRL+SHIFT+S</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="373"/> <source>CTRL+R</source> <translation>CTRL+R</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="391"/> <source>CTRL+M</source> <translation>CTRL+M</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="422"/> <source>Qt Designer &Help</source> <translation>&Aide de Qt Designer</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="429"/> <source>Current Widget Help</source> <translation>Aide du widget courant</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="436"/> <source>What's New in Qt Designer?</source> <translation>Quoi de neuf dans Qt Designer ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="443"/> <source>About Plugins</source> <translation>À propos des plugins</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="449"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1050"/> <source>About Qt Designer</source> <translation>À propos de Qt Designer</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="455"/> <source>About Qt</source> <translation>À propos de Qt</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="493"/> <source>Clear &Menu</source> <translation>Réinitialiser le &menu</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="499"/> <source>&Recent Forms</source> <translation>Formulaires &récents</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="576"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="773"/> <source>Open Form</source> <translation>Ouvrir le formulaire</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="577"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="614"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="774"/> <source>Designer UI files (*.%1);;All Files (*)</source> <translation>Fichier UI de Qt Designer (*.%1);;Tous les fichiers(*)</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="614"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="862"/> <source>Save Form As</source> <translation>Enregistrer le formulaire sous</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="701"/> <source>Designer</source> <translation>Designer</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="701"/> <source>Feature not implemented yet!</source> <translation>Cette fonctionnalité n'est pas encore implémentée !</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="716"/> <source>Code generation failed</source> <translation>La génération du code à échoué</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="760"/> <source>Read error</source> <translation>Erreur de lecture</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="761"/> <source>%1 Do you want to update the file location or generate a new form?</source> <translation>%1 Voulez vous mettre à jour l'emplacement du fichier ou générer un nouveau formulaire ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="764"/> <source>&Update</source> <translation>&Mettre à jour</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="765"/> <source>&New Form</source> <translation>&Nouveau formulaire</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="842"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="882"/> <source>Save Form?</source> <translation>Sauver le formulaire ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="843"/> <source>Could not open file</source> <translation>Impossible d'ouvrir le fichier</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="847"/> <source>The file %1 could not be opened. Reason: %2 Would you like to retry or select a different file?</source> @@ -1820,17 +1475,14 @@ Raison : %2 Voulez-vous réessayer ou sélectionner un fichier différent ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="853"/> <source>Select New File</source> <translation>Sélectionner un nouveau fichier</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="883"/> <source>Could not write file</source> <translation>Impossible d'écrire le fichier</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="886"/> <source>It was not possible to write the entire file %1 to disk. Reason:%2 Would you like to retry?</source> @@ -1839,65 +1491,50 @@ Raison : %2 Voulez-vous réessayer ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1044"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1078"/> <source>Assistant</source> <translation>Assistant</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1084"/> <source>&Close Preview</source> <translation>&Fermer la prévisualisation</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1125"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1148"/> <source>The backup file %1 could not be written.</source> <translation>Le fichier de backup %1 n'a pas pu être écrit.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1255"/> <source>The backup directory %1 could not be created.</source> <translation>Le dossier de backup %1 n'a pas pu être créé.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1261"/> <source>The temporary backup directory %1 could not be created.</source> <translation>Le dossier temporaire de backup %1 n'a pas pu être créé.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1291"/> <source>Preview failed</source> <translation>La prévisualisation a échoué</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1315"/> <source>Image files (*.%1)</source> <translation>Fichiers image (*.%1)</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1324"/> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1341"/> <source>Save Image</source> <translation>Sauver image</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1337"/> <source>Saved image %1.</source> <translation>Image %1 sauvée.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1342"/> <source>The file %1 could not be written.</source> <translation>Le fichier %1 n'a pas pu être écrit.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1355"/> <source>Please close all forms to enable the loading of additional fonts.</source> <translation>Veuillez fermer tous les formulaires pour activer le chargement de polices additionnelles.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="1407"/> <source>Printed %1.</source> <translation>Impression de %1 terminée.</translation> </message> @@ -1905,7 +1542,6 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerAppearanceOptionsPage</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.cpp" line="138"/> <source>Appearance</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Apparence</translation> @@ -1914,17 +1550,14 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerAppearanceOptionsWidget</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.cpp" line="85"/> <source>Docked Window</source> <translation>Fenêtre ancrable</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.cpp" line="86"/> <source>Multiple Top-Level Windows</source> <translation>Fenêtres multiples</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.cpp" line="91"/> <source>Toolwindow Font</source> <translation>Police des fenêtre d'outils</translation> </message> @@ -1932,22 +1565,18 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerAxWidget</name> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="91"/> <source>Reset control</source> <translation>Réinitialiser les contrôles</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="93"/> <source>Set control</source> <translation>Définir les contrôles</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qdesigneraxwidget.cpp" line="179"/> <source>Control loaded</source> <translation>Contrôle chargé</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qdesigneraxwidget.cpp" line="219"/> <source>A COM exception occurred when executing a meta call of type %1, index %2 of "%3".</source> <translation>Une exception COM a été levée lors de l'execution du meta-appel de type %1, indice %2 de "%3".</translation> </message> @@ -1955,17 +1584,14 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerFormBuilder</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_formbuilder.cpp" line="89"/> <source>Script errors occurred:</source> <translation>Erreurs du script :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_formbuilder.cpp" line="396"/> <source>The preview failed to build.</source> <translation>La construction de la prévisualisation a échoué.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_formbuilder.cpp" line="461"/> <source>Designer</source> <translation>Designer</translation> </message> @@ -1973,22 +1599,18 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerFormWindow</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_formwindow.cpp" line="217"/> <source>%1 - %2[*]</source> <translation>%1 - %2[*]</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_formwindow.cpp" line="227"/> <source>Save Form?</source> <translation>Enregistrer le formulaire ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_formwindow.cpp" line="228"/> <source>Do you want to save the changes to this document before closing?</source> <translation>Voulez-vous enregistrer les changements de ce document avant de le fermer ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_formwindow.cpp" line="230"/> <source>If you don't save, your changes will be lost.</source> <translation>Si vous ne sauvegardez pas, les changements seront perdus.</translation> </message> @@ -1996,38 +1618,30 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="106"/> <source>Type Here</source> <translation>Taper ici</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="109"/> <source>Add Separator</source> <translation>Ajouter séparateur</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="480"/> <source>Insert separator</source> <translation>Insérer séparateur</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="485"/> <source>Remove separator</source> <translation>Retirer séparateur</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="487"/> <source>Remove action '%1'</source> <translation>Supprimer l'action '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="512"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="1162"/> <source>Add separator</source> <translation>Ajouter séparateur</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="814"/> <source>Insert action</source> <translation>Insérer action</translation> </message> @@ -2035,22 +1649,18 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerMenuBar</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="110"/> <source>Type Here</source> <translation>Taper ici</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="408"/> <source>Remove Menu '%1'</source> <translation>Supprimer menu '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="420"/> <source>Remove Menu Bar</source> <translation>Supprimer barre de menu</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="490"/> <source>Menu</source> <translation>Menu</translation> </message> @@ -2058,37 +1668,30 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerPluginManager</name> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="271"/> <source>An XML error was encountered when parsing the XML of the custom widget %1: %2</source> <translation>Une erreur XML a été rencontrée lors de l'analyse grammaticale du XML provenant du widget personnalisé %1 : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="276"/> <source>A required attribute ('%1') is missing.</source> <translation>Un attribut obligatoire ('%1') est manquant.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="314"/> <source>An invalid property specification ('%1') was encountered. Supported types: %2</source> <translation>Une spécification invalide de propriété ('%1') a été rencontrée. Types supportés : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="334"/> <source>'%1' is not a valid string property specification.</source> <translation>'%1' n'est pas une spécification valide de propriété chaîne de caractères.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="374"/> <source>The XML of the custom widget %1 does not contain any of the elements <widget> or <ui>.</source> <translation>Le XML du widget personnalisé %1 ne contient aucun des éléments <widget> ou <ui>.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="386"/> <source>The class attribute for the class %1 is missing.</source> <translation>L'attribut de classe est manquant pour la classe %1.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="390"/> <source>The class attribute for the class %1 does not match the class name %2.</source> <translation>L'attribut de classe pour la classe %1 ne correspond pas au nom de la classe %2.</translation> </message> @@ -2096,7 +1699,6 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerPropertySheet</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertysheet.cpp" line="754"/> <source>Dynamic Properties</source> <translation>Propriétés dynamiques</translation> </message> @@ -2104,31 +1706,26 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerResource</name> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="1223"/> <source>The layout type '%1' is not supported, defaulting to grid.</source> <translation>Le type de layout '%1' n'est pas supporté, replacement par une grille.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="1466"/> <source>The container extension of the widget '%1' (%2) returned a widget not managed by Designer '%3' (%4) when queried for page #%5. Container pages should only be added by specifying them in XML returned by the domXml() method of the custom widget.</source> <translation>L'extension du widget '%1' (%2) a retourné un widget non géré par Designer '%3' (%4) lors de la requête pour la page #%5. Les pages du conteneur ne devraient être ajoutées que par spécification dans le XML retourné par la méthode domXml() du widget personnalisé.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="2065"/> <source>Unexpected element <%1></source> <extracomment>Parsing clipboard contents</extracomment> <translation>Élément inattendu <%1></translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="2071"/> <source>Error while pasting clipboard contents at line %1, column %2: %3</source> <extracomment>Parsing clipboard contents</extracomment> <translation>Erreur lors du collage du contenu du presse-papier à la ligne %1, colonne %2 : %3</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="2077"/> <source>Error while pasting clipboard contents: The root element <ui> is missing.</source> <extracomment>Parsing clipboard contents</extracomment> <translation>Erreur lors du collage du contenu du presse-papier. L'élément racine <ui> est manquant.</translation> @@ -2137,12 +1734,10 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QDesignerSharedSettings</name> <message> - <location filename="../tools/designer/src/lib/shared/shared_settings.cpp" line="83"/> <source>The template path %1 could not be created.</source> <translation>Le chemin du modèle %1 n'a pas pu être créé.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/shared_settings.cpp" line="267"/> <source>An error has been encountered while parsing device profile XML: %1</source> <translation>Une erreur a été rencontrée lors de l'analyse grammaticale du XML du profil de l'appareil : %1</translation> </message> @@ -2150,33 +1745,27 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QDesignerToolWindow</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="190"/> <source>Property Editor</source> <translation>Éditeur de propriétés</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="244"/> <source>Action Editor</source> <translation>Éditeur d'actions</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="286"/> <source>Object Inspector</source> <translation>Inspecteur d'objet</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="321"/> <source>Resource Browser</source> <translatorcomment>plural</translatorcomment> <translation>Explorateur de ressources</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="355"/> <source>Signal/Slot Editor</source> <translation>Éditeur de signaux et slots</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="396"/> <source>Widget Box</source> <translation>Boîte de widget</translation> </message> @@ -2184,62 +1773,50 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QDesignerWorkbench</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="199"/> <source>&File</source> <translation>&Fichier</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="201"/> <source>Edit</source> <translation>Édition</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="205"/> <source>F&orm</source> <translation>F&ormulaire</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="206"/> <source>Preview in</source> <translation>Prévisualisation avec</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="210"/> <source>&View</source> <translation>Afficha&ge</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="212"/> <source>&Settings</source> <translation>&Configuration</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="214"/> <source>&Window</source> <translation>Fe&nêtre</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="216"/> <source>&Help</source> <translation>&Aide</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="239"/> <source>Toolbars</source> <translation>Barre d'outils</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="416"/> <source>Widget Box</source> <translation>Boîte de widget</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="704"/> <source>Save Forms?</source> <translation>Enregistrer les formulaires ?</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="705"/> <source>There are %n forms with unsaved changes. Do you want to review these changes before quitting?</source> <translation> <numerusform>Il y a %n formulaire avec des changements non-enregistrés. Voulez-vous vérifier les changements avant de quitter?</numerusform> @@ -2247,37 +1824,30 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans </translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="708"/> <source>If you do not review your documents, all your changes will be lost.</source> <translation>Si vous ne vérifiez pas vos documents, tous les changements seront perdus.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="709"/> <source>Discard Changes</source> <translation>Abandonner les changements</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="711"/> <source>Review Changes</source> <translation>Vérifier les changements</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="806"/> <source>Backup Information</source> <translation>Informations de sauvegarde</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="807"/> <source>The last session of Designer was not terminated correctly. Backup files were left behind. Do you want to load them?</source> <translation>La dernière session de Designer n'a pas été fermée correctement. Des fichiers de sauvegarde existent. Voulez-vous les charger ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="918"/> <source>The file <b>%1</b> could not be opened.</source> <translation>Le fichier <b>%1</b> n'a pas pu être ouvert.</translation> </message> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="964"/> <source>The file <b>%1</b> is not a valid Designer UI file.</source> <translation>Le fichier <b>%1</b> n'est pas un fichier valide d'UI de Designer.</translation> </message> @@ -2285,92 +1855,82 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QFormBuilder</name> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilder.cpp" line="163"/> <source>An empty class name was passed on to %1 (object name: '%2').</source> <extracomment>Empty class name passed to widget factory method</extracomment> <translation>Un nom de classe vide a été passé à %1 (nom d'objet '%2').</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilder.cpp" line="219"/> <source>QFormBuilder was unable to create a custom widget of the class '%1'; defaulting to base class '%2'.</source> <translation>QFormBuilder n'a pas pu créer le widget personnalisé de classe '%1'; passage à la classe de base '%2'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilder.cpp" line="225"/> <source>QFormBuilder was unable to create a widget of the class '%1'.</source> <translation>QFormBuilder n'a pas pu créer un widget de classe '%1'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilder.cpp" line="286"/> <source>The layout type `%1' is not supported.</source> <translation>Le type de layout '%1' n'est pas supporté.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/properties.cpp" line="106"/> <source>The set-type property %1 could not be read.</source> <translation>Le type du setteur de propriété %1 n'a pas pu être lu.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/properties.cpp" line="129"/> <source>The enumeration-type property %1 could not be read.</source> <translation>Le type d'énumeration de propriété %1 n'a pas pu être lu.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/properties.cpp" line="319"/> <source>Reading properties of the type %1 is not supported yet.</source> <translation>La lecture des propriétés de type %1 n'est pas supporté.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/properties.cpp" line="585"/> <source>The property %1 could not be written. The type %2 is not supported yet.</source> <translation>La propriété %1 ne peut pas être écrite. Le type %2 n'est pas encore supporté.</translation> </message> + <message> + <source>The enumeration-value '%1' is invalid. The default value '%2' will be used instead.</source> + <translation>la valeur d'énumération '%1' est invalide. La valeur par défaut '%2' sera utilisée à la place.</translation> + </message> + <message> + <source>The flag-value '%1' is invalid. Zero will be used instead.</source> + <translation>Le drapeau '%1' est invalide. Zero sera utilisé à la place.</translation> + </message> </context> <context> <name>QStackedWidgetEventFilter</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="194"/> <source>Previous Page</source> <translation>Page précédente</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="195"/> <source>Next Page</source> <translation>Page suivante</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="196"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="197"/> <source>Before Current Page</source> <translation>Avant la page courante</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="198"/> <source>After Current Page</source> <translation>Après la page courante</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="199"/> <source>Change Page Order...</source> <translation>Modifier l'ordre des pages...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="271"/> <source>Change Page Order</source> <translation>Modifier l'ordre des pages</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="320"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="330"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="334"/> <source>Insert Page</source> <translation>Insérer page</translation> </message> @@ -2378,12 +1938,10 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QStackedWidgetPreviewEventFilter</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="181"/> <source>Go to previous page of %1 '%2' (%3/%4).</source> <translation>Aller à la page précédente de %1 '%2' (%3/%4).</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="185"/> <source>Go to next page of %1 '%2' (%3/%4).</source> <translation>Aller à la page suivante de %1 '%2' (%3/%4).</translation> </message> @@ -2391,28 +1949,22 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QTabWidgetEventFilter</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="89"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="90"/> <source>Before Current Page</source> <translation>Avant la page courante</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="91"/> <source>After Current Page</source> <translation>Après la page courante</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="374"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="384"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="388"/> <source>Insert Page</source> <translation>Insérer page</translation> </message> @@ -2420,37 +1972,30 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QToolBoxHelper</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="64"/> <source>Delete Page</source> <translation>Supprimer page</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="65"/> <source>Before Current Page</source> <translation>Avant la page courante</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="66"/> <source>After Current Page</source> <translation>Après la page courante</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="67"/> <source>Change Page Order...</source> <translation>Modifier l'ordre des pages...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="183"/> <source>Change Page Order</source> <translation>Modifier l'ordre de pages</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="227"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="239"/> <source>Insert Page</source> <translation>Insérer page</translation> </message> @@ -2458,15 +2003,10 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtBoolEdit</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="226"/> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="236"/> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="261"/> <source>True</source> <translation>Vrai</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="236"/> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="261"/> <source>False</source> <translation>Faux</translation> </message> @@ -2474,12 +2014,10 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtBoolPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="1469"/> <source>True</source> <translation>Vrai</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="1470"/> <source>False</source> <translation>Faux</translation> </message> @@ -2487,7 +2025,6 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtCharEdit</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="1581"/> <source>Clear Char</source> <translation>Effacer caractère</translation> </message> @@ -2495,7 +2032,6 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtColorEditWidget</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="2186"/> <source>...</source> <translation>...</translation> </message> @@ -2503,22 +2039,18 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtColorPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="6213"/> <source>Red</source> <translation>Rouge</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="6221"/> <source>Green</source> <translation>Vert</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="6229"/> <source>Blue</source> <translation>Bleu</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="6237"/> <source>Alpha</source> <translation>Alpha</translation> </message> @@ -2526,97 +2058,78 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtCursorDatabase</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="55"/> <source>Arrow</source> <translation>Flèche</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="57"/> <source>Up Arrow</source> <translation>Flèche vers le haut</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="59"/> <source>Cross</source> <translation>Croix</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="61"/> <source>Wait</source> <translation>Attendre</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="63"/> <source>IBeam</source> <translation>IBeam</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="65"/> <source>Size Vertical</source> <translation>Redimensionner verticalement</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="67"/> <source>Size Horizontal</source> <translation>Redimensionner horizontalement</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="69"/> <source>Size Backslash</source> <translation>Redimensionner diagonale droite</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="71"/> <source>Size Slash</source> <translation>Redimensionner diagonale gauche</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="73"/> <source>Size All</source> <translation>Redimensionner</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="75"/> <source>Blank</source> <translation>Vide</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="77"/> <source>Split Vertical</source> <translation>Scinder verticalement</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="79"/> <source>Split Horizontal</source> <translation>Scinder horizontalement</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="81"/> <source>Pointing Hand</source> <translation>Pointeur index</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="83"/> <source>Forbidden</source> <translation>Interdit</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="85"/> <source>Open Hand</source> <translation>Main ouverte</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="87"/> <source>Closed Hand</source> <translation>Main fermée</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="89"/> <source>What's This</source> <translation>Qu'est-ce que c'est ?</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="91"/> <source>Busy</source> <translation>Occupé</translation> </message> @@ -2624,12 +2137,10 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtFontEditWidget</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="2384"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="2404"/> <source>Select Font</source> <translation>Selectionner police</translation> </message> @@ -2637,37 +2148,30 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtFontPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5886"/> <source>Family</source> <translation>Famille</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5899"/> <source>Point Size</source> <translation>Taille en points</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5907"/> <source>Bold</source> <translation>Gras</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5914"/> <source>Italic</source> <translation>Italique</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5921"/> <source>Underline</source> <translation>Souligné</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5928"/> <source>Strikeout</source> <translation>Barré</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5935"/> <source>Kerning</source> <translation>Crénage</translation> </message> @@ -2675,7 +2179,6 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientDialog</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientdialog.ui" line="53"/> <source>Edit Gradient</source> <translation>Modifier le gradient</translation> </message> @@ -2683,316 +2186,242 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientEditor</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="53"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="101"/> <source>Gradient Editor</source> <translation>Éditeur de gradient</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="104"/> <source>This area shows a preview of the gradient being edited. It also allows you to edit parameters specific to the gradient's type such as start and final point, radius, etc. by drag & drop.</source> <translation>Cette zone montre une prévisualisation du gradient édité. Elle permet aussi d'éditer les paramètres spécifiques au type de gradient tel que les points de départ et d'arrivée, le rayon, etc. par glisser-déposer.</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="120"/> <source>1</source> <translation>1</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="155"/> <source>2</source> <translation>2</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="190"/> <source>3</source> <translation>3</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="225"/> <source>4</source> <translation>4</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="260"/> <source>5</source> <translation>5</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="295"/> <source>Gradient Stops Editor</source> <translation>Éditeur de point d'arrêt du gradient</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="298"/> <source>This area allows you to edit gradient stops. Double click on the existing stop handle to duplicate it. Double click outside of the existing stop handles to create a new stop. Drag & drop the handle to reposition it. Use right mouse button to popup context menu with extra actions.</source> <translation>Cette zone vous permet d'éditer les points d'arrêt du gardient. Double-cliquez sur un point d'arrêt existant pour le dupliquer. Double-cliquez à l'exterieur d'un point d'arrêt pour en créer un nouveau. Glissez-déposez un point pour le repositionner. Utilisez le bouton droit de la souris pour afficher le menu contextuel avec des actions supplémentaires.</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="311"/> <source>Zoom</source> <translation>Zoom</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="330"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="333"/> <source>Reset Zoom</source> <translation>Réinitialiser le zoom</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="346"/> <source>Position</source> <translation>Position</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="365"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="414"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="436"/> <source>Hue</source> <translation>Teinte</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="368"/> <source>H</source> <translation>T</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="455"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="504"/> <source>Saturation</source> <translation>Saturation</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="458"/> <source>S</source> <translation>S</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="526"/> <source>Sat</source> <translation>Sat</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="545"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="594"/> <source>Value</source> <translation>Valeur</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="548"/> <source>V</source> <translation>V</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="616"/> <source>Val</source> <translation>Val</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="635"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="684"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="706"/> <source>Alpha</source> <translation>Alpha</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="638"/> <source>A</source> <translation>A</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="719"/> <source>Type</source> <translation>Type</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="732"/> <source>Spread</source> <translation>Étendue</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="751"/> <source>Color</source> <translation>Couleur</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="764"/> <source>Current stop's color</source> <translation>Couleur du point d'arrêt courant</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="786"/> <source>Show HSV specification</source> <translation>Montrer les spécifications TSV/HSV</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="789"/> <source>HSV</source> <translation>TSV/HSV</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="811"/> <source>Show RGB specification</source> <translation>Affichier les spécifications RGB</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="814"/> <source>RGB</source> <translation>RGB</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="842"/> <source>Current stop's position</source> <translation>Position du point d'arrêt courant</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1030"/> <source>%</source> <translation>%</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1141"/> <source>Zoom In</source> <translation>Zoomer</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1148"/> <source>Zoom Out</source> <translation>Dézoomer</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1183"/> <source>Toggle details extension</source> <translation>Inverser les détails d'exention</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1186"/> <source>></source> <translation>></translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1205"/> <source>Linear Type</source> <translation>Type linéaire</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1208"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1230"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1252"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1274"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1296"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1318"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1227"/> <source>Radial Type</source> <translation>Type radial</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1249"/> <source>Conical Type</source> <translation>Type conique</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1271"/> <source>Pad Spread</source> <translation>Étendue par remplissage</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1293"/> <source>Repeat Spread</source> <translation>Étendue par répétition</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui" line="1315"/> <source>Reflect Spread</source> <translation>Étendue par réflexion</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="431"/> <source>Start X</source> <translation>X de départ</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="435"/> <source>Start Y</source> <translation>Y de départ</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="439"/> <source>Final X</source> <translation>X de fin</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="443"/> <source>Final Y</source> <translation>Y de fin</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="450"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="474"/> <source>Central X</source> <translation>X central</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="454"/> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="478"/> <source>Central Y</source> <translation>Y central</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="458"/> <source>Focal X</source> <translation>X focal</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="462"/> <source>Focal Y</source> <translation>Y focal</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="466"/> <source>Radius</source> <translation>Rayon</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="482"/> <source>Angle</source> <translation>Angle</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="770"/> <source>Linear</source> <translation>Linéaire</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="771"/> <source>Radial</source> <translation>Radial</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="772"/> <source>Conical</source> <translation>Conique</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="792"/> <source>Pad</source> <translation>Remplissage</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="793"/> <source>Repeat</source> <translation>Répéter</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="794"/> <source>Reflect</source> <translation>Réflexion</translation> </message> @@ -3000,37 +2429,30 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientStopsWidget</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="947"/> <source>New Stop</source> <translation>Nouveau point d'arrêt</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="948"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="949"/> <source>Flip All</source> <translation>Tout renverser</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="950"/> <source>Select All</source> <translation>Tout sélectionner</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="951"/> <source>Zoom In</source> <translation>Zoomer</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="952"/> <source>Zoom Out</source> <translation>Dézoomer</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="953"/> <source>Reset Zoom</source> <translation>Réinitialiser le zoom</translation> </message> @@ -3038,46 +2460,34 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientView</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.ui" line="13"/> <source>Gradient View</source> <translation>Vue du gradient</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.ui" line="39"/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="208"/> <source>New...</source> <translation>Nouveau...</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.ui" line="58"/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="209"/> <source>Edit...</source> <translation>Éditer...</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.ui" line="77"/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="210"/> <source>Rename</source> <translation>Renommer</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.ui" line="96"/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="211"/> <source>Remove</source> <translation>Retirer</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="107"/> <source>Grad</source> <translation>Gradient</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="133"/> <source>Remove Gradient</source> <translation>Retirer gradient</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="134"/> <source>Are you sure you want to remove the selected gradient?</source> <translation>Êtes-vous sûr de vouloir supprimer le gradient sélectionné ?</translation> </message> @@ -3085,7 +2495,6 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientViewDialog</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientviewdialog.ui" line="53"/> <source>Select Gradient</source> <translation>Sélectionner gradient</translation> </message> @@ -3093,7 +2502,6 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtKeySequenceEdit</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="312"/> <source>Clear Shortcut</source> <translation>Effacer les racourcis</translation> </message> @@ -3101,17 +2509,14 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtLocalePropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2394"/> <source>%1, %2</source> <translation>%1, %2</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2447"/> <source>Language</source> <translation>Langue</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2455"/> <source>Country</source> <translation>Pays</translation> </message> @@ -3119,17 +2524,14 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtPointFPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2866"/> <source>(%1, %2)</source> <translation>(%1, %2)</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2937"/> <source>X</source> <translation>X</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2945"/> <source>Y</source> <translation>Y</translation> </message> @@ -3137,17 +2539,14 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtPointPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2625"/> <source>(%1, %2)</source> <translation>(%1, %2)</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2662"/> <source>X</source> <translation>X</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="2669"/> <source>Y</source> <translation>Y</translation> </message> @@ -3155,12 +2554,10 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtPropertyBrowserUtils</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="176"/> <source>[%1, %2, %3] (%4)</source> <translation>[%1, %2, %3] (%4)</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="206"/> <source>[%1, %2]</source> <translation>[%1, %2]</translation> </message> @@ -3168,27 +2565,22 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtRectFPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4375"/> <source>[(%1, %2), %3 x %4]</source> <translation>[(%1, %2), %3 x %4]</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4531"/> <source>X</source> <translation>X</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4539"/> <source>Y</source> <translation>Y</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4547"/> <source>Width</source> <translation>Largeur</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4556"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -3196,27 +2588,22 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtRectPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="3944"/> <source>[(%1, %2), %3 x %4]</source> <translation>[(%1, %2), %3 x %4]</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4064"/> <source>X</source> <translation>X</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4071"/> <source>Y</source> <translation>Y</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4078"/> <source>Width</source> <translation>Largeur</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="4086"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -3224,175 +2611,134 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtResourceEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="13"/> <source>Dialog</source> <translation>Dialogue</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="39"/> <source>New File</source> <translation>Nouveau fichier</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="42"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="92"/> <source>N</source> <translation>N</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="49"/> <source>Remove File</source> <translation>Supprimer fichier</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="52"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="109"/> <source>R</source> <translation>S</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="75"/> <source>I</source> <translation></translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="89"/> <source>New Resource</source> <translation>Nouvelle ressource</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="99"/> <source>A</source> <translation>A</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui" line="106"/> <source>Remove Resource or File</source> <translation>Supprimer ressource ou fichier</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="76"/> <source>%1 already exists. Do you want to replace it?</source> <translation>%1 existe déjà. Voulez-vous le remplacer ?</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="81"/> <source>The file does not appear to be a resource file; element '%1' was found where '%2' was expected.</source> <translation>Le fichier n'est pas un fichier ressource; l'élément '%1' a été trouvé à la place de %2.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="983"/> <source>%1 [read-only]</source> <translation>%1 [lecture seule]</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="985"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1183"/> <source>%1 [missing]</source> <translation>%1 [manquant]</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1111"/> <source><no prefix></source> <translation><pas de préfixe></translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1431"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1997"/> <source>New Resource File</source> <translation>Nouveau fichier de ressource</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1433"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1458"/> <source>Resource files (*.qrc)</source> <translation>Fichier de ressource (*.qrc)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1456"/> <source>Import Resource File</source> <translation>Importer fichier de ressource</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1568"/> <source>newPrefix</source> <translation>newPrefix</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1584"/> <source><p><b>Warning:</b> The file</p><p>%1</p><p>is outside of the current resource file's parent directory.</p></source> <translation><p><b>Avertissement :</b> le fichier</p><p>%1</p><p>est en dehors du répertoire parent du fichier de ressource courant.</p></translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1592"/> <source><p>To resolve the issue, press:</p><table><tr><th align="left">Copy</th><td>to copy the file to the resource file's parent directory.</td></tr><tr><th align="left">Copy As...</th><td>to copy the file into a subdirectory of the resource file's parent directory.</td></tr><tr><th align="left">Keep</th><td>to use its current location.</td></tr></table></source> <translation><p>Pour résoudre le problème, appuyez sur :</p><table><tr><th align="left">Copier</th><td>Pour copier le fichier dans le répertoire parent du fichier de ressource.</td></tr><tr><th align="left">Copier sous...</th><td>Pour copier le fichier ressource dans un sous-répertoire du répertoire parent du fichier de ressource.</td></tr><tr><th align="left">Conserver</th><td>pour conserver l'emplacement courant.</td></tr></table></translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1617"/> <source>Add Files</source> <translation>Ajouter fichiers</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1638"/> <source>Incorrect Path</source> <translation>Chemin incorrect</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1641"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1660"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1872"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1879"/> <source>Copy</source> <translation>Copier</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1643"/> <source>Copy As...</source> <translation>Copier sous...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1645"/> <source>Keep</source> <translation>Conserver</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1647"/> <source>Skip</source> <translation>Passer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1734"/> <source>Clone Prefix</source> <translation>Cloner le préfixe</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1735"/> <source>Enter the suffix which you want to add to the names of the cloned files. This could for example be a language extension like "_de".</source> <translation>Entrez le suffixe que vous voulez ajouter aux noms des fichiers clonés. Ceci peut être une extension de langue par exemple, comme "_fr'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1848"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1852"/> <source>Copy As</source> <translation>Copier sous</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1853"/> <source><p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p></source> <translation><p>Le fichier sélectionné</p><p>%1</p><p>est en dehors du répertoire du fichier de ressource courant :</p><p>%2</p><p>Veuillez sélectionner un chemin dans le répertoire courant.</p></translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1873"/> <source>Could not overwrite %1.</source> <translation>Impossible d'écraser %1.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1880"/> <source>Could not copy %1 to @@ -3403,108 +2749,84 @@ vers %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1915"/> <source>A parse error occurred at line %1, column %2 of %3: %4</source> <translation>Une erreur d'analyse grammaticale est apparue à la ligne %1, colonne %2 de %3 : %4</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1927"/> <source>Save Resource File</source> <translation>Enregistrer le fichier de ressource</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1928"/> <source>Could not write %1: %2</source> <translation>Impossible d'écrire %1 : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1961"/> <source>Edit Resources</source> <translation>Éditer les ressources</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1996"/> <source>New...</source> <translation>Nouveau...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1998"/> <source>Open...</source> <translation>Ouvrir...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="1999"/> <source>Open Resource File</source> <translation>Ouvrir fichier de ressource</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2000"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2011"/> <source>Remove</source> <translation>Retirer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2001"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2012"/> <source>Move Up</source> <translation>Vers le Haut</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2002"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2013"/> <source>Move Down</source> <translation>Vers le Bas</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2004"/> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2005"/> <source>Add Prefix</source> <translation>Ajouter préfixe</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2006"/> <source>Add Files...</source> <translation>Ajouter fichiers...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2007"/> <source>Change Prefix</source> <translation>Modifier le préfixe</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2008"/> <source>Change Language</source> <translation>Modifier la langue</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2009"/> <source>Change Alias</source> <translation>Modifier l'alias</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2010"/> <source>Clone Prefix...</source> <translation>Cloner le préfixe...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2047"/> <source>Prefix / Path</source> <translation>Préfixe / chemin</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2048"/> <source>Language / Alias</source> <translation>Langue / Alias</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2165"/> <source><html><p><b>Warning:</b> There have been problems while reloading the resources:</p><pre>%1</pre></html></source> <translation><html><p><b>Avertissement:</b> Des problèmes sont apparus lors du rafraichissement des données des ressources :</p><pre>%1</pre></html></translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="2167"/> <source>Resource Warning</source> <translation>Avertissement relatif aux ressources</translation> </message> @@ -3512,24 +2834,20 @@ vers <context> <name>QtResourceView</name> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceview.cpp" line="566"/> <source>Size: %1 x %2 %3</source> <translation>Taille : %1 x %2 %3</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceview.cpp" line="586"/> <source>Edit Resources...</source> <translation>Éditer ressources...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceview.cpp" line="592"/> <source>Reload</source> <translation>Recharger</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceview.cpp" line="599"/> <source>Copy Path</source> <translation>Copier le chemin</translation> </message> @@ -3537,7 +2855,6 @@ vers <context> <name>QtResourceViewDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceview.cpp" line="849"/> <source>Select Resource</source> <translation>Séléctionner ressource</translation> </message> @@ -3545,17 +2862,14 @@ vers <context> <name>QtSizeFPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="3551"/> <source>%1 x %2</source> <translation>%1 x %2</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="3681"/> <source>Width</source> <translation>Largeur</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="3690"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -3563,33 +2877,26 @@ vers <context> <name>QtSizePolicyPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5399"/> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5400"/> <source><Invalid></source> <translation><Invalide></translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5401"/> <source>[%1, %2, %3, %4]</source> <translation>[%1, %2, %3, %4]</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5446"/> <source>Horizontal Policy</source> <translation>Politique horizontale</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5455"/> <source>Vertical Policy</source> <translation>Politique verticale</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5464"/> <source>Horizontal Stretch</source> <translation>Étirement horizontal</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="5472"/> <source>Vertical Stretch</source> <translation>Étirement vertical</translation> </message> @@ -3597,17 +2904,14 @@ vers <context> <name>QtSizePropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="3186"/> <source>%1 x %2</source> <translation>%1 x %2</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="3282"/> <source>Width</source> <translation>Largeur</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="3290"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -3615,107 +2919,86 @@ vers <context> <name>QtToolBarDialog</name> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="13"/> <source>Customize Toolbars</source> <translation>Personnaliser les barres d'outils</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="26"/> <source>1</source> <translation>1</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="34"/> <source>Actions</source> <translation>Actions</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="49"/> <source>Toolbars</source> <translation>Barres d'outils</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="56"/> <source>Add new toolbar</source> <translation>Ajouter une nouvelle barre d'outils</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="59"/> <source>New</source> <translation>Nouveau</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="66"/> <source>Remove selected toolbar</source> <translation>Supprimer la barre d'outils sélectionnée</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="69"/> <source>Remove</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="76"/> <source>Rename toolbar</source> <translation>Renommer la barre d'outils</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="79"/> <source>Rename</source> <translation>Renommer</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="102"/> <source>Move action up</source> <translation>Déplacer l'action vers le haut</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="105"/> <source>Up</source> <translation>Monter</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="118"/> <source>Remove action from toolbar</source> <translation>Retirer l'action de la barre d'outils</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="121"/> <source><-</source> <translation><-</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="134"/> <source>Add action to toolbar</source> <translation>Ajouter l'action à la barre d'outil</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="137"/> <source>-></source> <translation>-></translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="150"/> <source>Move action down</source> <translation>Déplacer l'action vers le bas</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="153"/> <source>Down</source> <translation>Descendre</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui" line="178"/> <source>Current Toolbar Actions</source> <translation>Actions de la barre d'outils courante</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.cpp" line="1240"/> <source>Custom Toolbar</source> <translation>Barre d'outils personnalisée</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.cpp" line="1784"/> <source>< S E P A R A T O R ></source> <translation>< S É P A R A T E U R ></translation> </message> @@ -3723,12 +3006,10 @@ vers <context> <name>QtTreePropertyBrowser</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qttreepropertybrowser.cpp" line="442"/> <source>Property</source> <translation>Propriété</translation> </message> <message> - <location filename="../tools/shared/qtpropertybrowser/qttreepropertybrowser.cpp" line="443"/> <source>Value</source> <translation>Valeur</translation> </message> @@ -3736,64 +3017,52 @@ vers <context> <name>SaveFormAsTemplate</name> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.ui" line="45"/> <source>Save Form As Template</source> <translation>Enregistrer le formulaire comme un modèle</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.ui" line="59"/> <source>&Name:</source> <translation>&Nom :</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.ui" line="94"/> <source>&Category:</source> <translation>&Catégorie :</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="72"/> <source>Add path...</source> <translation>Ajouter chemin...</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="95"/> <source>Template Exists</source> <translation>Le modèle existe</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="96"/> <source>A template with the name %1 already exists. Do you want overwrite the template?</source> <translation>Un modèle existe déjà avec le nom %1. Voulez-vous le remplacer ?</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="99"/> <source>Overwrite Template</source> <translation>Remplacer modèle</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="106"/> <source>Open Error</source> <translation>Erreur d'ouverture</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="107"/> <source>There was an error opening template %1 for writing. Reason: %2</source> <translation>Une erreur s'est produite à l'ouverture du modèle %1 en écriture. Raison : %2</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="120"/> <source>Write Error</source> <translation>Erreur d'écriture</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="121"/> <source>There was an error writing the template %1 to disk. Reason: %2</source> <translation>Une erreur s'est produite lors de l'écriture du modèle %1 sur le disque. Raison : %2</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="148"/> <source>Pick a directory to save templates in</source> <translation>Sélectionner le dossier dans lequel le modèle sera enregistré</translation> </message> @@ -3801,7 +3070,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>ScriptErrorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/scripterrordialog.cpp" line="59"/> <source>An error occurred while running the scripts for "%1": </source> <translation>Une erreur est apparue lors de l'execution des scripts de "%1" : @@ -3811,22 +3079,18 @@ Voulez-vous le remplacer ?</translation> <context> <name>SelectSignalDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/selectsignaldialog.ui" line="14"/> <source>Go to slot</source> <translation>Aller au slot</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/selectsignaldialog.ui" line="20"/> <source>Select signal</source> <translation>Sélectionner signal</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/selectsignaldialog.ui" line="33"/> <source>signal</source> <translation>signal</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/selectsignaldialog.ui" line="38"/> <source>class</source> <translation>classe</translation> </message> @@ -3834,7 +3098,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>SignalSlotConnection</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="152"/> <source>SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4)</source> <translation>ENVOYER(%1), SIGNAL(%2), RECEVEUR(%3), SLOT(%4)</translation> </message> @@ -3842,37 +3105,26 @@ Voulez-vous le remplacer ?</translation> <context> <name>SignalSlotDialogClass</name> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="13"/> <source>Signals and slots</source> <translation>Signaux et slots</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="19"/> <source>Slots</source> <translation>Slots</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="30"/> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="79"/> <source>Add</source> <translation>Ajouter</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="33"/> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="43"/> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="82"/> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="92"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="40"/> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="89"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui" line="68"/> <source>Signals</source> <translation>Signaux</translation> </message> @@ -3880,12 +3132,10 @@ Voulez-vous le remplacer ?</translation> <context> <name>Spacer</name> <message> - <location filename="../tools/designer/src/lib/shared/spacer_widget.cpp" line="275"/> <source>Horizontal Spacer '%1', %2 x %3</source> <translation>Ressort horizontal '%1', %2 x %3</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/spacer_widget.cpp" line="275"/> <source>Vertical Spacer '%1', %2 x %3</source> <translation>Ressort vertical '%1', %2 x %3</translation> </message> @@ -3893,7 +3143,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>TemplateOptionsPage</name> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.cpp" line="156"/> <source>Template Paths</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Chemins des modèles</translation> @@ -3902,32 +3151,42 @@ Voulez-vous le remplacer ?</translation> <context> <name>ToolBarManager</name> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="224"/> <source>Configure Toolbars...</source> <translation>Configurer les barres d'outils...</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="239"/> <source>Window</source> <translation>Fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="240"/> <source>Help</source> <translation>Aide</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="247"/> <source>Style</source> <translation>Style</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="249"/> <source>Dock views</source> <translation>Ancrer les vues</translation> </message> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="255"/> + <source>File</source> + <translation>Fichier</translation> + </message> + <message> + <source>Edit</source> + <translation>Édition</translation> + </message> + <message> + <source>Tools</source> + <translation>Outils</translation> + </message> + <message> + <source>Form</source> + <translation>Formulaire</translation> + </message> + <message> <source>Toolbars</source> <translation>Barres d'outils</translation> </message> @@ -3935,22 +3194,18 @@ Voulez-vous le remplacer ?</translation> <context> <name>VersionDialog</name> <message> - <location filename="../tools/designer/src/designer/versiondialog.cpp" line="171"/> <source><h3>%1</h3><br/><br/>Version %2</source> <translation><h3>%1</h3><br/><br/>Version %2</translation> </message> <message> - <location filename="../tools/designer/src/designer/versiondialog.cpp" line="172"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> - <location filename="../tools/designer/src/designer/versiondialog.cpp" line="173"/> <source><br/>Qt Designer is a graphical user interface designer for Qt applications.<br/></source> <translation><br/>Qt Designer est une interface de création d'interface graphique pour les applications Qt.<br/></translation> </message> <message> - <location filename="../tools/designer/src/designer/versiondialog.cpp" line="175"/> <source>%1<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> <translation>%1<br/>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</translation> </message> @@ -3958,7 +3213,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>WidgetDataBase</name> <message> - <location filename="../tools/designer/src/lib/shared/widgetdatabase.cpp" line="814"/> <source>The file contains a custom widget '%1' whose base class (%2) differs from the current entry in the widget database (%3). The widget database is left unchanged.</source> <translation>Le fichier contient un widget personnalisé '%1' dont la classe de base (%2) est différente de l'entrée dans la base de données de widget (%3). La base de données de widget n'a pas été modifiée.</translation> </message> @@ -3966,87 +3220,70 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ActionEditor</name> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="123"/> <source>New...</source> <translation>Nouveau...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="124"/> <source>Edit...</source> <translation>Éditer...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="125"/> <source>Go to slot...</source> <translation>Aller au slot...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="126"/> <source>Copy</source> <translation>Copier</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="127"/> <source>Cut</source> <translation>Couper</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="128"/> <source>Paste</source> <translation>Coller</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="129"/> <source>Select all</source> <translation>Tout sélectionner</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="130"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="139"/> <source>Actions</source> <translation>Actions</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="188"/> <source>Configure Action Editor</source> <translation>Configurer l'éditeur d'action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="191"/> <source>Icon View</source> <translation>Vue en icônes</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="197"/> <source>Detailed View</source> <translation>Vue détaillée</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="443"/> <source>New action</source> <translation>Nouvelle action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="541"/> <source>Edit action</source> <translation>Editer action</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="610"/> <source>Remove action '%1'</source> <translation>Supprimer action '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="610"/> <source>Remove actions</source> <translation>Supprimer les actions</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="796"/> <source>Used In</source> <translation>Utilisé dans</translation> </message> @@ -4054,32 +3291,26 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ActionModel</name> <message> - <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="95"/> <source>Name</source> <translation>Nom</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="96"/> <source>Used</source> <translation>Utilisé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="97"/> <source>Text</source> <translation>Texte</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="98"/> <source>Shortcut</source> <translation>Raccourci</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="99"/> <source>Checkable</source> <translation>Vérifiable</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="100"/> <source>ToolTip</source> <translation>Info-bulle</translation> </message> @@ -4087,27 +3318,22 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BrushManagerProxy</name> <message> - <location filename="../tools/designer/src/components/formeditor/brushmanagerproxy.cpp" line="219"/> <source>The element '%1' is missing the required attribute '%2'.</source> <translation>L'attribut requis '%2' est manquant pour l'élément '%1'.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/brushmanagerproxy.cpp" line="230"/> <source>Empty brush name encountered.</source> <translation>Un nom vide de pinceau a été rencontré.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/brushmanagerproxy.cpp" line="240"/> <source>An unexpected element '%1' was encountered.</source> <translation>L'élément inattendu '%1' a été rencontré.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/brushmanagerproxy.cpp" line="247"/> <source>An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4</source> <translation>Une erreur est apparue lors de la lecture du fichier '%1' de définition des pinceaux à la ligne %2, colonne %3: %4</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/brushmanagerproxy.cpp" line="290"/> <source>An error occurred when reading the resource file '%1' at line %2, column %3: %4</source> <translation>Une erreur est survenue lors de la lecture du fichier de ressource '%1' à la ligne %2, colonne %3 : %4</translation> </message> @@ -4115,17 +3341,14 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BuddyEditor</name> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor.cpp" line="261"/> <source>Add buddy</source> <translation>Ajouter un copain</translation> </message> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor.cpp" line="313"/> <source>Remove buddies</source> <translation>Supprimer les copains</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor.cpp" line="337"/> <source>Remove %n buddies</source> <translation> <numerusform>Supprimer %n copain</numerusform> @@ -4133,7 +3356,6 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor.cpp" line="388"/> <source>Add %n buddies</source> <translation> <numerusform>Ajouter %n copain</numerusform> @@ -4141,7 +3363,6 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor.cpp" line="435"/> <source>Set automatically</source> <translation>Définir automatiquement</translation> </message> @@ -4149,7 +3370,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BuddyEditorPlugin</name> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor_plugin.cpp" line="73"/> <source>Edit Buddies</source> <translation>Éditer les copains</translation> </message> @@ -4157,7 +3377,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BuddyEditorTool</name> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor_tool.cpp" line="56"/> <source>Edit Buddies</source> <translation>Éditer les copains</translation> </message> @@ -4165,12 +3384,10 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ButtonGroupMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="318"/> <source>Select members</source> <translation>Sélectionner les membres</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="319"/> <source>Break</source> <translation>Casser</translation> </message> @@ -4178,32 +3395,26 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ButtonTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="440"/> <source>Assign to button group</source> <translation>Assigner au groupe de boutons</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="442"/> <source>Button group</source> <translation>Groupe de boutons</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="443"/> <source>New button group</source> <translation>Nouveau groupe de boutons</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="444"/> <source>Change text...</source> <translation>Modifier le texte...</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="445"/> <source>None</source> <translation>Aucun</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="546"/> <source>Button group '%1'</source> <translation>Groupe de boutons '%1'</translation> </message> @@ -4211,57 +3422,46 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::CodeDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="95"/> <source>Save...</source> <translation>Enregistrer...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="99"/> <source>Copy All</source> <translation>Tout copier</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="104"/> <source>&Find in Text...</source> <translation>&Rechercher dans le texte...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="179"/> <source>A temporary form file could not be created in %1.</source> <translation>Un fichier temporaire de formulaire n'a pas pu être créé dans %1.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="185"/> <source>The temporary form file %1 could not be written.</source> <translation>Le fichier temporaire de formulaire %1 n'a pas pu être écrit.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="206"/> <source>%1 - [Code]</source> <translation>%1 - [Code]</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="229"/> <source>Save Code</source> <translation>Enregistrer le code</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="229"/> <source>Header Files (*.%1)</source> <translation>Fichiers headers (*.%1)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="235"/> <source>The file %1 could not be opened: %2</source> <translation>Le fichier %1 ne peut pas être ouvert : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="240"/> <source>The file %1 could not be written: %2</source> <translation>Le fichier %1 ne peut pas être écrit : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="251"/> <source>%1 - Error</source> <translation>%1 - Erreur</translation> </message> @@ -4269,7 +3469,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ColorAction</name> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="246"/> <source>Text Color</source> <translation>Couleur du texte</translation> </message> @@ -4277,12 +3476,10 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ComboBoxTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/combobox_taskmenu.cpp" line="68"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/combobox_taskmenu.cpp" line="106"/> <source>Change Combobox Contents</source> <translation>Modifier le contenu du Combobox</translation> </message> @@ -4290,7 +3487,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::CommandLinkButtonTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="702"/> <source>Change description...</source> <translation>Modifier la description...</translation> </message> @@ -4298,17 +3494,14 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ConnectionEdit</name> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="1589"/> <source>Select All</source> <translation>Tout sélectionner</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="1592"/> <source>Deselect All</source> <translation>Désélectionner tout</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="1597"/> <source>Delete</source> <translation>Supprimer</translation> </message> @@ -4316,52 +3509,42 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ConnectionModel</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="196"/> <source>Sender</source> <translation>Émetteur</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="197"/> <source>Signal</source> <translation>Signal</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="198"/> <source>Receiver</source> <translation>Receveur</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="199"/> <source>Slot</source> <translation>Slot</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="289"/> <source><sender></source> <translation><émetteur></translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="290"/> <source><signal></source> <translation><signal></translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="291"/> <source><receiver></source> <translation><receveur></translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="292"/> <source><slot></source> <translation><slot></translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="400"/> <source>The connection already exists!<br>%1</source> <translation>La connexion existe déjà !<br>%1</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="402"/> <source>Signal and Slot Editor</source> <translation>Éditeur de signaux et slots</translation> </message> @@ -4369,42 +3552,34 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ContainerWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="79"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="104"/> <source>Insert</source> <translation>Insérer</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="107"/> <source>Insert Page Before Current Page</source> <translation>Insérer la page avant la page courante</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="111"/> <source>Insert Page After Current Page</source> <translation>Insérer la page après la page courante</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="119"/> <source>Add Subwindow</source> <translation>Ajouter sous-fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="157"/> <source>Subwindow</source> <translation>Sous fenêtre</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="159"/> <source>Page</source> <translation>Page</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="160"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> @@ -4412,18 +3587,15 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::DPI_Chooser</name> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="100"/> <source>System (%1 x %2)</source> <extracomment>System resolution</extracomment> <translation>Système (%1 x %2)</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="107"/> <source>User defined</source> <translation>Défini par l'utilisateur</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="125"/> <source> x </source> <extracomment>DPI X/Y separator</extracomment> <translation> x </translation> @@ -4432,49 +3604,38 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::DesignerPropertyManager</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="647"/> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="653"/> <source>AlignLeft</source> <translation>AlignementGauche</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="648"/> <source>AlignHCenter</source> <translation>AlignementCentreH</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="649"/> <source>AlignRight</source> <translation>AlignementDroite</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="650"/> <source>AlignJustify</source> <translation>AlignementJustifié</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="659"/> <source>AlignTop</source> <translation>AlignementSommet</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="660"/> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="664"/> <source>AlignVCenter</source> <translation>AlignementCentreV</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="661"/> <source>AlignBottom</source> <translation>AlignementDessous</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1226"/> <source>%1, %2</source> <translation>%1, %2</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1232"/> <source>Customized (%n roles)</source> <translation> <numerusform>Personnalisé (%n rôle)</numerusform> @@ -4482,76 +3643,59 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1233"/> <source>Inherited</source> <translatorcomment>pour la palette</translatorcomment> <translation>Héritée</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1799"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1808"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1823"/> <source>Normal Off</source> <translation>Arrêt normal</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1824"/> <source>Normal On</source> <translation>Marche normal</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1825"/> <source>Disabled Off</source> <translation>Arrêt désactivé</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1826"/> <source>Disabled On</source> <translation>Marche désactivé</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1827"/> <source>Active Off</source> <translation>Arrêt activé</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1828"/> <source>Active On</source> <translation>Marche activé</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1829"/> <source>Selected Off</source> <translation>Arrêt sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1830"/> <source>Selected On</source> <translation>Marche sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1837"/> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1858"/> <source>translatable</source> <translation>Traduisible</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1843"/> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1864"/> <source>disambiguation</source> <translation>désambiguation</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1849"/> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="1870"/> <source>comment</source> <translation>commentaire</translation> </message> @@ -4559,48 +3703,38 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::DeviceProfileDialog</name> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="63"/> <source>Device Profiles (*.%1)</source> <translation>Profils d'appareil (*.%1)</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="94"/> <source>Default</source> <translation>Par défaut</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="161"/> <source>Save Profile</source> <translation>Enregistrer le profil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="171"/> <source>Save Profile - Error</source> <translation>Enregistrer le profile - Erreur</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="171"/> <source>Unable to open the file '%1' for writing: %2</source> <translation>Impossible d'ouvrir le fichier '%1' en écriture : %2</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="179"/> <source>Open profile</source> <translation>Ouvrir profil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="185"/> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="191"/> <source>Open Profile - Error</source> <translation>Ouvrir profil - Erreur</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="185"/> <source>Unable to open the file '%1' for reading: %2</source> <translation>Impossible d'ouvrir le fichier '%1' en lecture : %2</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="191"/> <source>'%1' is not a valid profile: %2</source> <translation>'%1' n'est pas un profil valide : %2</translation> </message> @@ -4608,57 +3742,46 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::Dialog</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="53"/> <source>Dialog</source> <translation>Boîte de dialogue</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="65"/> <source>StringList</source> <translation>Liste de chaîne de caractères</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="93"/> <source>New String</source> <translation>Nouvelle chaîne de caractères</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="96"/> <source>&New</source> <translation>&Nouveau</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="106"/> <source>Delete String</source> <translation>Supprimer la chaîne de caractères</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="109"/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="142"/> <source>&Value:</source> <translation>&Valeur : </translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="180"/> <source>Move String Up</source> <translation>Déplacer la chaîne de caractères vers le haut</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="183"/> <source>Up</source> <translation>Vers le haut</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="190"/> <source>Move String Down</source> <translation>Déplacer la chaîne de caractères vers le bas</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui" line="193"/> <source>Down</source> <translation>Vers le bas</translation> </message> @@ -4666,52 +3789,42 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::EmbeddedOptionsControl</name> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="160"/> <source>None</source> <translation>Aucun</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="164"/> <source>Add a profile</source> <translation>Ajouter un profil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="170"/> <source>Edit the selected profile</source> <translation>Éditer le profile sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="174"/> <source>Delete the selected profile</source> <translation>Supprimer le profil sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="196"/> <source>Add Profile</source> <translation>Ajouter profil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="203"/> <source>New profile</source> <translation>Nouveau profil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="238"/> <source>Edit Profile</source> <translation>Éditer profil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="264"/> <source>Delete Profile</source> <translation>Supprimer profil</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="265"/> <source>Would you like to delete the profile '%1'?</source> <translation>Voulez-vous supprimer le profil '%1' ?</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="320"/> <source>Default</source> <translation>Par défaut</translation> </message> @@ -4719,20 +3832,25 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FilterWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/filterwidget.cpp" line="185"/> <source><Filter></source> - <translation><Filtre></translation> + <translation type="obsolete"><Filtre></translation> + </message> + <message> + <source>Filter</source> + <translation>Filtre</translation> + </message> + <message> + <source>Clear text</source> + <translation>Effacer le texte</translation> </message> </context> <context> <name>qdesigner_internal::FormEditor</name> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor.cpp" line="190"/> <source>Resource File Changed</source> <translation>Fichier de ressource modifié</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor.cpp" line="191"/> <source>The file "%1" has changed outside Designer. Do you want to reload it?</source> <translation>Le fichier "%1" a été modifié en dehors de Designer. Voulez-vous le recharger ?</translation> </message> @@ -4740,7 +3858,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormLayoutMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutmenu.cpp" line="482"/> <source>Add form layout row...</source> <translation>Ajouter une ligne au layout du formulaire...</translation> </message> @@ -4748,33 +3865,30 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindow</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="441"/> <source>Edit contents</source> <translation>Éditer le contenu</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="442"/> <source>F2</source> <translation>F2</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1216"/> <source>Insert widget '%1'</source> <translation>Insérer le widget '%1'</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1283"/> <source>Resize</source> <translation>Redimensionner</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1501"/> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1516"/> <source>Key Move</source> <translation>Déplacement au clavier</translation> </message> + <message> + <source>Key Resize</source> + <translation>Redimensionnement au clavier</translation> + </message> <message numerus="yes"> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1727"/> <source>Paste %n action(s)</source> <translation> <numerusform>Coller %n action</numerusform> @@ -4782,7 +3896,6 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1729"/> <source>Paste %n widget(s)</source> <translation> <numerusform>Coller %n widget</numerusform> @@ -4790,53 +3903,42 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1730"/> <source>Paste (%1 widgets, %2 actions)</source> <translation>Coller (%1 widgets, %2 actions)</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1786"/> <source>Cannot paste widgets. Designer could not find a container without a layout to paste into.</source> <translation>Impossible de coller les widgets. Designer n'a pas trouvé de conteneur sans layout pour coller.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1788"/> <source>Break the layout of the container you want to paste into, select this container and then paste again.</source> <translation>Retirez le layout du conteneur dans lequel vous voulez coller, sélectionnez ce conteneur et collez à nouveau.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1792"/> <source>Paste error</source> <translation>Erreur de collage</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1975"/> <source>Raise widgets</source> <translation>Élever widgets</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="1992"/> <source>Lower widgets</source> <translation>Descendre widgets</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="2196"/> <source>Select Ancestor</source> <translation>Sélectionner les ancêtres</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="2237"/> <source>Lay out</source> <translation>Mettre en page</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="2730"/> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="2785"/> <source>Drop widget</source> <translation>Supprimer widget</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="2772"/> <source>A QMainWindow-based form does not contain a central widget.</source> <translation>Un formulaire basé sur QMainWindow ne contenant pas de widget central.</translation> </message> @@ -4844,12 +3946,10 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindowBase</name> <message> - <location filename="../tools/designer/src/lib/shared/formwindowbase.cpp" line="393"/> <source>Delete '%1'</source> <translation>Supprimer '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/formwindowbase.cpp" line="393"/> <source>Delete</source> <translation>Supprimer</translation> </message> @@ -4857,200 +3957,167 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindowManager</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="364"/> <source>Cu&t</source> <translation>Co&uper</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="367"/> <source>Cuts the selected widgets and puts them on the clipboard</source> <translation>Coupe les widgets sélectionnés et les place dans le presse-papiers</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="372"/> <source>&Copy</source> <translation>Cop&ier</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="375"/> <source>Copies the selected widgets to the clipboard</source> <translation>Copie les widgets sélectionnés dans le presse-papiers</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="380"/> <source>&Paste</source> <translation>C&oller</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="383"/> <source>Pastes the clipboard's contents</source> <translation>Colle le contenu du presse-papiers</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="388"/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="390"/> <source>Deletes the selected widgets</source> <translation>Supprime les widgets sélectionnés</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="395"/> <source>Select &All</source> <translation>Tout &sélectionner</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="398"/> <source>Selects all widgets</source> <translation>Sélectionne tous les widgets</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="403"/> <source>Bring to &Front</source> <translation>Amener au premier &plan</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="406"/> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="407"/> <source>Raises the selected widgets</source> <translation>Élève les widgets sélectionnés</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="411"/> <source>Send to &Back</source> <translation>Placer en &arrière plan</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="414"/> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="415"/> <source>Lowers the selected widgets</source> <translation>Descend les widgets sélectionnés</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="419"/> <source>Adjust &Size</source> <translation>Ajuster les &dimensions</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="422"/> <source>Adjusts the size of the selected widget</source> <translation>Ajuster les dimensions du widget sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="428"/> <source>Lay Out &Horizontally</source> <translation>Mettre en page &horizontalement</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="431"/> - <source>Lays out the selected widgets horizontaly</source> + <source>Lays out the selected widgets horizontally</source> <translation>Mettre en page horizontalement les widgets sélectionnés</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="437"/> + <source>Lays out the selected widgets horizontally in a splitter</source> + <translation>Met en page les widgets sélectionnés horizontalement à l'aide d'un séparateur</translation> + </message> + <message> + <source>Lays out the selected widgets horizontaly</source> + <translation type="obsolete">Mettre en page horizontalement les widgets sélectionnés</translation> + </message> + <message> <source>Lay Out &Vertically</source> <translation>Mettre en page &verticalement</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="440"/> <source>Lays out the selected widgets vertically</source> <translation>Mettre en page verticalement les widgets sélectionnés</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="447"/> <source>Lay Out in a &Form Layout</source> <translation>Mettre en page dans un layout de &formulaire</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="450"/> <source>Lays out the selected widgets in a form layout</source> <translation>Mettre en page les widgets sélectionnés dans un layout de formulaire</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="457"/> <source>Lay Out in a &Grid</source> <translation>Mettre en page dans une &grille</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="460"/> <source>Lays out the selected widgets in a grid</source> <translation>Mettre en page les widgets sélectionnés dans une grille</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="467"/> <source>Lay Out Horizontally in S&plitter</source> <translation>Mettre en page horizontalement avec un sé&parateur</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="470"/> <source>Lays out the selected widgets horizontaly in a splitter</source> - <translation>Met en page les widgets sélectionnés horizontalement à l'aide d'un séparateur</translation> + <translation type="obsolete">Met en page les widgets sélectionnés horizontalement à l'aide d'un séparateur</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="477"/> <source>Lay Out Vertically in Sp&litter</source> <translation>Mettre en page verticalement avec un sépa&rateur</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="480"/> <source>Lays out the selected widgets vertically in a splitter</source> <translation>Met en page les widgets sélectionnés verticalement à l'aide d'un séparateur</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="487"/> <source>&Break Layout</source> <translation>&Casser la mise en page</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="490"/> <source>Breaks the selected layout</source> <translation>Retire le layout sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="495"/> <source>Si&mplify Grid Layout</source> <translation>Si&mplifier le layout de grille</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="497"/> <source>Removes empty columns and rows</source> <translation>Supprime les lignes et colonnes vides</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="503"/> <source>&Preview...</source> <translation>&Prévisualisation...</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="505"/> <source>Preview current form</source> <translation>Prévisualise le formulaire courant</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="520"/> <source>Form &Settings...</source> <translation>Paramètres du &formulaire...</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="612"/> <source>Break Layout</source> <translation>Casser la mise en page</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="638"/> <source>Adjust Size</source> <translation>Ajuster les dimensions</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="681"/> <source>Could not create form preview</source> <comment>Title of warning message box</comment> <translation>Impossible de créer la prévisualisation du formulaire</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="1022"/> <source>Form Settings - %1</source> <translation>Paramètres du formulaire - %1</translation> </message> @@ -5058,12 +4125,10 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindowSettings</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.cpp" line="193"/> <source>None</source> <translation>Aucun</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.cpp" line="194"/> <source>Device Profile: %1</source> <translation>Profil de périphérique : %1</translation> </message> @@ -5071,38 +4136,30 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::GridPanel</name> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="13"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="31"/> <source>Grid</source> <translation>Grille</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="43"/> <source>Visible</source> <translation>Visible</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="50"/> <source>Grid &X</source> <translation>Grille &X</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="76"/> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="133"/> <source>Snap</source> <translation>Grille aimantée</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="85"/> <source>Reset</source> <translation>Réinitialisé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui" line="107"/> <source>Grid &Y</source> <translation>Grille &Y</translation> </message> @@ -5110,7 +4167,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::GroupBoxTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/groupbox_taskmenu.cpp" line="82"/> <source>Change title...</source> <translation>Modifier le titre...</translation> </message> @@ -5118,7 +4174,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::HtmlTextEdit</name> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="188"/> <source>Insert HTML entity</source> <translation>Insérer une entité HTML</translation> </message> @@ -5126,92 +4181,74 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::IconSelector</name> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="328"/> <source>The pixmap file '%1' cannot be read.</source> <translation>Le fichier pixmap '%1' ne peut pas être lu.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="334"/> <source>The file '%1' does not appear to be a valid pixmap file: %2</source> <translation>Le fichier '%1' n'est pas un fichier de pixmap valide : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="343"/> <source>The file '%1' could not be read: %2</source> <translation>Le fichier '%1' ne peut pas être lu : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="376"/> <source>Choose a Pixmap</source> <translation>Choisissez un pixmap</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="383"/> <source>Pixmap Read Error</source> <translation>Erreur de lecture de pixmap</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="437"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="443"/> <source>Normal Off</source> <translation>Arrêt normal</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="444"/> <source>Normal On</source> <translation>Marche normal</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="445"/> <source>Disabled Off</source> <translation>Arrêt désactivé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="446"/> <source>Disabled On</source> <translation>Marche désactivé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="447"/> <source>Active Off</source> <translation>Arrêt activé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="448"/> <source>Active On</source> <translation>Marche activé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="449"/> <source>Selected Off</source> <translation>Arrêt sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="450"/> <source>Selected On</source> <translation>Marche sélectionné</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="458"/> <source>Choose Resource...</source> <translation>Choisir ressource...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="459"/> <source>Choose File...</source> <translation>Choisir un fichier...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="460"/> <source>Reset</source> <translation>Réinitialiser</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="461"/> <source>Reset All</source> <translation>Réinitialisé tout</translation> </message> @@ -5219,58 +4256,46 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ItemListEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="68"/> <source>Items List</source> <translation>Liste d'éléments</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="77"/> <source>New Item</source> <translation>Nouvel élément</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="80"/> <source>&New</source> <translation>&Nouveau</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="87"/> <source>Delete Item</source> <translation>Supprimer élément</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="90"/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="110"/> <source>Move Item Up</source> <translation>Déplacer l'élément vers le haut</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="113"/> <source>U</source> <translation>Monter</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="120"/> <source>Move Item Down</source> <translation>Déplacer l'élément vers le bas</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="123"/> <source>D</source> <translation>Descendre</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui" line="143"/> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="426"/> <source>Properties &>></source> <translation>Propriétés &>></translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="424"/> <source>Properties &<<</source> <translation>Propriétés &<<</translation> </message> @@ -5278,12 +4303,10 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::LabelTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/label_taskmenu.cpp" line="85"/> <source>Change rich text...</source> <translation>Modifier texte riche...</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/label_taskmenu.cpp" line="86"/> <source>Change plain text...</source> <translation>Modifier texte simple...</translation> </message> @@ -5291,7 +4314,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::LanguageResourceDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="118"/> <source>Choose Resource</source> <translation>Choisir ressource</translation> </message> @@ -5299,7 +4321,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::LineEditTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/lineedit_taskmenu.cpp" line="80"/> <source>Change text...</source> <translation>Modifier texte...</translation> </message> @@ -5307,17 +4328,14 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ListWidgetEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/listwidgeteditor.cpp" line="69"/> <source>New Item</source> <translation>Nouvel élément</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/listwidgeteditor.cpp" line="101"/> <source>Edit List Widget</source> <translation>Éditer le widget de liste</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/listwidgeteditor.cpp" line="120"/> <source>Edit Combobox</source> <translation>Éditer le Combobox</translation> </message> @@ -5325,12 +4343,10 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ListWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/listwidget_taskmenu.cpp" line="67"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/listwidget_taskmenu.cpp" line="105"/> <source>Change List Contents</source> <translation>Modifier le contenu de la liste</translation> </message> @@ -5338,22 +4354,18 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::MdiContainerWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="278"/> <source>Next Subwindow</source> <translation>Sous-fenêtre suivante</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="279"/> <source>Previous Subwindow</source> <translation>Sous-fenêtre précédente</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="280"/> <source>Tile</source> <translation>Côte à côte</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="281"/> <source>Cascade</source> <translation>Cascade</translation> </message> @@ -5361,7 +4373,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::MenuTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/menutaskmenu.cpp" line="56"/> <source>Remove</source> <translation>Supprimer</translation> </message> @@ -5369,7 +4380,6 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::MorphMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/morphmenu.cpp" line="613"/> <source>Morph into</source> <translation>Transformer en</translation> </message> @@ -5377,43 +4387,34 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::NewActionDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="46"/> <source>New Action...</source> <translation>Nouvelle action...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="54"/> <source>&Text:</source> <translation>&Texte :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="74"/> <source>Object &name:</source> <translation>&Nom de l'objet :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="87"/> <source>&Icon:</source> <translation>&Icône :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="117"/> <source>Shortcut:</source> <translation>Raccourci :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="131"/> <source>Checkable:</source> <translation>Peut être cochée :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="138"/> <source>ToolTip:</source> <translation>Info-bulle :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="157"/> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui" line="178"/> <source>...</source> <translation>...</translation> </message> @@ -5421,39 +4422,32 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::NewDynamicPropertyDialog</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.ui" line="13"/> <source>Create Dynamic Property</source> <translation>Créer une propriété dynamique</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.ui" line="37"/> <source>Property Name</source> <translation>Nom de la propriété</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.ui" line="49"/> <source>horizontalSpacer</source> <translation>Espaceur horizontal</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.ui" line="73"/> <source>Property Type</source> <translation>Type de la propriété</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.cpp" line="134"/> <source>Set Property Name</source> <translation>Définir le nom de la propriété</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.cpp" line="145"/> <source>The current object already has a property named '%1'. Please select another, unique one.</source> <translation>L'objet courant possède déjà une propriété nommée '%1'. Veuillez-sélectionner un autre nom.</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.cpp" line="149"/> <source>The '_q_' prefix is reserved for the Qt library. Please select another name.</source> <translation>Le préfixe «_q_» est réservé pour la bibliothèque Qt. @@ -5463,83 +4457,67 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::NewFormWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.ui" line="82"/> <source>0</source> <translation>0</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.ui" line="101"/> <source>Choose a template for a preview</source> <translation>Choisir un modèle pour la prévisualisation</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.ui" line="145"/> <source>Embedded Design</source> <translation>Design pour appareil mobile</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.ui" line="157"/> <source>Device:</source> <translation>Appareil :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.ui" line="164"/> <source>Screen Size:</source> <translation>Dimensions de l'écran :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="104"/> <source>Default size</source> <translation>Dimensions par défaut</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="105"/> <source>QVGA portrait (240x320)</source> <translation>QVGA portrait (240x320)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="106"/> <source>QVGA landscape (320x240)</source> <translation>QVGA paysage (320x240)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="107"/> <source>VGA portrait (480x640)</source> <translation>VGA portrait (480x640)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="108"/> <source>VGA landscape (640x480)</source> <translation>VGA paysage (640x480)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="174"/> <source>Widgets</source> <extracomment>New Form Dialog Categories</extracomment> <translation>Widgets</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="175"/> <source>Custom Widgets</source> <translation>Widgets personnalisé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="193"/> <source>None</source> <translation>Aucun</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="250"/> <source>Error loading form</source> <translation>Erreur de chargement du formulaire</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="494"/> <source>Unable to open the form template file '%1': %2</source> <translation>Impossible d'ouvrir le fichier de modèle de formulaire '%1' : %2</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="561"/> <source>Internal error: No template selected.</source> <translation>Erreur interne : aucun modèle sélectionné.</translation> </message> @@ -5547,37 +4525,30 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::NewPromotedClassPanel</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="92"/> <source>Add</source> <translation>Ajouter</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="94"/> <source>New Promoted Class</source> <translation>Nouvelle classe promue</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="109"/> <source>Base class name:</source> <translation>Nom de la classe de base :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="110"/> <source>Promoted class name:</source> <translation>Nom de la classe promue :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="111"/> <source>Header file:</source> <translation>Fichier d'en-tête :</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="112"/> <source>Global include</source> <translation>En-tête global</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="123"/> <source>Reset</source> <translation>Réinitialiser</translation> </message> @@ -5585,7 +4556,10 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::ObjectInspector</name> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspector.cpp" line="754"/> + <source>Change Current Page</source> + <translation>Modifier la page courante</translation> + </message> + <message> <source>&Find in Text...</source> <translation>&Rechercher dans le texte...</translation> </message> @@ -5593,40 +4567,33 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::ObjectInspector::ObjectInspectorPrivate</name> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspector.cpp" line="316"/> <source>Change Current Page</source> - <translation>Modifier la page courante</translation> + <translation type="obsolete">Modifier la page courante</translation> </message> </context> <context> <name>qdesigner_internal::OrderDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.ui" line="53"/> <source>Change Page Order</source> <translation>Modifier l'ordre des pages</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.ui" line="59"/> <source>Page Order</source> <translation>Ordre des pages</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.ui" line="116"/> <source>Move page up</source> <translation>Déplacer la page vers le haut</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.ui" line="123"/> <source>Move page down</source> <translation>Déplacer la page vers le bas</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.cpp" line="109"/> <source>Index %1 (%2)</source> <translation>Indice %1 (%2)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.cpp" line="112"/> <source>%1 %2</source> <translation>%1 %2</translation> </message> @@ -5634,47 +4601,38 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PaletteEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="61"/> <source>Edit Palette</source> <translation>Éditer la palette</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="85"/> <source>Tune Palette</source> <translation>Ajuster la palette</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="122"/> <source>Show Details</source> <translation>Afficher les détails</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="129"/> <source>Compute Details</source> <translation>Calculer les détails</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="139"/> <source>Quick</source> <translation>Rapide</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="157"/> <source>Preview</source> <translation>Prévisualisation</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="169"/> <source>Disabled</source> <translation>Désactivé</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="176"/> <source>Inactive</source> <translation>Inactif</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui" line="183"/> <source>Active</source> <translation>Actif</translation> </message> @@ -5682,7 +4640,6 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PaletteEditorButton</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditorbutton.cpp" line="57"/> <source>Change Palette</source> <translation>Modifier la palette</translation> </message> @@ -5690,22 +4647,18 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PaletteModel</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.cpp" line="374"/> <source>Color Role</source> <translation>Rôle de la couleur</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.cpp" line="376"/> <source>Active</source> <translation>Actif</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.cpp" line="378"/> <source>Inactive</source> <translation>Inactif</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.cpp" line="380"/> <source>Disabled</source> <translation>Désactivé</translation> </message> @@ -5713,28 +4666,22 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PixmapEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="329"/> <source>Choose Resource...</source> <translation>Choisir ressource...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="330"/> <source>Choose File...</source> <translation>Choisir fichier...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="331"/> <source>Copy Path</source> <translation>Chemin de copie</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="332"/> <source>Paste Path</source> <translation>Chemin de collage</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="338"/> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="354"/> <source>...</source> <translation>...</translation> </message> @@ -5742,7 +4689,6 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PlainTextEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/plaintexteditor.cpp" line="65"/> <source>Edit text</source> <translation>Éditer le texte</translation> </message> @@ -5750,37 +4696,30 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PluginDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="72"/> <source>Components</source> <translation>Composants</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="85"/> <source>Plugin Information</source> <translation>Information sur les plugins</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="89"/> <source>Refresh</source> <translation>Rafraîchir</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="90"/> <source>Scan for newly installed custom widget plugins.</source> <translation>Recherche des plugins personnalisés récemment installés.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="138"/> <source>Qt Designer couldn't find any plugins</source> <translation>Qt Designer n'a trouvé aucun plugin</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="141"/> <source>Qt Designer found the following plugins</source> <translation>Qt Designer a trouvé les plugins suivants</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="196"/> <source>New custom widget plugins have been found.</source> <translation>De nouveaux plugins de widgets ont été trouvés.</translation> </message> @@ -5788,7 +4727,6 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewActionGroup</name> <message> - <location filename="../tools/designer/src/components/formeditor/previewactiongroup.cpp" line="95"/> <source>%1 Style</source> <translation>Style %1</translation> </message> @@ -5796,50 +4734,38 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewConfigurationWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="139"/> <source>Default</source> <translation>Par défaut</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="161"/> <source>None</source> <translation>Aucun</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="167"/> <source>Browse...</source> <translation>Parcourir...</translation> </message> -</context> -<context> - <name>qdesigner_internal::PreviewConfigurationWidget::PreviewConfigurationWidgetPrivate</name> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="285"/> <source>Load Custom Device Skin</source> <translation>Charger le revêtement d'appareil personnalisé</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="287"/> <source>All QVFB Skins (*.%1)</source> <translation>Tous les revêtements QVFB (*.%1)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="303"/> <source>%1 - Duplicate Skin</source> <translation>%1 - Revêtement doublon</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="304"/> <source>The skin '%1' already exists.</source> <translation>Le revêtement '%1' existe déjà.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="318"/> <source>%1 - Error</source> - <translation>%1 - -Erreur</translation> + <translation>%1 - Erreur</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="319"/> <source>%1 is not a valid skin directory: %2</source> <translation>%1 n'est pas un répertoire de revêtements valide : @@ -5847,26 +4773,51 @@ Veuillez sélectionner un autre nom.</translation> </message> </context> <context> + <name>qdesigner_internal::PreviewConfigurationWidget::PreviewConfigurationWidgetPrivate</name> + <message> + <source>Load Custom Device Skin</source> + <translation type="obsolete">Charger le revêtement d'appareil personnalisé</translation> + </message> + <message> + <source>All QVFB Skins (*.%1)</source> + <translation type="obsolete">Tous les revêtements QVFB (*.%1)</translation> + </message> + <message> + <source>%1 - Duplicate Skin</source> + <translation type="obsolete">%1 - Revêtement doublon</translation> + </message> + <message> + <source>The skin '%1' already exists.</source> + <translation type="obsolete">Le revêtement '%1' existe déjà.</translation> + </message> + <message> + <source>%1 - Error</source> + <translation type="obsolete">%1 - -Erreur</translation> + </message> + <message> + <source>%1 is not a valid skin directory: +%2</source> + <translation type="obsolete">%1 n'est pas un répertoire de revêtements valide : +%2</translation> + </message> +</context> +<context> <name>qdesigner_internal::PreviewDeviceSkin</name> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="259"/> <source>&Portrait</source> <translation>&Portrait</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="261"/> <source>Landscape (&CCW)</source> <extracomment>Rotate form preview counter-clockwise</extracomment> <translation>Paysage (&dans le sens horaire)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="263"/> <source>&Landscape (CW)</source> <extracomment>Rotate form preview clockwise</extracomment> <translation>Paysage (&dans le sens anti-horaire)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="264"/> <source>&Close</source> <translation>&Fermer</translation> </message> @@ -5874,7 +4825,6 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewManager</name> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="690"/> <source>%1 - [Preview]</source> <translation>%1 - [prévisualisation]</translation> </message> @@ -5882,7 +4832,6 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewMdiArea</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewframe.cpp" line="72"/> <source>The moose in the noose ate the goose who was loose.</source> <extracomment>Palette editor background</extracomment> @@ -5893,57 +4842,46 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PreviewWidget</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="61"/> <source>Preview Window</source> <translation>Fenêtre de prévisualisation</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="81"/> <source>LineEdit</source> <translation>LineEdit</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="89"/> <source>ComboBox</source> <translation>ComboBox</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="108"/> <source>PushButton</source> <translation>PushButton</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="166"/> <source>ButtonGroup2</source> <translation>ButtonGroup2</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="178"/> <source>CheckBox1</source> <translation>CheckBox1</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="188"/> <source>CheckBox2</source> <translation>CheckBox2</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="198"/> <source>ButtonGroup</source> <translation>ButtonGroup</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="210"/> <source>RadioButton1</source> <translation>RadioButton1</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="220"/> <source>RadioButton2</source> <translation>RadioButton2</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui" line="227"/> <source>RadioButton3</source> <translation>BoutonRadio1</translation> </message> @@ -5951,22 +4889,18 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PromotionModel</name> <message> - <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="129"/> <source>Name</source> <translation>Nom</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="130"/> <source>Header file</source> <translation>Fichier d'en-tête</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="131"/> <source>Global include</source> <translation>En-tête global</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="132"/> <source>Usage</source> <translation>Usage</translation> </message> @@ -5974,27 +4908,22 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PromotionTaskMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/promotiontaskmenu.cpp" line="85"/> <source>Promoted widgets...</source> <translation>Widgets promus...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/promotiontaskmenu.cpp" line="86"/> <source>Promote to ...</source> <translation>Promouvoir en...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/promotiontaskmenu.cpp" line="87"/> <source>Change signals/slots...</source> <translation>Modifier signaux/slots...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/promotiontaskmenu.cpp" line="88"/> <source>Promote to</source> <translation>Promouvoir en</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/promotiontaskmenu.cpp" line="89"/> <source>Demote to %1</source> <translation>Rétrograder en %1</translation> </message> @@ -6002,57 +4931,46 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PropertyEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="183"/> <source>Add Dynamic Property...</source> <translation>Ajouter une propriété dynamique...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="184"/> <source>Remove Dynamic Property</source> <translation>Supprimer la propriété dynamique</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="185"/> <source>Sorting</source> <translation>Tri</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="186"/> <source>Color Groups</source> <translation>Groupes de couleur</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="187"/> <source>Tree View</source> <translation>Vue arborescente</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="188"/> <source>Drop Down Button View</source> - <translation type="unfinished">Liste déroulante</translation> + <translation>Liste déroulante</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="238"/> <source>String...</source> <translation>Chaîne de caractères...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="241"/> <source>Bool...</source> <translation>Booléen...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="245"/> <source>Other...</source> <translation>Autre...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="252"/> <source>Configure Property Editor</source> <translation>Configurer l'éditeur de propriétés</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="785"/> <source>Object: %1 Class: %2</source> <translation>Objet : %1 @@ -6062,7 +4980,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::PropertyLineEdit</name> <message> - <location filename="../tools/designer/src/lib/shared/propertylineedit.cpp" line="88"/> <source>Insert line break</source> <translation>Insérer saut de ligne</translation> </message> @@ -6070,27 +4987,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerPromotionDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="208"/> <source>Promoted Widgets</source> <translation>Widgets promus</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="215"/> <source>Promoted Classes</source> <translation>Classes promues</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="275"/> <source>Promote</source> <translation>Promouvoir</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="427"/> <source>Change signals/slots...</source> <translation>Modifier signaux/slots...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="444"/> <source>%1 - Error</source> <translation>%1 - Erreur</translation> </message> @@ -6098,22 +5010,18 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerResource</name> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="2354"/> <source>Loading qrc file</source> <translation>Chargement du fichier qrc</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="2355"/> <source>The specified qrc file <p><b>%1</b></p><p>could not be found. Do you want to update the file location?</p></source> <translation>Le fichier qrc spécifié <p><b>%1</b></p><p>n'a pas pu être trouvé. Voulez-vous mettre à jour l'emplacement du fichier?</p></translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="2361"/> <source>New location for %1</source> <translation>Nouvel emplacement pour %1</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="2362"/> <source>Resource files (*.qrc)</source> <translation>Fichier de ressource (*.qrc)</translation> </message> @@ -6121,112 +5029,90 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerTaskMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="230"/> <source>Change objectName...</source> <translation>Modifier objectName...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="231"/> <source>Change toolTip...</source> <translation>Modifier toolTip...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="232"/> <source>Change whatsThis...</source> <translation>Modifier whatsThis...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="233"/> <source>Change styleSheet...</source> <translation>Modifier la feuille de style...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="236"/> <source>Create Menu Bar</source> <translation>Créer une barre de menus</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="237"/> <source>Add Tool Bar</source> <translation>Ajouter une barre d'outils</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="238"/> <source>Create Status Bar</source> <translation>Créer une barre de status</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="239"/> <source>Remove Status Bar</source> <translation>Supprimer la barre de status</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="240"/> <source>Change script...</source> <translation>Modifier le script...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="241"/> <source>Change signals/slots...</source> <translation>Modifier signaux/slots...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="242"/> <source>Go to slot...</source> <translation>Aller au slot...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="245"/> <source>Size Constraints</source> <translation>Contrainte de taille</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="249"/> <source>Set Minimum Width</source> <translation>Définir la largeur minimum</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="253"/> <source>Set Minimum Height</source> <translation>Définir la hauteur minimum</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="257"/> <source>Set Minimum Size</source> <translation>Définir la taille minimum</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="263"/> <source>Set Maximum Width</source> <translation>Définir la largeur maximum</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="267"/> <source>Set Maximum Height</source> <translation>Définir la hauteur maximum</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="271"/> <source>Set Maximum Size</source> <translation>Définir la taille maximum</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="506"/> <source>Edit ToolTip</source> <translation>Éditer l'info-bulle</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="511"/> <source>Edit WhatsThis</source> <translation>Éditer «Qu'est-ce»</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="655"/> <source>no signals available</source> <translation>Aucun signal disponible</translation> </message> <message numerus="yes"> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="722"/> <source>Set size constraint on %n widget(s)</source> <translation> <numerusform>Définir les contraintes de dimensions sur %n widget</numerusform> @@ -6237,40 +5123,32 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerWidgetBox</name> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="349"/> <source>An error has been encountered at line %1 of %2: %3</source> <translation>Une erreur a été rencontrée à la ligne %1 de %2 : %3</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="488"/> <source>Unexpected element <%1> encountered when parsing for <widget> or <ui></source> <translation>L'élément inattendu <%1> a été rencontré lors de l'analyse des élements <widget> et <ui></translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="507"/> <source>Unexpected end of file encountered when parsing widgets.</source> <translation>Fin de fichier inattendue lors de l'analyse grammaticale des widgets.</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="516"/> <source>A widget element could not be found.</source> <translation>Un élement de widget n'a pas pu être trouvé.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_widgetbox.cpp" line="123"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_widgetbox.cpp" line="136"/> <source>Unexpected element <%1></source> <translation>Élément <%1> inattendu</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_widgetbox.cpp" line="143"/> <source>A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 %5</source> <translation>Une erreur d'analyse grammaticale est apparue à la ligne %1, colonne %2 du code XML spécifiant le widget %3 : %4 %5</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_widgetbox.cpp" line="152"/> <source>The XML code specified for the widget %1 does not contain any widget elements. %2</source> <translation>Le code XML spécifié pour le widget %1 ne contient aucun élément widget. @@ -6280,73 +5158,58 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QtGradientStopsController</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="173"/> <source>H</source> <translation>T</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="174"/> <source>S</source> <translation>S</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="175"/> <source>V</source> <translation>V</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="181"/> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="185"/> <source>Hue</source> <translation>Teinte</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="182"/> <source>Sat</source> <translation>Sat</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="183"/> <source>Val</source> <translation>Val</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="186"/> <source>Saturation</source> <translation>Saturation</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="187"/> <source>Value</source> <translation>Valeur</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="209"/> <source>R</source> <translation>R</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="210"/> <source>G</source> <translation>V</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="211"/> <source>B</source> <translation>B</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="217"/> <source>Red</source> <translation>Rouge</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="218"/> <source>Green</source> <translation>Vert</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="219"/> <source>Blue</source> <translation>Bleu</translation> </message> @@ -6354,27 +5217,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::RichTextEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="624"/> <source>Edit text</source> <translation>Éditer le texte</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="647"/> <source>Rich Text</source> <translation>Texte riche</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="648"/> <source>Source</source> <translation>Source</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="654"/> <source>&OK</source> <translation>&OK</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="656"/> <source>&Cancel</source> <translation>&Annuler</translation> </message> @@ -6382,72 +5240,58 @@ Classe : %2</translation> <context> <name>qdesigner_internal::RichTextEditorToolBar</name> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="354"/> <source>Bold</source> <translation>Gras</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="355"/> <source>CTRL+B</source> <translation>CTRL+B</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="360"/> <source>Italic</source> <translation>Italique</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="361"/> <source>CTRL+I</source> <translation>CTRL+I</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="366"/> <source>Underline</source> <translation>Souligné</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="367"/> <source>CTRL+U</source> <translation>CTRL+U</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="380"/> <source>Left Align</source> <translation>Aligner à gauche</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="385"/> <source>Center</source> <translation>Centrer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="390"/> <source>Right Align</source> <translation>Aligner à droite</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="395"/> <source>Justify</source> <translation>Justifier</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="404"/> <source>Superscript</source> <translation>Exposant</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="410"/> <source>Subscript</source> <translation>Indice</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="419"/> <source>Insert &Link</source> <translation>Insérer &lien</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="424"/> <source>Insert &Image</source> <translation>Insérer &image</translation> </message> @@ -6455,17 +5299,14 @@ Classe : %2</translation> <context> <name>qdesigner_internal::ScriptDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/scriptdialog.cpp" line="66"/> <source>Edit script</source> <translation>Éditer le script</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/scriptdialog.cpp" line="71"/> <source><html>Enter a Qt Script snippet to be executed while loading the form.<br>The widget and its children are accessible via the variables <i>widget</i> and <i>childWidgets</i>, respectively.</source> <translation><html>Entrez un snippet de code Qt Script à exécuter lors du chargement du formulaire.<br>Le widget et ses enfants sont accessibles via les variables <i>widget</i> et <i>childWidgets</i>, respectivement.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/scriptdialog.cpp" line="122"/> <source>Syntax error</source> <translation>Erreur de syntaxe</translation> </message> @@ -6473,7 +5314,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::ScriptErrorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/scripterrordialog.cpp" line="86"/> <source>Script errors</source> <translation>Erreurs de script</translation> </message> @@ -6481,23 +5321,18 @@ Classe : %2</translation> <context> <name>qdesigner_internal::SignalSlotDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="401"/> <source>There is already a slot with the signature '%1'.</source> <translation>Un slot existe déjà avec la signature '%1'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="406"/> <source>There is already a signal with the signature '%1'.</source> <translation>Un signal existe déjà avec la signature '%1'.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="413"/> <source>%1 - Duplicate Signature</source> <translation>%1 - Signature double</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="434"/> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="510"/> <source>Signals/Slots of %1</source> <translation>Signaux/slots de %1</translation> </message> @@ -6505,12 +5340,10 @@ Classe : %2</translation> <context> <name>qdesigner_internal::SignalSlotEditorPlugin</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor_plugin.cpp" line="72"/> <source>Edit Signals/Slots</source> <translation>Éditer signaux/slots</translation> </message> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor_plugin.cpp" line="74"/> <source>F4</source> <translation>F4</translation> </message> @@ -6518,7 +5351,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::SignalSlotEditorTool</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor_tool.cpp" line="58"/> <source>Edit Signals/Slots</source> <translation>Éditer signaux/slots</translation> </message> @@ -6526,7 +5358,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::StatusBarTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/toolbar_taskmenu.cpp" line="81"/> <source>Remove</source> <translation>Supprimer</translation> </message> @@ -6534,7 +5365,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::StringListEditorButton</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditorbutton.cpp" line="56"/> <source>Change String List</source> <translation>Modifier la liste de chaîne de caractères</translation> </message> @@ -6542,38 +5372,30 @@ Classe : %2</translation> <context> <name>qdesigner_internal::StyleSheetEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="90"/> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="370"/> <source>Valid Style Sheet</source> <translation>Feuille de style valide</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="92"/> <source>Add Resource...</source> <translation>Ajouter ressource...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="93"/> <source>Add Gradient...</source> <translation>Ajouter gradient...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="94"/> <source>Add Color...</source> <translation>Ajouter couleur...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="95"/> <source>Add Font...</source> <translation>Ajouter police...</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="97"/> <source>Edit Style Sheet</source> <translation>Éditer feuille de style</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="373"/> <source>Invalid Style Sheet</source> <translation>Feuille de style invalide</translation> </message> @@ -6581,27 +5403,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TabOrderEditor</name> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor.cpp" line="363"/> <source>Start from Here</source> <translation>Démarrer à partir d'ici</translation> </message> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor.cpp" line="366"/> <source>Restart</source> <translation>Redémarrer</translation> </message> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor.cpp" line="368"/> <source>Tab Order List...</source> <translation>Ordre de la liste de tabulation...</translation> </message> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor.cpp" line="412"/> <source>Tab Order List</source> <translation>Ordre de la liste de tabulation</translation> </message> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor.cpp" line="413"/> <source>Tab Order</source> <translation>Ordre des tabulations</translation> </message> @@ -6609,7 +5426,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TabOrderEditorPlugin</name> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor_plugin.cpp" line="73"/> <source>Edit Tab Order</source> <translation>Éditer l'ordre des tabulations</translation> </message> @@ -6617,7 +5433,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TabOrderEditorTool</name> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor_tool.cpp" line="57"/> <source>Edit Tab Order</source> <translation>Éditer l'ordre des tabulations</translation> </message> @@ -6625,48 +5440,38 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TableWidgetEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.ui" line="53"/> <source>Edit Table Widget</source> <translation>Éditer le widget de table</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.ui" line="63"/> <source>&Items</source> <translation>&Éléments</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.ui" line="75"/> <source>Table Items</source> <translation>Éléments de la table</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.ui" line="97"/> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="218"/> <source>Properties &>></source> <translation>Propriétés &>></translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="67"/> <source>New Column</source> <translation>Nouvelle colonne</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="70"/> <source>New Row</source> <translation>Nouvelle ligne</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="78"/> <source>&Columns</source> <translation>&Colonne</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="79"/> <source>&Rows</source> <translation>&Lignes</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="216"/> <source>Properties &<<</source> <translation>Propriétés &<<</translation> </message> @@ -6674,7 +5479,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TableWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidget_taskmenu.cpp" line="64"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> @@ -6682,23 +5486,18 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TemplateOptionsWidget</name> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.ui" line="13"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.ui" line="19"/> <source>Additional Template Paths</source> <translation>Chemins de modèles additionnels</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.ui" line="28"/> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.ui" line="35"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.cpp" line="138"/> <source>Pick a directory to save templates in</source> <translation>Choisir un répertoire où enregistrer les modèles</translation> </message> @@ -6706,22 +5505,18 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TextEditTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/textedit_taskmenu.cpp" line="58"/> <source>Edit HTML</source> <translation>Éditer le HTML</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/textedit_taskmenu.cpp" line="59"/> <source>Change HTML...</source> <translation>Modifier le HTML...</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/textedit_taskmenu.cpp" line="68"/> <source>Edit Text</source> <translation>Éditer le texte</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/textedit_taskmenu.cpp" line="69"/> <source>Change Plain Text...</source> <translation>Modifier le texte simple...</translation> </message> @@ -6729,22 +5524,18 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TextEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="150"/> <source>Choose Resource...</source> <translation>Choisir ressource...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="151"/> <source>Choose File...</source> <translation>Choisir fichier...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="156"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="274"/> <source>Choose a File</source> <translation>Choisir un fichier</translation> </message> @@ -6752,27 +5543,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::ToolBarEventFilter</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbar.cpp" line="148"/> <source>Insert Separator before '%1'</source> <translation>Insérer un séparateur avant '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbar.cpp" line="157"/> <source>Append Separator</source> <translation>Ajouter un séparateur à la fin</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbar.cpp" line="169"/> <source>Remove action '%1'</source> <translation>Supprimer l'action '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbar.cpp" line="176"/> <source>Remove Toolbar '%1'</source> <translation>Supprimer la barre d'outils '%1'</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbar.cpp" line="234"/> <source>Insert Separator</source> <translation>Insérer un séparateur</translation> </message> @@ -6780,125 +5566,98 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TreeWidgetEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="53"/> <source>Edit Tree Widget</source> <translation>Éditer un widget d'arborescence</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="63"/> <source>&Items</source> <translation>&Éléments</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="87"/> <source>Tree Items</source> <translation>Élément de l'arbre</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="91"/> <source>1</source> <translation>1</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="101"/> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="199"/> <source>New Item</source> <translation>Nouvel élément</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="104"/> <source>&New</source> <translation>&Nouveau</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="111"/> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="218"/> <source>New Subitem</source> <translation>Nouveau sous-élément</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="114"/> <source>New &Subitem</source> <translation>Nouveau &sous-élément</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="121"/> <source>Delete Item</source> <translation>Supprimer l'élément</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="124"/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="144"/> <source>Move Item Left (before Parent Item)</source> <translation>Déplacer l'élément à gauche (avant l'élément parent)</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="147"/> <source>L</source> <translation>G</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="154"/> <source>Move Item Right (as a First Subitem of the Next Sibling Item)</source> <translation>Déplacer l'élément sur la droite (comme un premier sous-élément de l'élément à droite)</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="157"/> <source>R</source> <translation>D</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="164"/> <source>Move Item Up</source> <translation>Déplacer l'élément vers le haut</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="167"/> <source>U</source> <translation>H</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="174"/> <source>Move Item Down</source> <translation>Déplacer l'élément vers le bas</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="177"/> <source>D</source> <translation>B</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui" line="197"/> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="395"/> <source>Properties &>></source> <translation>Propriétés &>></translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="68"/> <source>New Column</source> <translation>Nouvelle colonne</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="76"/> <source>&Columns</source> <translation>&Colonnes</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="145"/> <source>Per column properties</source> <translation>Propriétés par colonnes</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="146"/> <source>Common properties</source> <translation>Propritétés de colonnes</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="393"/> <source>Properties &<<</source> <translation>Propriétés &<<</translation> </message> @@ -6906,7 +5665,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TreeWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidget_taskmenu.cpp" line="63"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> @@ -6914,7 +5672,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetBox</name> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetbox_dnditem.cpp" line="115"/> <source>Warning: Widget creation failed in the widget box. This could be caused by invalid custom widget XML.</source> <translation>Avertissement : La création du widget a échoué dans la boîte de widget. Ceci peut être causé par un code XML invalide d'un widget personnalisé.</translation> </message> @@ -6922,42 +5679,34 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetBoxTreeWidget</name> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="248"/> <source>Scratchpad</source> <translation>bloc-notes</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="618"/> <source>Custom Widgets</source> <translation>Widgets personnalisés</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="881"/> <source>Expand all</source> <translation>Tout étendre</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="882"/> <source>Collapse all</source> <translation>Tout replier</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="885"/> <source>List View</source> <translation>Vue de liste</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="886"/> <source>Icon View</source> <translation>Vue en icônes</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="901"/> <source>Remove</source> <translation>Supprimer</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="903"/> <source>Edit name</source> <translation>Éditer le nom</translation> </message> @@ -6965,7 +5714,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetDataBase</name> <message> - <location filename="../tools/designer/src/lib/shared/widgetdatabase.cpp" line="403"/> <source>A custom widget plugin whose class name (%1) matches that of an existing class has been found.</source> <translation>Un plugin de widgets personnalisés dont un nom de classe (%1) correspond à une classe existante à été trouvé.</translation> </message> @@ -6973,7 +5721,6 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetEditorTool</name> <message> - <location filename="../tools/designer/src/components/formeditor/tool_widgeteditor.cpp" line="67"/> <source>Edit Widgets</source> <translation>Éditer les widgets</translation> </message> @@ -6981,34 +5728,28 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetFactory</name> <message> - <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="263"/> <source>The custom widget factory registered for widgets of class %1 returned 0.</source> <translation>La fabrique (factory) de widget personnalisé, enregistrée pour les widgets de classe %1, a retourné 0.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="307"/> <source>A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2.</source> <translation>Une discordance de nom de classe est apparue lors de la création d'un nouveau widget à l'aide de la fabrique de widget personnalisé enregistrée pour la classe %1. La fabrique a retourné un widget de classe %2.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="406"/> <source>%1 Widget</source> <translation>%1 Widget</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="496"/> <source>The current page of the container '%1' (%2) could not be determined while creating a layout.This indicates an inconsistency in the ui-file, probably a layout being constructed on a container widget.</source> <translation>Le conteneur '%1' de la page courante (%2) n'a pas pu être déterminé lors de la création du layout. Ceci indique une incohérence dans le fichier ui, probablement un layout étant construit sur un widget conteneur.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="549"/> <source>Attempt to add a layout to a widget '%1' (%2) which already has an unmanaged layout of type %3. This indicates an inconsistency in the ui-file.</source> <translation>Temptative d'ajout d'un layout sur le widget '%1' (%2) qui a déjà un layout non pris en charge de type %3. Ceci indique une inconsistance dans le fichier ui.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="760"/> <source>Cannot create style '%1'.</source> <translation>Impossible de créer le style '%1'.</translation> </message> @@ -7016,12 +5757,10 @@ Ceci indique une inconsistance dans le fichier ui.</translation> <context> <name>qdesigner_internal::WizardContainerWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="232"/> <source>Next</source> <translation>Suivant</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="233"/> <source>Back</source> <translation>Précédent</translation> </message> @@ -7029,7 +5768,6 @@ Ceci indique une inconsistance dans le fichier ui.</translation> <context> <name>qdesigner_internal::ZoomMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/zoomwidget.cpp" line="84"/> <source>%1 %</source> <extracomment>Zoom factor</extracomment> <translation>%1 %</translation> @@ -7038,7 +5776,6 @@ Ceci indique une inconsistance dans le fichier ui.</translation> <context> <name>qdesigner_internal::ZoomablePreviewDeviceSkin</name> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="420"/> <source>&Zoom</source> <translation>&Zoom</translation> </message> diff --git a/translations/linguist_fr.ts b/translations/linguist_fr.ts index 873adb7..5b98904 100644 --- a/translations/linguist_fr.ts +++ b/translations/linguist_fr.ts @@ -4,7 +4,6 @@ <context> <name></name> <message> - <location filename="../tools/linguist/linguist/phrasebookbox.cpp" line="+59"/> <source>(New Entry)</source> <translation type="unfinished"></translation> </message> @@ -12,7 +11,6 @@ <context> <name>AboutDialog</name> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+1357"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> @@ -20,89 +18,72 @@ <context> <name>BatchTranslationDialog</name> <message> - <location filename="../tools/linguist/linguist/batchtranslationdialog.cpp" line="+79"/> <source>Batch Translation of '%1' - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location line="+37"/> <source>Searching, please wait...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+0"/> <source>&Cancel</source> <translation type="unfinished"></translation> </message> <message> - <location line="+42"/> <source>Linguist batch translator</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location line="+1"/> <source>Batch translated %n entries</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> - <location filename="../tools/linguist/linguist/batchtranslation.ui"/> <source>Qt Linguist - Batch Translation</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Options</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Set translated entries to finished</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Retranslate entries with existing translation</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Translate also finished entries</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Phrase book preference</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Move up</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Move down</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>The batch translator will search through the selected phrase books in the order given above.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Run</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Cancel</source> <translation type="unfinished"></translation> </message> @@ -110,38 +91,31 @@ <context> <name>DataModel</name> <message> - <location filename="../tools/linguist/linguist/messagemodel.cpp" line="+214"/> <source><qt>Duplicate messages found in '%1':</source> <translation type="unfinished"></translation> </message> <message> - <location line="+4"/> <source><p>[more duplicates omitted]</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source><p>* Context: %1<br>* Source: %2</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source><br>* Comment: %3</source> <translation type="unfinished"></translation> </message> <message> - <location line="+70"/> <source>Linguist does not know the plural rules for '%1'. Will assume a single universal form.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+56"/> <source>Cannot create '%2': %1</source> <translation type="unfinished"></translation> </message> <message> - <location line="+56"/> <source>Universal Form</source> <translation type="unfinished"></translation> </message> @@ -149,37 +123,30 @@ Will assume a single universal form.</source> <context> <name>ErrorsView</name> <message> - <location filename="../tools/linguist/linguist/errorsview.cpp" line="+76"/> <source>Accelerator possibly superfluous in translation.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Accelerator possibly missing in translation.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Translation does not end with the same punctuation as the source text.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>A phrase book suggestion for '%1' was ignored.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Translation does not refer to the same place markers as in the source text.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Translation does not contain the necessary %n place marker.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Unknown error</source> <translation type="unfinished"></translation> </message> @@ -187,98 +154,79 @@ Will assume a single universal form.</source> <context> <name>FindDialog</name> <message> - <location filename="../tools/linguist/linguist/finddialog.cpp" line="+14"/> <source></source> <comment>Choose Edit|Find from the menu bar or press Ctrl+F to pop up the Find dialog</comment> <translation></translation> </message> <message> - <location filename="../tools/linguist/linguist/finddialog.ui"/> <source>This window allows you to search for some text in the translation source file.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Type in the text to search for.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Options</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Source texts are searched when checked.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Translations are searched when checked.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Comments and contexts are searched when checked.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Find</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Find what:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Source texts</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Translations</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Match case</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Comments</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ignore &accelerators</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to find the next occurrence of the text you typed in.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Find Next</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to close this window.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Cancel</source> <translation type="unfinished"></translation> </message> @@ -286,7 +234,6 @@ Will assume a single universal form.</source> <context> <name>LRelease</name> <message numerus="yes"> - <location filename="../tools/linguist/shared/qm.cpp" line="+715"/> <source> Generated %n translation(s) (%1 finished and %2 unfinished) </source> <translation type="unfinished"> @@ -294,7 +241,6 @@ Will assume a single universal form.</source> </translation> </message> <message numerus="yes"> - <location line="+4"/> <source> Ignored %n untranslated source text(s) </source> <translation type="unfinished"> @@ -305,1121 +251,868 @@ Will assume a single universal form.</source> <context> <name>MainWindow</name> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>MainWindow</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Phrases</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Close Phrase Book</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Edit Phrase Book</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Print Phrase Book</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>V&alidation</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&View</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Vie&ws</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Toolbars</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Help</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Translation</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&File</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Edit</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Open...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Open a Qt translation source file (TS file) for editing</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+O</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>E&xit</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Close this window and exit.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+Q</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+646"/> - <location line="+15"/> <source>&Save</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Save changes made to this Qt translation source file</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Previous unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Move to the previous unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Next unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Move to the next unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Move to previous item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Move to the previous item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Next item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Move to the next item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Mark item as done and move to the next unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Mark this item as done and move to the next unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Copy from source text</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle the validity check of accelerators.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle the validity check of accelerators, i.e. whether the number of ampersands in the source and translation text is the same. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle the validity check of ending punctuation.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle the validity check of ending punctuation. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle checking that phrase suggestions are used. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle the validity check of place markers.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle the validity check of place markers, i.e. whether %1, %2, ... are used consistently in the source text and translation text. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Open Read-O&nly...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Save All</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+S</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-14"/> - <location line="+11"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Save &As...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Save As...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Save changes made to this Qt translation source file into a new file.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+4"/> <source>&Release</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Create a Qt message file suitable for released applications from the current message file.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Print...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+P</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Undo</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Recently Opened &Files</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Save</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Print a list of all the translation units in the current translation source file.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Undo the last editing operation performed on the current translation.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+Z</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Redo</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Redo an undone editing operation performed on the translation.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+Y</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Cu&t</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Copy the selected translation text to the clipboard and deletes it.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+X</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Copy</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Copy the selected translation text to the clipboard.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+C</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Paste</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Paste the clipboard text into the translation.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+V</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Select &All</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Select the whole translation text.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+A</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Find...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Search for some text in the translation source file.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+F</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Find &Next</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Continue the search where it was left.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>F3</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Prev Unfinished</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Close</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Close All</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+W</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+K</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Next Unfinished</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>P&rev</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+Shift+K</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ne&xt</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Done and Next</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Copies the source text into the translation field.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+B</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Accelerators</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Ending Punctuation</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Phrase matches</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Toggle checking that phrase suggestions are used.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Place &Marker Matches</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&New Phrase Book...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Create a new phrase book.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+N</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Open Phrase Book...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Open a phrase book to assist translation.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+H</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Reset Sorting</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Sort the items back in the same order as in the message file.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Display guesses</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Set whether or not to display translation guesses.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Statistics</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Display translation statistics.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Manual</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>F1</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>About Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>About Qt</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Display information about the Qt toolkit by Trolltech.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&What's This?</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>What's This?</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Enter What's This? mode.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Shift+F1</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Search And Translate...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Replace the translation on all entries that matches the search source text.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+21"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>&Batch Translation...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Batch translate all entries using the information in the phrase books.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-34"/> - <location line="+10"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Release As...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the .ts file.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-2004"/> <source></source> <comment>This is the application's main window.</comment> <translation></translation> </message> <message> - <location line="+195"/> <source>Source text</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> - <location line="+25"/> <source>Index</source> <translation type="unfinished"></translation> </message> <message> - <location line="-2"/> - <location line="+61"/> <source>Context</source> <translation type="unfinished"></translation> </message> <message> - <location line="-60"/> <source>Items</source> <translation type="unfinished"></translation> </message> <message> - <location line="+77"/> <source>This panel lists the source contexts.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+15"/> <source>Strings</source> <translation type="unfinished"></translation> </message> <message> - <location line="+39"/> <source>Phrases and guesses</source> <translation type="unfinished"></translation> </message> <message> - <location line="+10"/> <source>Sources and Forms</source> <translation type="unfinished"></translation> </message> <message> - <location line="+15"/> <source>Warnings</source> <translation type="unfinished"></translation> </message> <message> - <location line="+59"/> <source> MOD </source> <comment>status bar: file(s) modified</comment> <translation type="unfinished"></translation> </message> <message> - <location line="+125"/> <source>Loading...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+32"/> - <location line="+22"/> <source>Loading File - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location line="-21"/> <source>The file '%1' does not seem to be related to the currently open file(s) '%2'. Close the open file(s) first?</source> <translation type="unfinished"></translation> </message> <message> - <location line="+22"/> <source>The file '%1' does not seem to be related to the file '%2' which is being loaded as well. Skip loading the first named file?</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location line="+61"/> <source>%n translation unit(s) loaded.</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> - <location line="+93"/> <source>Related files (%1);;</source> <translation type="unfinished"></translation> </message> <message> - <location line="+4"/> <source>Open Translation Files</source> <translation type="unfinished"></translation> </message> <message> - <location line="+10"/> - <location line="+31"/> <source>File saved.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+15"/> - <location line="+1164"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Release</source> <translation type="unfinished"></translation> </message> <message> - <location line="-1163"/> <source>Qt message files for released applications (*.qm) All files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> - <location line="+12"/> <source>File created.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+27"/> - <location line="+355"/> <source>Printing...</source> <translation type="unfinished"></translation> </message> <message> - <location line="-347"/> <source>Context: %1</source> <translation type="unfinished"></translation> </message> <message> - <location line="+32"/> <source>finished</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>unresolved</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>obsolete</source> <translation type="unfinished"></translation> </message> <message> - <location line="+15"/> - <location line="+307"/> <source>Printing... (page %1)</source> <translation type="unfinished"></translation> </message> <message> - <location line="-300"/> - <location line="+307"/> <source>Printing completed</source> <translation type="unfinished"></translation> </message> <message> - <location line="-305"/> - <location line="+307"/> <source>Printing aborted</source> <translation type="unfinished"></translation> </message> <message> - <location line="-232"/> <source>Search wrapped.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+17"/> - <location line="+278"/> - <location line="+40"/> - <location line="+24"/> - <location line="+22"/> - <location line="+516"/> - <location line="+1"/> - <location line="+274"/> - <location line="+40"/> - <location line="+10"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location line="-1204"/> - <location line="+102"/> <source>Cannot find the string '%1'.</source> <translation type="unfinished"></translation> </message> <message> - <location line="-82"/> <source>Search And Translate in '%1' - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location line="+34"/> - <location line="+23"/> - <location line="+24"/> <source>Translate - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location line="-46"/> <source>Translated %n entry(s)</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> - <location line="+23"/> <source>No more occurrences of '%1'. Start over?</source> <translation type="unfinished"></translation> </message> <message> - <location line="+30"/> <source>Create New Phrase Book</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Qt phrase books (*.qph) All files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+11"/> <source>Phrase book created.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+17"/> <source>Open Phrase Book</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Qt phrase books (*.qph);;All files (*)</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location line="+7"/> <source>%n phrase(s) loaded.</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> - <location line="+93"/> - <location line="+3"/> - <location line="+7"/> <source>Add to phrase book</source> <translation type="unfinished"></translation> </message> <message> - <location line="-9"/> <source>No appropriate phrasebook found.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Adding entry to phrasebook %1</source> <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> <source>Select phrase book to add to</source> <translation type="unfinished"></translation> </message> <message> - <location line="+29"/> <source>Unable to launch Qt Assistant (%1)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+17"/> <source>Version %1</source> <translation type="unfinished"></translation> </message> <message> - <location line="+6"/> <source><center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>%2</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.</p></source> <translation type="unfinished"></translation> </message> <message> - <location line="+41"/> <source>Do you want to save the modified files?</source> <translation type="unfinished"></translation> </message> <message> - <location line="+22"/> <source>Do you want to save '%1'?</source> <translation type="unfinished"></translation> </message> <message> - <location line="+43"/> <source>Qt Linguist[*]</source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>%1[*] - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location line="+267"/> - <location line="+12"/> <source>No untranslated translation units left.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+176"/> <source>&Window</source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>Minimize</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Ctrl+M</source> <translation type="unfinished"></translation> </message> <message> - <location line="+12"/> <source>Display the manual for %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Display information about %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+70"/> <source>&Save '%1'</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Save '%1' &As...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Release '%1'</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Release '%1' As...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>&Close '%1'</source> <translation type="unfinished"></translation> </message> <message> - <location line="+6"/> - <location line="+13"/> <source>&Close</source> <translation type="unfinished"></translation> </message> <message> - <location line="-10"/> <source>Save All</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>&Release All</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Close All</source> <translation type="unfinished"></translation> </message> <message> - <location line="+23"/> <source>Translation File &Settings for '%1'...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>&Batch Translation of '%1'...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Search And &Translate in '%1'...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+4"/> <source>Search And &Translate...</source> <translation type="unfinished"></translation> </message> <message> - <location line="+51"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>File</source> <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Edit</source> <translation type="unfinished"></translation> </message> <message> - <location line="+6"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Translation</source> <translation type="unfinished"></translation> </message> <message> - <location line="+6"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Validation</source> <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Help</source> <translation type="unfinished"></translation> </message> <message> - <location line="+84"/> <source>Cannot read from phrase book '%1'.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+15"/> <source>Close this phrase book.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+4"/> <source>Enables you to add, modify, or delete entries in this phrase book.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+5"/> <source>Print the entries in this phrase book.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+16"/> <source>Cannot create phrase book '%1'.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+10"/> <source>Do you want to save phrase book '%1'?</source> <translation type="unfinished"></translation> </message> <message> - <location line="+314"/> <source>All</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Open/Refresh Form &Preview</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Form Preview Tool</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>F5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-527"/> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Translation File &Settings...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>&Add to Phrase Book</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+T</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+J</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Ctrl+Shift+J</source> <translation type="unfinished"></translation> </message> @@ -1427,92 +1120,74 @@ All files (*)</source> <context> <name>MessageEditor</name> <message> - <location filename="../tools/linguist/linguist/messageeditor.cpp" line="+72"/> <source>German</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Japanese</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>French</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Polish</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Chinese</source> <translation type="unfinished"></translation> </message> <message> - <location line="+50"/> <source>This whole panel allows you to view and edit the translation of some source text.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+25"/> <source>Source text</source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>This area shows the source text.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Source text (Plural)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>This area shows the plural form of the source text.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Developer comments</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>This area shows a comment that may guide you, and the context in which the text occurs.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+59"/> <source>Here you can enter comments for your own use. They have no effect on the translated applications.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+205"/> <source>%1 translation (%2)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+19"/> <source>This is where you can enter or modify the translation of the above source text.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+5"/> <source>%1 translation</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>%1 translator comments</source> <translation type="unfinished"></translation> </message> <message> - <location line="+138"/> <source>'%1' Line: %2</source> <translation type="unfinished"></translation> @@ -1521,22 +1196,18 @@ Line: %2</source> <context> <name>MessageModel</name> <message> - <location filename="../tools/linguist/linguist/messagemodel.cpp" line="+832"/> <source>Completion status for %1</source> <translation type="unfinished"></translation> </message> <message> - <location line="+15"/> <source><file header></source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source><context comment></source> <translation type="unfinished"></translation> </message> <message> - <location line="+71"/> <source><unnamed context></source> <translation type="unfinished"></translation> </message> @@ -1544,7 +1215,6 @@ Line: %2</source> <context> <name>MsgEdit</name> <message> - <location filename="../tools/linguist/linguist/messageeditor.cpp" line="-577"/> <source></source> <comment>This is the right panel of the main window.</comment> <translation></translation> @@ -1553,108 +1223,87 @@ Line: %2</source> <context> <name>PhraseBookBox</name> <message> - <location filename="../tools/linguist/linguist/phrasebookbox.cpp" line="-45"/> <source></source> <comment>Go to Phrase > Edit Phrase Book... The dialog that pops up is a PhraseBookBox.</comment> <translation></translation> </message> <message> - <location line="+53"/> <source>%1[*] - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location line="+90"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> <source>Cannot save phrase book '%1'.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/phrasebookbox.ui"/> <source>Edit Phrase Book</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>This window allows you to add, modify, or delete entries in a phrase book.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Translation:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>This is the phrase in the target language corresponding to the source phrase.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>S&ource phrase:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>This is a definition for the source phrase.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>This is the phrase in the source language.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Definition:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to add the phrase to the phrase book.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&New Entry</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to remove the entry from the phrase book.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Remove Entry</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Settin&gs...</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to save the changes made.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Save</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to close this window.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -1662,17 +1311,14 @@ Line: %2</source> <context> <name>PhraseModel</name> <message> - <location filename="../tools/linguist/linguist/phrasemodel.cpp" line="+117"/> <source>Source phrase</source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>Translation</source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>Definition</source> <translation type="unfinished"></translation> </message> @@ -1680,22 +1326,18 @@ Line: %2</source> <context> <name>PhraseView</name> <message> - <location filename="../tools/linguist/linguist/phraseview.cpp" line="+121"/> <source>Insert</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> <source>Edit</source> <translation type="unfinished"></translation> </message> <message> - <location line="+113"/> <source>Guess (%1)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>Guess</source> <translation type="unfinished"></translation> </message> @@ -1703,83 +1345,62 @@ Line: %2</source> <context> <name>QObject</name> <message> - <location filename="../tools/linguist/shared/qm.cpp" line="+12"/> <source>Compiled Qt translations</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-1279"/> <source>Translation files (%1);;</source> <translation type="unfinished"></translation> </message> <message> - <location line="+5"/> <source>All files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/messagemodel.cpp" line="-1118"/> - <location line="+18"/> - <location line="+67"/> - <location line="+39"/> - <location line="+17"/> - <location line="+15"/> - <location filename="../tools/linguist/linguist/phrase.cpp" line="+196"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/cpp.cpp" line="+1072"/> <source>C++ source files</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/java.cpp" line="+646"/> <source>Java source files</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/po.cpp" line="+651"/> <source>GNU Gettext localization files</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/qscript.cpp" line="+2399"/> <source>Qt Script source files</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/ts.cpp" line="+752"/> <source>Qt translation sources (format 1.1)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+8"/> <source>Qt translation sources (format 2.0)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+9"/> <source>Qt translation sources (latest format)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/ui.cpp" line="+213"/> <source>Qt Designer form files</source> <translation type="unfinished"></translation> </message> <message> - <location line="+9"/> <source>Qt Jambi form files</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/xliff.cpp" line="+817"/> <source>XLIFF localization files</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/shared/qph.cpp" line="+192"/> <source>Qt Linguist 'Phrase Book'</source> <translation type="unfinished"></translation> </message> @@ -1787,17 +1408,14 @@ Line: %2</source> <context> <name>SourceCodeView</name> <message> - <location filename="../tools/linguist/linguist/sourcecodeview.cpp" line="+70"/> <source><i>Source code not available</i></source> <translation type="unfinished"></translation> </message> <message> - <location line="+33"/> <source><i>File %1 not available</i></source> <translation type="unfinished"></translation> </message> <message> - <location line="+5"/> <source><i>File %1 not readable</i></source> <translation type="unfinished"></translation> </message> @@ -1805,42 +1423,34 @@ Line: %2</source> <context> <name>Statistics</name> <message> - <location filename="../tools/linguist/linguist/statistics.ui"/> <source>Statistics</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Translation</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Source</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>0</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Words:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Characters:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Characters (with spaces):</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -1848,7 +1458,6 @@ Line: %2</source> <context> <name>TrWindow</name> <message> - <location filename="../tools/linguist/linguist/trwindow.cpp" line="+14"/> <source></source> <comment>This is the application's main window.</comment> <translation></translation> @@ -1857,72 +1466,58 @@ Line: %2</source> <context> <name>TranslateDialog</name> <message> - <location filename="../tools/linguist/linguist/translatedialog.ui"/> <source>This window allows you to search for some text in the translation source file.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Type in the text to search for.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Find &source text:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>&Translate to:</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Search options</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Match &case</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Mark new translation as &finished</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to find the next occurrence of the text you typed in.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Find Next</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Translate</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Translate All</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Click here to close this window.</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Cancel</source> <translation type="unfinished"></translation> </message> @@ -1930,33 +1525,26 @@ Line: %2</source> <context> <name>TranslationSettingsDialog</name> <message> - <location filename="../tools/linguist/linguist/translationsettingsdialog.cpp" line="+68"/> <source>Any Country</source> <translation type="unfinished"></translation> </message> <message> - <location line="+11"/> - <location line="+8"/> <source>Settings for '%1' - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../tools/linguist/linguist/translationsettings.ui"/> <source>Source language</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Language</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Country/Region</source> <translation type="unfinished"></translation> </message> <message> - <location/> <source>Target language</source> <translation type="unfinished"></translation> </message> diff --git a/translations/qt_fr.ts b/translations/qt_fr.ts index 77feab6..2a4135b 100644 --- a/translations/qt_fr.ts +++ b/translations/qt_fr.ts @@ -2,59 +2,18 @@ <!DOCTYPE TS> <TS version="2.0" language="fr"> <context> - <name>MAC_APPLICATION_MENU</name> - <message> - <location filename="../src/gui/kernel/qapplication.cpp" line="+2316"/> - <source>Services</source> - <translation>Services</translation> - </message> - <message> - <location line="+1"/> - <source>Hide %1</source> - <translation>Masquer %1</translation> - </message> - <message> - <location line="+1"/> - <source>Hide Others</source> - <translation>Masquer les autres</translation> - </message> - <message> - <location line="+1"/> - <source>Show All</source> - <translation>Tout afficher</translation> - </message> - <message> - <location line="+1"/> - <source>Preferences...</source> - <translation>Préférences…</translation> - </message> - <message> - <location line="+1"/> - <source>Quit %1</source> - <translation>Quitter %1</translation> - </message> - <message> - <location line="+1"/> - <source>About %1</source> - <translation>À propos de %1</translation> - </message> -</context> -<context> <name>AudioOutput</name> <message> - <location filename="../src/3rdparty/phonon/phonon/audiooutput.cpp" line="+375"/> <source><html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html></source> - <translation><html>Le périphérique audio <b>%1</b> ne fonctionne pas.<br/>Utilisation de <b>%2</b>.</html></translation> + <translation type="obsolete"><html>Le périphérique audio <b>%1</b> ne fonctionne pas.<br/>Utilisation de <b>%2</b>.</html></translation> </message> <message> - <location line="+13"/> <source><html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html></source> - <translation><html>Utilisation de <b>%1</b><br/>qui vient de devenir disponible et a une plus grande priorité.</html></translation> + <translation type="obsolete"><html>Utilisation de <b>%1</b><br/>qui vient de devenir disponible et a une plus grande priorité.</html></translation> </message> <message> - <location line="+3"/> <source>Revert back to device '%1'</source> - <translation>Utilisation de '%1'</translation> + <translation type="obsolete">Utilisation de '%1'</translation> </message> </context> <context> @@ -107,6 +66,48 @@ </message> </context> <context> + <name>FakeReply</name> + <message> + <source>Fake error !</source> + <translation>Fausse erreur!</translation> + </message> + <message> + <source>Invalid URL</source> + <translation>URL non valide</translation> + </message> +</context> +<context> + <name>MAC_APPLICATION_MENU</name> + <message> + <source>Services</source> + <translation>Services</translation> + </message> + <message> + <source>Hide %1</source> + <translation>Masquer %1</translation> + </message> + <message> + <source>Hide Others</source> + <translation>Masquer les autres</translation> + </message> + <message> + <source>Show All</source> + <translation>Tout afficher</translation> + </message> + <message> + <source>Preferences...</source> + <translation>Préférences…</translation> + </message> + <message> + <source>Quit %1</source> + <translation>Quitter %1</translation> + </message> + <message> + <source>About %1</source> + <translation>À propos de %1</translation> + </message> +</context> +<context> <name>MainWindow</name> <message> <source>Print</source> @@ -200,6 +201,25 @@ so on.</source> </message> </context> <context> + <name>Phonon::AudioOutput</name> + <message> + <source><html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html></source> + <translation><html>Le périphérique audio <b>%1</b> ne fonctionne pas.<br/>Repli sur <b>%2</b>.</html></translation> + </message> + <message> + <source><html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html></source> + <translation><html>Basculement vers le périphérique audio <b>%1</b><br/>qui vient juste d'être disponible et dont le niveau de préférence est plus élevé.</html></translation> + </message> + <message> + <source>Revert back to device '%1'</source> + <translation>Revenir au périphérique '%1'</translation> + </message> + <message> + <source><html>Switching to the audio playback device <b>%1</b><br/>which has higher preference or is specifically configured for this stream.</html></source> + <translation><html>Basculement vers le périphérique audio <b>%1</b><br/>dont le niveau de préférence est plus élevé ou qui est spécifiquement configuré pour ce flux.</html></translation> + </message> +</context> +<context> <name>Phonon::Gstreamer::Backend</name> <message> <source>Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. @@ -217,12 +237,11 @@ Le support audio et vidéo est désactivé</translation> <context> <name>Phonon::Gstreamer::MediaObject</name> <message> - <location filename="../src/3rdparty/phonon/gstreamer/mediaobject.cpp" line="+90"/> <source>Cannot start playback. Check your Gstreamer installation and make sure you have libgstreamer-plugins-base installed.</source> - <translation>Impossible de démarrer la lecture. Verifiez votre installation de Gstreamer et assurez-vous d'avoir installé libgstreamer-plugins-base.</translation> + <translation type="obsolete">Impossible de démarrer la lecture. Verifiez votre installation de Gstreamer et assurez-vous d'avoir installé libgstreamer-plugins-base.</translation> </message> <message> <source>Unknown media format: %1</source> @@ -257,6 +276,15 @@ have libgstreamer-plugins-base installed.</source> <translation type="obsolete">Impossible de charger la source</translation> </message> <message> + <source>Missing codec helper script assistant.</source> + <translatorcomment>???</translatorcomment> + <translation>Assistant de script d'aide au codec manquant.</translation> + </message> + <message> + <source>Plugin codec installation failed for codec: %0</source> + <translation>Échec de l'installation du plugin pour le codec : %0</translation> + </message> + <message> <source>A required codec is missing. You need to install the following codec(s) to play this content: %0</source> <translation>Un codec requis est manquant. Vous devez installer le codec suivant pour jouer le contenu: %0</translation> </message> @@ -292,9278 +320,10613 @@ d'avoir installé libgstreamer-plugins-base.</translation> </message> </context> <context> - <name>Phonon::VolumeSlider</name> + <name>Phonon::MMF</name> <message> - <source>Volume: %1%</source> - <translation>Volume: %1%</translation> + <source>Audio Output</source> + <translation>Sortie audio</translation> </message> <message> - <source>Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%</source> - <translation>Utilisez le slider pour ajuster le volume. La position la plus à gauche est 0%, la plus à droite est %1%</translation> + <source>The audio output device</source> + <translation>Périphérique audio de sortie</translation> </message> <message> - <source>Muted</source> - <translation>Son coupé</translation> + <source>No error</source> + <translation>Aucune erreur</translation> </message> -</context> -<context> - <name>Q3Accel</name> <message> - <source>%1, %2 not defined</source> - <translation>La séquence %1, %2 n'est pas définie</translation> + <source>Not found</source> + <translation>Introuvable</translation> </message> <message> - <source>Ambiguous %1 not handled</source> - <translation>Séquence ambiguë %1 non traitée</translation> + <source>Out of memory</source> + <translation>Mémoire insuffisante</translation> </message> -</context> -<context> - <name>Q3DataTable</name> <message> - <source>True</source> - <translation>Vrai</translation> + <source>Not supported</source> + <translation>Non supporté</translation> </message> <message> - <source>False</source> - <translation>Faux</translation> + <source>Overflow</source> + <translation>Dépassement</translation> </message> <message> - <source>Insert</source> - <translation>Insérer</translation> + <source>Underflow</source> + <translation>Soupassement</translation> </message> <message> - <source>Update</source> - <translation>Actualiser</translation> + <source>Already exists</source> + <translation>Existe déjà</translation> </message> <message> - <source>Delete</source> - <translation>Supprimer</translation> + <source>Path not found</source> + <translation>Chemin introuvable</translation> </message> -</context> -<context> - <name>Q3FileDialog</name> <message> - <source>Copy or Move a File</source> - <translation>Copie ou déplace un fichier</translation> + <source>In use</source> + <translation>Utilisé</translation> </message> <message> - <source>Read: %1</source> - <translation>Lecture : %1</translation> + <source>Not ready</source> + <translation>Pas prêt</translation> </message> <message> - <source>Write: %1</source> - <translation>Écriture : %1</translation> + <source>Access denied</source> + <translation>Accès refusé</translation> </message> <message> - <source>Cancel</source> - <translation>Annuler</translation> + <source>Could not connect</source> + <translation>Connexion impossible</translation> </message> <message> - <source>All Files (*)</source> - <translation>Tous les fichiers (*)</translation> + <source>Disconnected</source> + <translation>Déconnecté</translation> </message> <message> - <source>Name</source> - <translation>Nom</translation> + <source>Permission denied</source> + <translation>Autorisation refusée</translation> </message> <message> - <source>Size</source> - <translation>Taille</translation> + <source>Insufficient bandwidth</source> + <translation>Bande passante insuffisante</translation> </message> <message> - <source>Type</source> - <translation>Type</translation> + <source>Network unavailable</source> + <translation>Réseau non disponible</translation> </message> <message> - <source>Date</source> - <translation>Date</translation> + <source>Network communication error</source> + <translation>Erreur de communication réseau</translation> </message> <message> - <source>Attributes</source> - <translation>Attributs</translation> + <source>Streaming not supported</source> + <translation>Streaming non supporté</translation> </message> <message> - <source>&OK</source> - <translation>&OK</translation> + <source>Server alert</source> + <translation>Alerte serveur</translation> </message> <message> - <source>Look &in:</source> - <translation>Chercher &dans :</translation> + <source>Invalid protocol</source> + <translation>Protocole non valide</translation> </message> <message> - <source>File &name:</source> - <translation>&Nom de fichier :</translation> + <source>Invalid URL</source> + <translation>URL non valide</translation> </message> <message> - <source>File &type:</source> - <translation>&Type de fichier :</translation> + <source>Multicast error</source> + <translation>Erreur multicast</translation> </message> <message> - <source>Back</source> - <translation>Précédent (historique)</translation> + <source>Proxy server error</source> + <translation>Erreur du serveur proxy</translation> </message> <message> - <source>One directory up</source> - <translation>Aller au dossier parent</translation> + <source>Proxy server not supported</source> + <translation>Serveur proxy non supporté</translation> </message> <message> - <source>Create New Folder</source> - <translation>Créer un nouveau dossier</translation> + <source>Audio output error</source> + <translation>Erreur de sortie audio</translation> </message> <message> - <source>List View</source> - <translation>Affichage liste</translation> + <source>Video output error</source> + <translation>Erreur de sortie vidéo</translation> </message> <message> - <source>Detail View</source> - <translation>Affichage détaillé</translation> + <source>Decoder error</source> + <translation>Erreur du décodeur</translation> </message> <message> - <source>Preview File Info</source> - <translation>Informations du fichier prévisualisé</translation> + <source>Audio or video components could not be played</source> + <translation>Les composants audio ou vidéo n'ont pas pu être lus</translation> </message> <message> - <source>Preview File Contents</source> - <translation>Contenu du fichier prévisualisé</translation> + <source>DRM error</source> + <translation>Erreur GDN</translation> </message> <message> - <source>Read-write</source> - <translation>Lecture-écriture</translation> + <source>Unknown error (%1)</source> + <translation>Erreur inconnue (%1)</translation> </message> +</context> +<context> + <name>Phonon::MMF::AbstractMediaPlayer</name> <message> - <source>Read-only</source> - <translation>Lecture seule</translation> + <source>Not ready to play</source> + <translation>Pas prêt pour lecture</translation> </message> <message> - <source>Write-only</source> - <translation>Écriture seule</translation> + <source>Error opening file</source> + <translation>Erreur lors de l'ouverture du fichier</translation> </message> <message> - <source>Inaccessible</source> - <translation>Inaccessible</translation> + <source>Error opening URL</source> + <translation>Erreur lors de l'ouverture de l'URL</translation> </message> <message> - <source>Symlink to File</source> - <translation>Lien symbolique vers un fichier</translation> + <source>Setting volume failed</source> + <translation>Le réglage du volume a échoué</translation> </message> <message> - <source>Symlink to Directory</source> - <translation>Lien symbolique vers un dossier</translation> + <source>Loading clip failed</source> + <translation>Échec de l'ouverture du clip</translation> </message> <message> - <source>Symlink to Special</source> - <translation>Lien symbolique vers un fichier spécial</translation> + <source>Playback complete</source> + <translation>Lecture terminée</translation> </message> +</context> +<context> + <name>Phonon::MMF::AbstractVideoPlayer</name> <message> - <source>File</source> - <translation>Fichier</translation> + <source>Pause failed</source> + <translation>La mise en pause a échoué</translation> </message> <message> - <source>Dir</source> - <translation>Dossier</translation> + <source>Seek failed</source> + <translation>La recherche a échoué</translation> </message> <message> - <source>Special</source> - <translation>Fichier spécial</translation> + <source>Getting position failed</source> + <translation>L'obtention de la position a échoué</translation> </message> <message> - <source>Open</source> - <translation>Ouvrir</translation> + <source>Opening clip failed</source> + <translation>L'ouverture du clip a échoué</translation> </message> +</context> +<context> + <name>Phonon::MMF::AudioEqualizer</name> <message> - <source>Save As</source> - <translation>Enregistrer sous</translation> + <source>%1 Hz</source> + <translation>%1 Hz</translation> </message> +</context> +<context> + <name>Phonon::MMF::AudioPlayer</name> <message> - <source>&Open</source> - <translation>&Ouvrir</translation> + <source>Getting position failed</source> + <translation>L'obtention de la position a échoué</translation> </message> <message> - <source>&Save</source> - <translation>&Enregistrer</translation> + <source>Opening clip failed</source> + <translation type="obsolete">L'ouverture du clip a échoué</translation> </message> +</context> +<context> + <name>Phonon::MMF::DsaVideoPlayer</name> <message> - <source>&Rename</source> - <translation>&Renommer</translation> + <source>Video display error</source> + <translation>Erreur de l'affichage vidéo</translation> </message> +</context> +<context> + <name>Phonon::MMF::EffectFactory</name> <message> - <source>&Delete</source> - <translation>Suppri&mer</translation> + <source>Enabled</source> + <translation>Activé</translation> </message> +</context> +<context> + <name>Phonon::MMF::EnvironmentalReverb</name> <message> - <source>R&eload</source> - <translation>R&echarger</translation> + <source>Decay HF ratio (%)</source> + <extracomment>DecayHFRatio: Ratio of high-frequency decay time to the value specified by DecayTime.</extracomment> + <translation>Ratio HF du déclin (%)</translation> </message> <message> - <source>Sort by &Name</source> - <translation>Trier par &nom</translation> + <source>Decay time (ms)</source> + <extracomment>DecayTime: Time over which reverberation is diminished.</extracomment> + <translation>Temps de déclin (ms)</translation> </message> <message> - <source>Sort by &Size</source> - <translation>Trier par ta&ille</translation> + <source>Density (%)</source> + <extracomment>Density Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Diffusion value.</extracomment> + <translation>Densité (%)</translation> </message> <message> - <source>Sort by &Date</source> - <translation>Trier par &date</translation> + <source>Diffusion (%)</source> + <extracomment>Diffusion: Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Density value.</extracomment> + <translation>Diffusion (%)</translation> </message> <message> - <source>&Unsorted</source> - <translation>&Non trié</translation> + <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> + <translation>Délai réflexions (ms)</translation> </message> <message> - <source>Sort</source> - <translation>Tri</translation> + <source>Reflections level (mB)</source> + <extracomment>ReflectionsLevel: Amplitude of reflections. This value is corrected by the RoomLevel to give the final reflection amplitude.</extracomment> + <translation>Niveau réflexions (mB)</translation> </message> <message> - <source>Show &hidden files</source> - <translation>Afficher les fic&hiers cachés</translation> + <source>Reverb delay (ms)</source> + <extracomment>ReverbDelay: Amount of time between arrival of the first reflection and start of the late reverberation.</extracomment> + <translation>Délai de réverbération (ms)</translation> </message> <message> - <source>the file</source> - <translation>le fichier</translation> + <source>Reverb level (mB)</source> + <extracomment>ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.</extracomment> + <translation>Niveau de réverbération (mB)</translation> </message> <message> - <source>the directory</source> - <translation>le dossier</translation> + <source>Room HF level</source> + <extracomment>RoomHFLevel: Amplitude of low-pass filter used to attenuate the high frequency component of reflected sound.</extracomment> + <translation>Niveau HF pièce</translation> </message> <message> - <source>the symlink</source> - <translation>le lien symbolique</translation> + <source>Room level (mB)</source> + <extracomment>RoomLevel: Master volume control for all reflected sound.</extracomment> + <translation>Niveau pièce (mB)</translation> </message> +</context> +<context> + <name>Phonon::MMF::MediaObject</name> <message> - <source>Delete %1</source> - <translation>Supprimer %1</translation> + <source>Error opening source: type not supported</source> + <translation>Erreur lors de l'ouverture de la source: type non supporté</translation> </message> <message> - <source><qt>Are you sure you wish to delete %1 "%2"?</qt></source> - <translation><qt>Voulez-vous vraiment supprimer %1 "%2" ?</qt></translation> + <source>Error opening source: media type could not be determined</source> + <translation>Erreur lors de l'ouverture de la source: type de média non déterminé</translation> </message> +</context> +<context> + <name>Phonon::MMF::StereoWidening</name> <message> - <source>&Yes</source> - <translation>&Oui</translation> + <source>Level (%)</source> + <translation>Niveau (%)</translation> </message> +</context> +<context> + <name>Phonon::MMF::SurfaceVideoPlayer</name> <message> - <source>&No</source> - <translation>&Non</translation> + <source>Video display error</source> + <translation>Erreur de l'affichage vidéo</translation> </message> +</context> +<context> + <name>Phonon::MMF::VideoPlayer</name> <message> - <source>New Folder 1</source> - <translation>Nouveau dossier 1</translation> + <source>Pause failed</source> + <translation type="obsolete">La mise en pause a échoué</translation> </message> <message> - <source>New Folder</source> - <translation>Nouveau dossier</translation> + <source>Seek failed</source> + <translation type="obsolete">La recherche a échoué</translation> </message> <message> - <source>New Folder %1</source> - <translation>Nouveau dossier %1</translation> + <source>Getting position failed</source> + <translation type="obsolete">L'obtention de la position a échoué</translation> </message> <message> - <source>Find Directory</source> - <translation>Chercher dans le dossier</translation> + <source>Opening clip failed</source> + <translation type="obsolete">L'ouverture du clip a échoué</translation> </message> <message> - <source>Directories</source> - <translation>Dossiers</translation> + <source>Buffering clip failed</source> + <translation type="obsolete">La mise en mémoire tampon du clip a échoué</translation> </message> <message> - <source>Directory:</source> - <translation>Dossier :</translation> + <source>Video display error</source> + <translation type="obsolete">Erreur de l'affichage vidéo</translation> </message> +</context> +<context> + <name>Phonon::VolumeSlider</name> <message> - <source>Error</source> - <translation>Erreur</translation> + <source>Volume: %1%</source> + <translation>Volume: %1%</translation> </message> <message> - <source>%1 -File not found. -Check path and filename.</source> - <translation>%1 -Impossible de trouver le fichier. -Vérifier le chemin et le nom du fichier.</translation> + <source>Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%</source> + <translation>Utilisez le slider pour ajuster le volume. La position la plus à gauche est 0%, la plus à droite est %1%</translation> </message> <message> - <source>All Files (*.*)</source> - <translation>Tous les fichiers (*.*)</translation> + <source>Muted</source> + <translation>Son coupé</translation> </message> +</context> +<context> + <name>Q3Accel</name> <message> - <source>Open </source> - <translation>Ouvrir</translation> + <source>%1, %2 not defined</source> + <translation>La séquence %1, %2 n'est pas définie</translation> </message> <message> - <source>Select a Directory</source> - <translation>Sélectionner un dossier</translation> + <source>Ambiguous %1 not handled</source> + <translation>Séquence ambiguë %1 non traitée</translation> </message> </context> <context> - <name>Q3LocalFs</name> - <message> - <source>Could not read directory -%1</source> - <translation>Impossible de lire le dossier -%1</translation> - </message> + <name>Q3DataTable</name> <message> - <source>Could not create directory -%1</source> - <translation>Impossible de créer le dossier -%1</translation> + <source>True</source> + <translation>Vrai</translation> </message> <message> - <source>Could not remove file or directory -%1</source> - <translation>Impossible de supprimer le fichier ou dossier -%1</translation> + <source>False</source> + <translation>Faux</translation> </message> <message> - <source>Could not rename -%1 -to -%2</source> - <translation>Impossible de renommer -%1 -en -%2</translation> + <source>Insert</source> + <translation>Insérer</translation> </message> <message> - <source>Could not open -%1</source> - <translation>Impossible d'ouvrir -%1</translation> + <source>Update</source> + <translation>Actualiser</translation> </message> <message> - <source>Could not write -%1</source> - <translation>Impossible d'écrire -%1</translation> + <source>Delete</source> + <translation>Supprimer</translation> </message> </context> <context> - <name>Q3MainWindow</name> + <name>Q3FileDialog</name> <message> - <source>Line up</source> - <translation>Aligner</translation> + <source>Copy or Move a File</source> + <translation>Copie ou déplace un fichier</translation> </message> <message> - <source>Customize...</source> - <translation>Personnaliser...</translation> + <source>Read: %1</source> + <translation>Lecture : %1</translation> </message> -</context> -<context> - <name>Q3NetworkProtocol</name> <message> - <source>Operation stopped by the user</source> - <translation>Opération interrompue par l'utilisateur</translation> + <source>Write: %1</source> + <translation>Écriture : %1</translation> </message> -</context> -<context> - <name>Q3ProgressDialog</name> <message> <source>Cancel</source> <translation>Annuler</translation> </message> -</context> -<context> - <name>Q3TabDialog</name> <message> - <source>OK</source> - <translation>OK</translation> + <source>All Files (*)</source> + <translation>Tous les fichiers (*)</translation> </message> <message> - <source>Apply</source> - <translation>Appliquer</translation> + <source>Name</source> + <translation>Nom</translation> </message> <message> - <source>Help</source> - <translation>Aide</translation> + <source>Size</source> + <translation>Taille</translation> </message> <message> - <source>Defaults</source> - <translation>Par défaut</translation> + <source>Type</source> + <translation>Type</translation> </message> <message> - <source>Cancel</source> - <translation>Annuler</translation> + <source>Date</source> + <translation>Date</translation> </message> -</context> -<context> - <name>Q3TextEdit</name> <message> - <source>&Undo</source> - <translation>&Annuler</translation> + <source>Attributes</source> + <translation>Attributs</translation> </message> <message> - <source>&Redo</source> - <translation>&Rétablir</translation> + <source>&OK</source> + <translation>&OK</translation> </message> <message> - <source>Cu&t</source> - <translation>Co&uper</translation> + <source>Look &in:</source> + <translation>Chercher &dans :</translation> </message> <message> - <source>&Copy</source> - <translation>Cop&ier</translation> + <source>File &name:</source> + <translation>&Nom de fichier :</translation> </message> <message> - <source>&Paste</source> - <translation>Co&ller</translation> + <source>File &type:</source> + <translation>&Type de fichier :</translation> </message> <message> - <source>Clear</source> - <translation>Effacer</translation> + <source>Back</source> + <translation>Précédent (historique)</translation> </message> <message> - <source>Select All</source> - <translation>Tout sélectionner</translation> + <source>One directory up</source> + <translation>Aller au dossier parent</translation> </message> -</context> -<context> - <name>Q3TitleBar</name> <message> - <source>System</source> - <translation>Système</translation> + <source>Create New Folder</source> + <translation>Créer un nouveau dossier</translation> </message> <message> - <source>Restore up</source> - <translation>Restaurer en haut</translation> + <source>List View</source> + <translation>Affichage liste</translation> </message> <message> - <source>Minimize</source> - <translation>Réduire</translation> + <source>Detail View</source> + <translation>Affichage détaillé</translation> </message> <message> - <source>Restore down</source> - <translation>Restaurer en bas</translation> + <source>Preview File Info</source> + <translation>Informations du fichier prévisualisé</translation> </message> <message> - <source>Maximize</source> - <translation>Maximiser</translation> + <source>Preview File Contents</source> + <translation>Contenu du fichier prévisualisé</translation> </message> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Read-write</source> + <translation>Lecture-écriture</translation> </message> <message> - <source>Contains commands to manipulate the window</source> - <translation>Contient des commandes pour manipuler la fenêtre</translation> + <source>Read-only</source> + <translation>Lecture seule</translation> </message> <message> - <location filename="../src/plugins/accessible/compat/q3complexwidgets.cpp" line="+277"/> - <source>Puts a minimized back to normal</source> - <translation>Rend à une fenêtre minimisée son aspect normal</translation> + <source>Write-only</source> + <translation>Écriture seule</translation> </message> <message> - <source>Moves the window out of the way</source> - <translation>Déplace la fenêtre à l'écart</translation> + <source>Inaccessible</source> + <translation>Inaccessible</translation> </message> <message> - <source>Puts a maximized window back to normal</source> - <translation>Rend à une fenêtre minimisée son aspect normal</translation> + <source>Symlink to File</source> + <translation>Lien symbolique vers un fichier</translation> </message> <message> - <source>Makes the window full screen</source> - <translation>Affiche la fenêtre en plein écran</translation> + <source>Symlink to Directory</source> + <translation>Lien symbolique vers un dossier</translation> </message> <message> - <source>Closes the window</source> - <translation>Ferme la fenêtre</translation> + <source>Symlink to Special</source> + <translation>Lien symbolique vers un fichier spécial</translation> </message> <message> - <source>Displays the name of the window and contains controls to manipulate it</source> - <translation>Affiche le nom de la fenêtre et contient des contrôles pour la manipuler</translation> + <source>File</source> + <translation>Fichier</translation> </message> <message> - <source>Puts a minimized window back to normal</source> - <translation>Rend à une fenêtre minimisée son aspect normal</translation> + <source>Dir</source> + <translation>Dossier</translation> </message> -</context> -<context> - <name>Q3ToolBar</name> <message> - <source>More...</source> - <translation>Reste...</translation> + <source>Special</source> + <translation>Fichier spécial</translation> </message> -</context> -<context> - <name>Q3UrlOperator</name> <message> - <source>The protocol `%1' is not supported</source> - <translation>Le protocole '%1' n'est pas géré</translation> + <source>Open</source> + <translation>Ouvrir</translation> </message> <message> - <source>The protocol `%1' does not support listing directories</source> - <translation>Le protocole `%1' ne permet pas de lister les fichiers d'un dossier</translation> + <source>Save As</source> + <translation>Enregistrer sous</translation> </message> <message> - <source>The protocol `%1' does not support creating new directories</source> - <translation>Le protocole `%1' ne permet pas de créer de nouveaux dossiers</translation> + <source>&Open</source> + <translation>&Ouvrir</translation> </message> <message> - <source>The protocol `%1' does not support removing files or directories</source> - <translation>Le protocole `%1' ne permet pas de supprimer des fichiers ou des dossiers</translation> + <source>&Save</source> + <translation>&Enregistrer</translation> </message> <message> - <source>The protocol `%1' does not support renaming files or directories</source> - <translation>Le protocole `%1' ne permet pas de renommer des fichiers ou des dossiers</translation> + <source>&Rename</source> + <translation>&Renommer</translation> </message> <message> - <source>The protocol `%1' does not support getting files</source> - <translation>Le protocole `%1' ne permet pas de recevoir des fichiers</translation> + <source>&Delete</source> + <translation>Suppri&mer</translation> </message> <message> - <source>The protocol `%1' does not support putting files</source> - <translation>Le protocole `%1' ne permet pas d'envoyer des fichiers</translation> + <source>R&eload</source> + <translation>R&echarger</translation> </message> <message> - <source>The protocol `%1' does not support copying or moving files or directories</source> - <translation>Le protocole `%1' ne permet pas de copier ou de déplacer des fichiers</translation> + <source>Sort by &Name</source> + <translation>Trier par &nom</translation> </message> <message> - <source>(unknown)</source> - <translation>(inconnu)</translation> + <source>Sort by &Size</source> + <translation>Trier par ta&ille</translation> </message> -</context> -<context> - <name>Q3Wizard</name> <message> - <source>&Cancel</source> - <translation>&Annuler</translation> + <source>Sort by &Date</source> + <translation>Trier par &date</translation> </message> <message> - <source>< &Back</source> - <translation>< &Précédent</translation> + <source>&Unsorted</source> + <translation>&Non trié</translation> </message> <message> - <source>&Next ></source> - <translation>&Suivant ></translation> + <source>Sort</source> + <translation>Tri</translation> </message> <message> - <source>&Finish</source> - <translation>&Terminer</translation> + <source>Show &hidden files</source> + <translation>Afficher les fic&hiers cachés</translation> </message> <message> - <source>&Help</source> - <translation>&Aide</translation> + <source>the file</source> + <translation>le fichier</translation> </message> -</context> -<context> - <name>QAbstractSocket</name> <message> - <source>Host not found</source> - <translation>Hôte introuvable</translation> + <source>the directory</source> + <translation>le dossier</translation> </message> <message> - <source>Connection refused</source> - <translation>Connexion refusée</translation> + <source>the symlink</source> + <translation>le lien symbolique</translation> </message> <message> - <source>Connection timed out</source> - <translation>Connexion expirée</translation> + <source>Delete %1</source> + <translation>Supprimer %1</translation> </message> <message> - <source>Operation on socket is not supported</source> - <translation>Opération sur socket non supportée</translation> + <source><qt>Are you sure you wish to delete %1 "%2"?</qt></source> + <translation><qt>Voulez-vous vraiment supprimer %1 "%2" ?</qt></translation> </message> <message> - <source>Socket operation timed out</source> - <translation>Opération socket expirée</translation> + <source>&Yes</source> + <translation>&Oui</translation> </message> <message> - <source>Socket is not connected</source> - <translation>Le socket n'est pas connecté</translation> + <source>&No</source> + <translation>&Non</translation> </message> <message> - <source>Network unreachable</source> - <translation>Réseau impossible à rejoindre</translation> + <source>New Folder 1</source> + <translation>Nouveau dossier 1</translation> </message> -</context> -<context> - <name>QAbstractSpinBox</name> <message> - <source>&Step up</source> - <translation>&Augmenter</translation> + <source>New Folder</source> + <translation>Nouveau dossier</translation> </message> <message> - <source>Step &down</source> - <translation>&Diminuer</translation> + <source>New Folder %1</source> + <translation>Nouveau dossier %1</translation> </message> <message> - <source>&Select All</source> - <translation>Tout &sélectionner</translation> + <source>Find Directory</source> + <translation>Chercher dans le dossier</translation> </message> -</context> -<context> - <name>QApplication</name> <message> - <location filename="../src/gui/kernel/qapplication.cpp" line="+2248"/> - <source>QT_LAYOUT_DIRECTION</source> - <comment>Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.</comment> - <translation>LTR</translation> + <source>Directories</source> + <translation>Dossiers</translation> </message> <message> - <source>Executable '%1' requires Qt %2, found Qt %3.</source> - <translation>L'exécutable '%1' requiert Qt %2 (Qt %3 présent).</translation> + <source>Directory:</source> + <translation>Dossier :</translation> </message> <message> - <source>Incompatible Qt Library Error</source> - <translation>Erreur : bibliothèque Qt incompatible</translation> + <source>Error</source> + <translation>Erreur</translation> </message> <message> - <source>Activate</source> - <translation>Activer</translation> + <source>%1 +File not found. +Check path and filename.</source> + <translation>%1 +Impossible de trouver le fichier. +Vérifier le chemin et le nom du fichier.</translation> </message> <message> - <source>Activates the program's main window</source> - <translation>Active la fenêtre principale du programme</translation> + <source>All Files (*.*)</source> + <translation>Tous les fichiers (*.*)</translation> </message> <message> - <source>QT_LAYOUT_DIRECTION</source> - <translation>LTR</translation> + <source>Open </source> + <translation>Ouvrir</translation> </message> -</context> -<context> - <name>QAxSelect</name> <message> - <source>Select ActiveX Control</source> - <translation>Sélectionner un contrôle ActiveX</translation> + <source>Select a Directory</source> + <translation>Sélectionner un dossier</translation> </message> +</context> +<context> + <name>Q3LocalFs</name> <message> - <source>OK</source> - <translation>OK</translation> + <source>Could not read directory +%1</source> + <translation>Impossible de lire le dossier +%1</translation> </message> <message> - <source>&Cancel</source> - <translation>&Annuler</translation> + <source>Could not create directory +%1</source> + <translation>Impossible de créer le dossier +%1</translation> </message> <message> - <source>COM &Object:</source> - <translation>&Objet COM :</translation> + <source>Could not remove file or directory +%1</source> + <translation>Impossible de supprimer le fichier ou dossier +%1</translation> </message> -</context> -<context> - <name>QCheckBox</name> <message> - <source>Uncheck</source> - <translation>Décocher</translation> + <source>Could not rename +%1 +to +%2</source> + <translation>Impossible de renommer +%1 +en +%2</translation> </message> <message> - <source>Check</source> - <translation>Cocher</translation> + <source>Could not open +%1</source> + <translation>Impossible d'ouvrir +%1</translation> </message> <message> - <source>Toggle</source> - <translation>Changer</translation> + <source>Could not write +%1</source> + <translation>Impossible d'écrire +%1</translation> </message> </context> <context> - <name>QColorDialog</name> + <name>Q3MainWindow</name> <message> - <source>Hu&e:</source> - <translation>&Teinte :</translation> + <source>Line up</source> + <translation>Aligner</translation> </message> <message> - <source>&Sat:</source> - <translation>&Saturation :</translation> + <source>Customize...</source> + <translation>Personnaliser...</translation> </message> +</context> +<context> + <name>Q3NetworkProtocol</name> <message> - <source>&Val:</source> - <translation>&Valeur :</translation> + <source>Operation stopped by the user</source> + <translation>Opération interrompue par l'utilisateur</translation> </message> +</context> +<context> + <name>Q3ProgressDialog</name> <message> - <source>&Red:</source> - <translation>&Rouge :</translation> + <source>Cancel</source> + <translation>Annuler</translation> </message> +</context> +<context> + <name>Q3TabDialog</name> <message> - <source>&Green:</source> - <translation>&Vert :</translation> + <source>OK</source> + <translation>OK</translation> </message> <message> - <source>Bl&ue:</source> - <translation>Ble&u :</translation> + <source>Apply</source> + <translation>Appliquer</translation> </message> <message> - <source>A&lpha channel:</source> - <translation>Canal a&lpha :</translation> + <source>Help</source> + <translation>Aide</translation> </message> <message> - <source>Select Color</source> - <translation>Sélectionner une couleur</translation> + <source>Defaults</source> + <translation>Par défaut</translation> </message> <message> - <source>&Basic colors</source> - <translation>Couleurs de &base</translation> + <source>Cancel</source> + <translation>Annuler</translation> </message> +</context> +<context> + <name>Q3TextEdit</name> <message> - <source>&Custom colors</source> - <translation>&Couleurs personnalisées</translation> + <source>&Undo</source> + <translation>&Annuler</translation> </message> <message> - <source>&Define Custom Colors >></source> - <translation type="obsolete">Définir des &couleurs personnalisées >></translation> + <source>&Redo</source> + <translation>&Rétablir</translation> </message> <message> - <source>OK</source> - <translation type="obsolete">OK</translation> + <source>Cu&t</source> + <translation>Co&uper</translation> </message> <message> - <source>Cancel</source> - <translation type="obsolete">Annuler</translation> + <source>&Copy</source> + <translation>Cop&ier</translation> </message> <message> - <source>&Add to Custom Colors</source> - <translation>&Ajouter aux couleurs personnalisées</translation> + <source>&Paste</source> + <translation>Co&ller</translation> </message> <message> - <source>Select color</source> - <translation type="obsolete">Sélection d'une couleur</translation> + <source>Clear</source> + <translation>Effacer</translation> + </message> + <message> + <source>Select All</source> + <translation>Tout sélectionner</translation> </message> </context> <context> - <name>QComboBox</name> + <name>Q3TitleBar</name> <message> - <source>Open</source> - <translation>Ouvrir</translation> + <source>System</source> + <translation>Système</translation> </message> <message> - <source>False</source> - <translation>Faux</translation> + <source>Restore up</source> + <translation>Restaurer en haut</translation> </message> <message> - <source>True</source> - <translation>Vrai</translation> + <source>Minimize</source> + <translation>Réduire</translation> </message> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Restore down</source> + <translation>Restaurer en bas</translation> </message> -</context> -<context> - <name>QCoreApplication</name> <message> - <source>%1: permission denied</source> - <comment>QSystemSemaphore</comment> - <translation type="obsolete">%1: permission refusée</translation> + <source>Maximize</source> + <translation>Maximiser</translation> </message> <message> - <source>%1: already exists</source> - <comment>QSystemSemaphore</comment> - <translation type="obsolete">%1: existe déjà</translation> + <source>Close</source> + <translation>Fermer</translation> </message> <message> - <source>%1: doesn't exists</source> - <comment>QSystemSemaphore</comment> - <translation type="obsolete">%1: n'existe pas</translation> + <source>Contains commands to manipulate the window</source> + <translation>Contient des commandes pour manipuler la fenêtre</translation> </message> <message> - <source>%1: out of resources</source> - <comment>QSystemSemaphore</comment> - <translation type="obsolete">%1: plus de ressources disponibles</translation> + <source>Puts a minimized back to normal</source> + <translation type="obsolete">Rend à une fenêtre minimisée son aspect normal</translation> </message> <message> - <source>%1: unknown error %2</source> - <comment>QSystemSemaphore</comment> - <translation type="obsolete">%1: erreur inconnue %2</translation> + <source>Moves the window out of the way</source> + <translation>Déplace la fenêtre à l'écart</translation> </message> <message> - <location filename="../src/corelib/kernel/qsystemsemaphore_unix.cpp" line="+119"/> - <source>%1: key is empty</source> - <comment>QSystemSemaphore</comment> - <translation>%1: clé vide</translation> + <source>Puts a maximized window back to normal</source> + <translation>Rend à une fenêtre minimisée son aspect normal</translation> </message> <message> - <location line="+12"/> - <source>%1: unable to make key</source> - <comment>QSystemSemaphore</comment> - <translation>%1: impossible de créer la clé</translation> + <source>Makes the window full screen</source> + <translation>Affiche la fenêtre en plein écran</translation> </message> <message> - <location line="+9"/> - <source>%1: ftok failed</source> - <comment>QSystemSemaphore</comment> - <translation>%1: ftok a échoué</translation> + <source>Closes the window</source> + <translation>Ferme la fenêtre</translation> </message> <message> - <source>%1: key is empty</source> - <translation>%1: clé vide</translation> + <source>Displays the name of the window and contains controls to manipulate it</source> + <translation>Affiche le nom de la fenêtre et contient des contrôles pour la manipuler</translation> </message> <message> - <source>%1: unable to make key</source> - <translation>%1: impossible de créer la clé</translation> + <source>Puts a minimized window back to normal</source> + <translation>Rend à une fenêtre minimisée son aspect normal</translation> </message> +</context> +<context> + <name>Q3ToolBar</name> <message> - <source>%1: ftok failed</source> - <translation>%1: ftok a échoué</translation> + <source>More...</source> + <translation>Reste...</translation> </message> +</context> +<context> + <name>Q3UrlOperator</name> <message> - <source>%1: already exists</source> - <translation>%1: existe déjà</translation> + <source>The protocol `%1' is not supported</source> + <translation>Le protocole '%1' n'est pas géré</translation> </message> <message> - <source>%1: does not exist</source> - <translation>%1: n'existe pas</translation> + <source>The protocol `%1' does not support listing directories</source> + <translation>Le protocole `%1' ne permet pas de lister les fichiers d'un dossier</translation> </message> <message> - <source>%1: out of resources</source> - <translation>%1: plus de ressources disponibles</translation> + <source>The protocol `%1' does not support creating new directories</source> + <translation>Le protocole `%1' ne permet pas de créer de nouveaux dossiers</translation> </message> <message> - <source>%1: unknown error %2</source> - <translation>%1: erreur inconnue %2</translation> + <source>The protocol `%1' does not support removing files or directories</source> + <translation>Le protocole `%1' ne permet pas de supprimer des fichiers ou des dossiers</translation> </message> -</context> -<context> - <name>QDB2Driver</name> <message> - <source>Unable to connect</source> - <translation>Incapable d'établir une connexion</translation> + <source>The protocol `%1' does not support renaming files or directories</source> + <translation>Le protocole `%1' ne permet pas de renommer des fichiers ou des dossiers</translation> </message> <message> - <source>Unable to commit transaction</source> - <translation>Incapable de soumettre la transaction</translation> + <source>The protocol `%1' does not support getting files</source> + <translation>Le protocole `%1' ne permet pas de recevoir des fichiers</translation> </message> <message> - <source>Unable to rollback transaction</source> - <translation>Incapable d'annuler la transaction</translation> + <source>The protocol `%1' does not support putting files</source> + <translation>Le protocole `%1' ne permet pas d'envoyer des fichiers</translation> </message> <message> - <source>Unable to set autocommit</source> - <translation>Impossible d'activer l'auto-soumission</translation> + <source>The protocol `%1' does not support copying or moving files or directories</source> + <translation>Le protocole `%1' ne permet pas de copier ou de déplacer des fichiers</translation> </message> -</context> -<context> - <name>QDB2Result</name> <message> - <source>Unable to execute statement</source> - <translation>Impossible d'exécuter la requête</translation> + <source>(unknown)</source> + <translation>(inconnu)</translation> </message> +</context> +<context> + <name>Q3Wizard</name> <message> - <source>Unable to prepare statement</source> - <translation>Impossible de prépare la requête</translation> + <source>&Cancel</source> + <translation>&Annuler</translation> </message> <message> - <source>Unable to bind variable</source> - <translation>Impossible d'attacher la variable</translation> + <source>< &Back</source> + <translation>< &Précédent</translation> </message> <message> - <source>Unable to fetch record %1</source> - <translation>Impossible de récupérer l'enregistrement %1</translation> + <source>&Next ></source> + <translation>&Suivant ></translation> </message> <message> - <source>Unable to fetch next</source> - <translation>Impossible de récupérer le suivant</translation> + <source>&Finish</source> + <translation>&Terminer</translation> </message> <message> - <source>Unable to fetch first</source> - <translation>Impossible de récupérer le premier</translation> + <source>&Help</source> + <translation>&Aide</translation> </message> </context> <context> - <name>QDateTimeEdit</name> + <name>QAbstractSocket</name> <message> - <source>AM</source> - <translation>AM</translation> + <source>Host not found</source> + <translation>Hôte introuvable</translation> </message> <message> - <source>am</source> - <translation>am</translation> + <source>Connection refused</source> + <translation>Connexion refusée</translation> </message> <message> - <source>PM</source> - <translation>PM</translation> + <source>Connection timed out</source> + <translation>Connexion expirée</translation> </message> <message> - <source>pm</source> - <translation>pm</translation> + <source>Operation on socket is not supported</source> + <translation>Opération sur socket non supportée</translation> </message> -</context> -<context> - <name>QDial</name> <message> - <source>QDial</source> - <translation>QDial</translation> + <source>Socket operation timed out</source> + <translation>Opération socket expirée</translation> </message> <message> - <source>SpeedoMeter</source> - <translation>Tachymètre</translation> + <source>Socket is not connected</source> + <translation>Le socket n'est pas connecté</translation> </message> <message> - <source>SliderHandle</source> - <translation>Poignée</translation> + <source>Network unreachable</source> + <translation>Réseau impossible à rejoindre</translation> </message> </context> <context> - <name>QDialog</name> - <message> - <source>What's This?</source> - <translation>Qu'est-ce que c'est ?</translation> - </message> + <name>QAbstractSpinBox</name> <message> - <source>Done</source> - <translation>Terminer</translation> + <source>&Step up</source> + <translation>&Augmenter</translation> </message> -</context> -<context> - <name>QDialogButtonBox</name> <message> - <source>OK</source> - <translation>OK</translation> + <source>Step &down</source> + <translation>&Diminuer</translation> </message> <message> - <source>Save</source> - <translation>Enregistrer</translation> + <source>&Select All</source> + <translation>Tout &sélectionner</translation> </message> +</context> +<context> + <name>QAccessibleButton</name> <message> - <source>&Save</source> - <translation>Enregi&strer</translation> + <source>Press</source> + <translation>Appuyer</translation> </message> +</context> +<context> + <name>QApplication</name> <message> - <source>Open</source> - <translation>Ouvrir</translation> + <source>QT_LAYOUT_DIRECTION</source> + <comment>Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.</comment> + <translation>LTR</translation> </message> <message> - <source>Cancel</source> - <translation>Annuler</translation> + <source>Executable '%1' requires Qt %2, found Qt %3.</source> + <translation>L'exécutable '%1' requiert Qt %2 (Qt %3 présent).</translation> </message> <message> - <source>&Cancel</source> - <translation>&Annuler</translation> + <source>Incompatible Qt Library Error</source> + <translation>Erreur : bibliothèque Qt incompatible</translation> </message> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Activate</source> + <translation>Activer</translation> </message> <message> - <source>&Close</source> - <translation>&Fermer</translation> + <source>Activates the program's main window</source> + <translation>Active la fenêtre principale du programme</translation> </message> <message> - <source>Apply</source> - <translation>Appliquer</translation> + <source>QT_LAYOUT_DIRECTION</source> + <translation type="obsolete">LTR</translation> </message> +</context> +<context> + <name>QAxSelect</name> <message> - <source>Reset</source> - <translation>Réinitialiser</translation> + <source>Select ActiveX Control</source> + <translation>Sélectionner un contrôle ActiveX</translation> </message> <message> - <source>Help</source> - <translation>Aide</translation> + <source>OK</source> + <translation>OK</translation> </message> <message> - <source>Don't Save</source> - <translation>Ne pas enregistrer</translation> + <source>&Cancel</source> + <translation>&Annuler</translation> </message> <message> - <source>Discard</source> - <translation>Ne pas enregistrer</translation> + <source>COM &Object:</source> + <translation>&Objet COM :</translation> </message> +</context> +<context> + <name>QCheckBox</name> <message> - <source>&Yes</source> - <translation>&Oui</translation> + <source>Uncheck</source> + <translation>Décocher</translation> </message> <message> - <source>Yes to &All</source> - <translation>Oui à &tout</translation> + <source>Check</source> + <translation>Cocher</translation> </message> <message> - <source>&No</source> - <translation>&Non</translation> + <source>Toggle</source> + <translation>Changer</translation> </message> +</context> +<context> + <name>QColorDialog</name> <message> - <source>N&o to All</source> - <translation>Non à to&ut</translation> + <source>Hu&e:</source> + <translation>&Teinte :</translation> </message> <message> - <source>Save All</source> - <translation>Tout Enregistrer</translation> + <source>&Sat:</source> + <translation>&Saturation :</translation> </message> <message> - <source>Abort</source> - <translation>Abandonner</translation> + <source>&Val:</source> + <translation>&Valeur :</translation> </message> <message> - <source>Retry</source> - <translation>Réessayer</translation> + <source>&Red:</source> + <translation>&Rouge :</translation> </message> <message> - <source>Ignore</source> - <translation>Ignorer</translation> + <source>&Green:</source> + <translation>&Vert :</translation> </message> <message> - <source>Restore Defaults</source> - <translation>Restaurer les valeurs par défaut</translation> + <source>Bl&ue:</source> + <translation>Ble&u :</translation> </message> <message> - <source>Close without Saving</source> - <translation>Fermer sans enregistrer</translation> + <source>A&lpha channel:</source> + <translation>Canal a&lpha :</translation> </message> <message> - <source>&OK</source> - <translation>&OK</translation> + <source>Select Color</source> + <translation>Sélectionner une couleur</translation> </message> -</context> -<context> - <name>QDirModel</name> <message> - <source>Name</source> - <translation>Nom</translation> + <source>&Basic colors</source> + <translation>Couleurs de &base</translation> </message> <message> - <source>Size</source> - <translation>Taille</translation> + <source>&Custom colors</source> + <translation>&Couleurs personnalisées</translation> </message> <message> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+457"/> - <source>Kind</source> - <comment>Match OS X Finder</comment> - <translation>Type</translation> + <source>&Define Custom Colors >></source> + <translation type="obsolete">Définir des &couleurs personnalisées >></translation> </message> <message> - <location line="+2"/> - <source>Type</source> - <comment>All other platforms</comment> - <translation>Type</translation> + <source>OK</source> + <translation type="obsolete">OK</translation> </message> <message> - <source>Date Modified</source> - <translation>Dernière Modification</translation> + <source>Cancel</source> + <translation type="obsolete">Annuler</translation> </message> <message> - <source>Kind</source> - <translation>Type</translation> + <source>&Add to Custom Colors</source> + <translation>&Ajouter aux couleurs personnalisées</translation> </message> <message> - <source>Type</source> - <translation>Type</translation> + <source>Select color</source> + <translation type="obsolete">Sélection d'une couleur</translation> </message> </context> <context> - <name>QDockWidget</name> + <name>QComboBox</name> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Open</source> + <translation>Ouvrir</translation> </message> <message> - <source>Dock</source> - <translation>Attacher</translation> + <source>False</source> + <translation>Faux</translation> </message> <message> - <source>Float</source> - <translation>Détacher</translation> + <source>True</source> + <translation>Vrai</translation> + </message> + <message> + <source>Close</source> + <translation>Fermer</translation> </message> </context> <context> - <name>QDoubleSpinBox</name> + <name>QCoreApplication</name> <message> - <source>More</source> - <translation>Plus</translation> + <source>%1: permission denied</source> + <comment>QSystemSemaphore</comment> + <translation type="obsolete">%1: permission refusée</translation> </message> <message> - <source>Less</source> - <translation>Moins</translation> + <source>%1: already exists</source> + <comment>QSystemSemaphore</comment> + <translation>%1 : existe déjà</translation> </message> -</context> -<context> - <name>QErrorMessage</name> <message> - <source>&Show this message again</source> - <translation>&Afficher ce message de nouveau</translation> + <source>%1: doesn't exists</source> + <comment>QSystemSemaphore</comment> + <translation type="obsolete">%1: n'existe pas</translation> </message> <message> - <source>&OK</source> - <translation>&OK</translation> + <source>%1: does not exist</source> + <comment>QSystemSemaphore</comment> + <translation>%1 : n'existe pas</translation> </message> <message> - <source>Debug Message:</source> - <translation>Message de débogage:</translation> + <source>%1: out of resources</source> + <comment>QSystemSemaphore</comment> + <translation>%1 : plus de ressources disponibles</translation> </message> <message> - <source>Warning:</source> - <translation>Avertissement:</translation> + <source>%1: unknown error %2</source> + <comment>QSystemSemaphore</comment> + <translation>%1 : erreur inconnue %2</translation> </message> <message> - <source>Fatal Error:</source> - <translation>Erreur fatale:</translation> + <source>%1: key is empty</source> + <comment>QSystemSemaphore</comment> + <translation>%1 : clé vide</translation> </message> -</context> -<context> - <name>QFile</name> <message> - <source>Destination file exists</source> - <translation>Le fichier destination existe</translation> + <source>%1: unable to make key</source> + <comment>QSystemSemaphore</comment> + <translation>%1 : impossible de créer la clé</translation> </message> <message> - <source>Cannot remove source file</source> - <translation>Impossible de supprimer le fichier source</translation> + <source>%1: ftok failed</source> + <comment>QSystemSemaphore</comment> + <translation>%1 : ftok a échoué</translation> </message> <message> - <source>Cannot open %1 for input</source> - <translation>Impossible d'ouvrir %1 pour lecture</translation> + <source>%1: key is empty</source> + <translation type="obsolete">%1: clé vide</translation> </message> <message> - <source>Cannot open for output</source> - <translation>Impossible d'ouvrir pour écriture</translation> + <source>%1: unable to make key</source> + <translation type="obsolete">%1: impossible de créer la clé</translation> </message> <message> - <source>Failure to write block</source> - <translation>Impossible d'écrire un bloc</translation> + <source>%1: ftok failed</source> + <translation type="obsolete">%1: ftok a échoué</translation> </message> <message> - <source>Cannot create %1 for output</source> - <translation>Impossible de créer %1 pour écriture</translation> + <source>%1: already exists</source> + <translation type="obsolete">%1: existe déjà</translation> </message> <message> - <source>Will not rename sequential file using block copy</source> - <translation>Ne renommera pas le fichier séquentiel avec la copie bloc</translation> + <source>%1: does not exist</source> + <translation type="obsolete">%1: n'existe pas</translation> + </message> + <message> + <source>%1: out of resources</source> + <translation type="obsolete">%1: plus de ressources disponibles</translation> + </message> + <message> + <source>%1: unknown error %2</source> + <translation type="obsolete">%1: erreur inconnue %2</translation> </message> </context> <context> - <name>QFileDialog</name> + <name>QDB2Driver</name> <message> - <source>Back</source> - <translation>Précédent (historique)</translation> + <source>Unable to connect</source> + <translation>Incapable d'établir une connexion</translation> </message> <message> - <source>List View</source> - <translation>Affichage liste</translation> + <source>Unable to commit transaction</source> + <translation>Incapable de soumettre la transaction</translation> </message> <message> - <source>Detail View</source> - <translation>Affichage détaillé</translation> + <source>Unable to rollback transaction</source> + <translation>Incapable d'annuler la transaction</translation> </message> <message> - <source>Open</source> - <translation>Ouvrir</translation> + <source>Unable to set autocommit</source> + <translation>Impossible d'activer l'auto-soumission</translation> </message> +</context> +<context> + <name>QDB2Result</name> <message> - <source>&Open</source> - <translation>&Ouvrir</translation> + <source>Unable to execute statement</source> + <translation>Impossible d'exécuter la requête</translation> </message> <message> - <source>&Save</source> - <translation>&Enregistrer</translation> + <source>Unable to prepare statement</source> + <translation>Impossible de prépare la requête</translation> </message> <message> - <source>&Rename</source> - <translation>&Renommer</translation> + <source>Unable to bind variable</source> + <translation>Impossible d'attacher la variable</translation> </message> <message> - <source>&Delete</source> - <translation>Suppri&mer</translation> + <source>Unable to fetch record %1</source> + <translation>Impossible de récupérer l'enregistrement %1</translation> </message> <message> - <source>Show &hidden files</source> - <translation>Afficher les fic&hiers cachés</translation> + <source>Unable to fetch next</source> + <translation>Impossible de récupérer le suivant</translation> </message> <message> - <source>Directories</source> - <translation>Dossiers</translation> + <source>Unable to fetch first</source> + <translation>Impossible de récupérer le premier</translation> </message> +</context> +<context> + <name>QDateTimeEdit</name> <message> - <source>Recent Places</source> - <translation>Emplacements récents</translation> + <source>AM</source> + <translation>AM</translation> </message> <message> - <source>All Files (*)</source> - <translation>Tous les fichiers (*)</translation> + <source>am</source> + <translation>am</translation> </message> <message> - <source>%1 already exists. -Do you want to replace it?</source> - <translation>Le fichier %1 existe déjà. Voulez-vous l'écraser ?</translation> + <source>PM</source> + <translation>PM</translation> </message> <message> - <source>%1 -File not found. -Please verify the correct file name was given.</source> - <translation>%1 -Fichier introuvable. -Veuillez vérifier que le nom du fichier est correct.</translation> + <source>pm</source> + <translation>pm</translation> </message> +</context> +<context> + <name>QDeclarativeAbstractAnimation</name> <message> - <source>My Computer</source> - <translation>Poste de travail</translation> + <source>Cannot animate non-existent property "%1"</source> + <translation>Impossible d'animer la propriété inexistante "%1"</translation> </message> <message> - <source>Parent Directory</source> - <translation>Dossier parent</translation> + <source>Cannot animate read-only property "%1"</source> + <translation>Impossible d'animer la propriété en lecture seule "%1"</translation> </message> <message> - <source>Files of type:</source> - <translation>Fichiers de type :</translation> + <source>Animation is an abstract class</source> + <translation>L'animation est une classe abstraite</translation> </message> +</context> +<context> + <name>QDeclarativeAnchorAnimation</name> <message> - <source>Directory:</source> - <translation>Dossier :</translation> + <source>Cannot set a duration of < 0</source> + <translation>Impossible de sélectionner une durée négative</translation> </message> +</context> +<context> + <name>QDeclarativeAnchors</name> <message> - <source> -File not found. -Please verify the correct file name was given</source> - <translation type="obsolete"> -Fichier introuvable. -Veuillez vérifier que le nom du fichier est correct</translation> + <source>Possible anchor loop detected on fill.</source> + <translation>Boucle potentielle dans les ancres détectée pour le remplissage.</translation> </message> <message> - <source>%1 -Directory not found. -Please verify the correct directory name was given.</source> - <translation>%1 -Dossier introuvable. -Veuillez vérifier que le nom du dossier est correct.</translation> + <source>Possible anchor loop detected on centerIn.</source> + <translation>Boucle potentielle dans les ancres détectée pour le centrage.</translation> </message> <message> - <source>'%1' is write protected. -Do you want to delete it anyway?</source> - <translation>'%1' est protégé en écriture. -Voulez-vous quand même le supprimer ?</translation> + <source>Cannot anchor to an item that isn't a parent or sibling.</source> + <translation>Impossible d'ancrer à un élément qui n'est pas un parent ou partage le même parent.</translation> </message> <message> - <source>Are sure you want to delete '%1'?</source> - <translation>Etes-vous sûr de vouloir supprimer '%1' ?</translation> + <source>Possible anchor loop detected on vertical anchor.</source> + <translation>Boucle potentielle dans les ancres détectée pour l'ancre verticale.</translation> </message> <message> - <source>Could not delete directory.</source> - <translation>Impossible de supprimer le dossier.</translation> + <source>Possible anchor loop detected on horizontal anchor.</source> + <translation>Boucle potentielle dans les ancres détectée pour l'ancre horizontale.</translation> </message> <message> - <source>All Files (*.*)</source> - <translation>Tous les fichiers (*.*)</translation> + <source>Cannot specify left, right, and hcenter anchors.</source> + <translation>Impossible de spécifier à la fois une ancre gauche, droite et hcenter.</translation> </message> <message> - <source>Save As</source> - <translation>Enregistrer sous</translation> + <source>Cannot anchor to a null item.</source> + <translation>impossible d'ancrer à un élément nul.</translation> </message> <message> - <source>Drive</source> - <translation>Unité</translation> + <source>Cannot anchor a horizontal edge to a vertical edge.</source> + <translation>Impossible d'ancrer un bord horizontal à un bord vertical.</translation> </message> <message> - <source>File</source> - <translation>Fichier</translation> + <source>Cannot anchor item to self.</source> + <translation>Impossible d'ancrer l'élément à lui même.</translation> </message> <message> - <source>Unknown</source> - <translation>Inconnu</translation> + <source>Cannot specify top, bottom, and vcenter anchors.</source> + <translation>Impossible de spécifier à la fois une ancre haut, bas et vcenter.</translation> </message> <message> - <source>Find Directory</source> - <translation>Chercher dans le dossier</translation> + <source>Baseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.</source> + <translation>L'ancre baseline ne peut pas etre combinée à l'usage des ancres haut, bas ou vcenter.</translation> </message> <message> - <source>Show </source> - <translation>Montrer </translation> + <source>Cannot anchor a vertical edge to a horizontal edge.</source> + <translation>Impossible d'ancrer un bord vertical à un bord horizontal.</translation> </message> +</context> +<context> + <name>QDeclarativeAnimatedImage</name> <message> - <source>Forward</source> - <translation>Successeur</translation> + <source>Qt was built without support for QMovie</source> + <translation>Qt a été compilé sans support de QMovie</translation> </message> +</context> +<context> + <name>QDeclarativeBehavior</name> <message> - <source>New Folder</source> - <translation>Nouveau dossier</translation> + <source>Cannot change the animation assigned to a Behavior.</source> + <translation>Impossible de changer l'animation affectée à un comportement.</translation> </message> +</context> +<context> + <name>QDeclarativeBinding</name> <message> - <source>&New Folder</source> - <translation>&Nouveau dossier</translation> + <source>Binding loop detected for property "%1"</source> + <translation>Boucle détectée dans l'affectation pour la propriété "%1"</translation> </message> +</context> +<context> + <name>QDeclarativeCompiledBindings</name> <message> - <source>&Choose</source> - <translation>&Choisir</translation> + <source>Binding loop detected for property "%1"</source> + <translation></translation> </message> +</context> +<context> + <name>QDeclarativeCompiler</name> <message> - <source>Remove</source> - <translation>Supprimer</translation> + <source>Invalid property assignment: "%1" is a read-only property</source> + <translation>Affectation de propriété invalide : "%1"est une propriété en lecture seule</translation> </message> <message> - <source>File &name:</source> - <translation>&Nom de fichier :</translation> + <source>Invalid property assignment: unknown enumeration</source> + <translation>Affectation de propriété invalide : énumération inconnue</translation> </message> <message> - <source>Look in:</source> - <translation>Voir dans:</translation> + <source>Invalid property assignment: string expected</source> + <translation>Affectation de propriété invalide : chaîne attendue</translation> </message> <message> - <source>Create New Folder</source> - <translation>Créer un nouveau dossier</translation> + <source>Invalid property assignment: url expected</source> + <translation>Affectation de propriété invalide : url attendue</translation> </message> <message> - <source>File Folder</source> - <translation>Fichier Dossier</translation> + <source>Invalid property assignment: unsigned int expected</source> + <translation>Affectation de propriété invalide : unsigned int attendu</translation> </message> <message> - <source>Folder</source> - <translation>Dossier</translation> + <source>Invalid property assignment: int expected</source> + <translation>Affectation de propriété invalide : int attendu</translation> </message> <message> - <source>Alias</source> - <translation>Alias</translation> + <source>Invalid property assignment: float expected</source> + <translation>Affectation de propriété invalide : float attendu</translation> </message> <message> - <source>Shortcut</source> - <translation>Raccourci</translation> + <source>Invalid property assignment: double expected</source> + <translation>Affectation de propriété invalide : double attendu</translation> </message> -</context> -<context> - <name>QFileSystemModel</name> <message> - <source>%1 TB</source> - <translation>%1 To</translation> + <source>Invalid property assignment: color expected</source> + <translation>Affectation de propriété invalide : couleur attendue</translation> </message> <message> - <source>%1 GB</source> - <translation>%1 Go</translation> + <source>Invalid property assignment: date expected</source> + <translation>Affectation de propriété invalide : date attendue</translation> </message> <message> - <source>%1 MB</source> - <translation>%1 Mo</translation> + <source>Invalid property assignment: time expected</source> + <translation>Affectation de propriété invalide : heure attendue</translation> </message> <message> - <source>%1 KB</source> - <translation>%1 Ko</translation> + <source>Invalid property assignment: datetime expected</source> + <translation>Affectation de propriété invalide : date et heure attendues</translation> </message> <message> - <source>%1 bytes</source> - <translation>%1 octets</translation> + <source>Invalid property assignment: point expected</source> + <translation>Affectation de propriété invalide : point attendu</translation> </message> <message> - <source>Invalid filename</source> - <translation>Nom de fichier invalide</translation> + <source>Invalid property assignment: size expected</source> + <translation>Affectation de propriété invalide : taille attendue</translation> </message> <message> - <source><b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks.</source> - <translation><b>Le nom "%1" ne peut pas être utilisé.</b><p>Essayez un autre nom avec moins de caractères ou sans ponctuation.</translation> + <source>Invalid property assignment: rect expected</source> + <translation>Affectation de propriété invalide : rectangle attendu</translation> </message> <message> - <source>Name</source> - <translation>Nom</translation> + <source>Invalid property assignment: boolean expected</source> + <translation>Affectation de propriété invalide : booléen attendu</translation> </message> <message> - <source>Size</source> - <translation>Taille</translation> + <source>Invalid property assignment: 3D vector expected</source> + <translation>Affectation de propriété invalide : vecteur 3D attendu</translation> </message> <message> - <location filename="../src/gui/dialogs/qfilesystemmodel.cpp" line="+898"/> - <source>Kind</source> - <comment>Match OS X Finder</comment> - <translation>Type</translation> + <source>Invalid property assignment: unsupported type "%1"</source> + <translation>Affectation de propriété invalide : type "%1" non supporté</translation> </message> <message> - <location line="+2"/> - <source>Type</source> - <comment>All other platforms</comment> - <translation>Type</translation> + <source>Element is not creatable.</source> + <translation>Impossible de créer l'élément.</translation> </message> <message> - <source>Date Modified</source> - <translation>Dernière modification</translation> + <source>Component elements may not contain properties other than id</source> + <translation type="unfinished"></translation> </message> <message> - <source>My Computer</source> - <translation>Mon ordinateur</translation> + <source>Invalid component id specification</source> + <translation type="unfinished">L'ID de composant spécifiée n'est pas valide</translation> </message> <message> - <source>Computer</source> - <translation>Ordinateur</translation> + <source>id is not unique</source> + <translation type="unfinished">l'ID n'est pas unique</translation> </message> <message> - <source>Kind</source> - <translation>Type</translation> + <source>Invalid component body specification</source> + <translation type="unfinished"></translation> </message> <message> - <source>Type</source> - <translation>Type</translation> + <source>Component objects cannot declare new properties.</source> + <translation type="unfinished"></translation> </message> <message> - <source>%1 byte(s)</source> - <translation>%1 octet(s)</translation> + <source>Component objects cannot declare new signals.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QFontDatabase</name> <message> - <source>Normal</source> - <translation>Normal</translation> + <source>Component objects cannot declare new functions.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Bold</source> - <translation>Gras</translation> + <source>Cannot create empty component specification</source> + <translation type="unfinished"></translation> </message> <message> - <source>Demi Bold</source> - <translation>Semi Gras</translation> + <source>Incorrectly specified signal assignment</source> + <translation type="unfinished"></translation> </message> <message> - <source>Black</source> - <translation>Noir</translation> + <source>Cannot assign a value to a signal (expecting a script to be run)</source> + <translation type="unfinished"></translation> </message> <message> - <source>Demi</source> - <translation>Demi</translation> + <source>Empty signal assignment</source> + <translation type="unfinished"></translation> </message> <message> - <source>Light</source> - <translation>Léger</translation> + <source>Empty property assignment</source> + <translation type="unfinished"></translation> </message> <message> - <source>Italic</source> - <translation>Italique</translation> + <source>Attached properties cannot be used here</source> + <translation type="unfinished"></translation> </message> <message> - <source>Oblique</source> - <translation>Oblique</translation> + <source>Non-existent attached object</source> + <translation type="unfinished"></translation> </message> <message> - <source>Any</source> - <translation>Tous</translation> + <source>Invalid attached object assignment</source> + <translation type="unfinished"></translation> </message> <message> - <source>Latin</source> - <translation>Latin</translation> + <source>Cannot assign to non-existent default property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Greek</source> - <translation>Grec</translation> + <source>Cannot assign to non-existent property "%1"</source> + <translation type="unfinished"></translation> </message> <message> - <source>Cyrillic</source> - <translation>Cyrillique</translation> + <source>Invalid use of namespace</source> + <translation type="unfinished"></translation> </message> <message> - <source>Armenian</source> - <translation>Arménien</translation> + <source>Not an attached property name</source> + <translation type="unfinished"></translation> </message> <message> - <source>Hebrew</source> - <translation>Hébreu</translation> + <source>Invalid use of id property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Arabic</source> - <translation>Arabe</translation> + <source>Property has already been assigned a value</source> + <translation type="unfinished"></translation> </message> <message> - <source>Syriac</source> - <translation>Syriaque</translation> + <source>Invalid grouped property access</source> + <translation type="unfinished"></translation> </message> <message> - <source>Thaana</source> - <translation>Thaana</translation> + <source>Cannot assign a value directly to a grouped property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Devanagari</source> - <translation>Devanagari</translation> + <source>Invalid property use</source> + <translation type="unfinished"></translation> </message> <message> - <source>Bengali</source> - <translation>Bengali</translation> + <source>Property assignment expected</source> + <translation type="unfinished"></translation> </message> <message> - <source>Gurmukhi</source> - <translation>Gurmukhi</translation> + <source>Single property assignment expected</source> + <translation type="unfinished"></translation> </message> <message> - <source>Gujarati</source> - <translation>Gujarati</translation> + <source>Unexpected object assignment</source> + <translation type="unfinished"></translation> </message> <message> - <source>Oriya</source> - <translation>Oriya</translation> + <source>Cannot assign object to list</source> + <translation type="unfinished"></translation> </message> <message> - <source>Tamil</source> - <translation>Tamil</translation> + <source>Can only assign one binding to lists</source> + <translation type="unfinished"></translation> </message> <message> - <source>Telugu</source> - <translation>Telugu</translation> + <source>Cannot assign primitives to lists</source> + <translation type="unfinished"></translation> </message> <message> - <source>Kannada</source> - <translation>Kannada</translation> + <source>Cannot assign multiple values to a script property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Malayalam</source> - <translation>Malayalam</translation> + <source>Invalid property assignment: script expected</source> + <translation type="unfinished"></translation> </message> <message> - <source>Sinhala</source> - <translation>Sinhala</translation> + <source>Cannot assign object to property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Thai</source> - <translation>Thaï</translation> + <source>"%1" cannot operate on "%2"</source> + <translation type="unfinished"></translation> </message> <message> - <source>Lao</source> - <translatorcomment>Lao/Laotien sont corrects</translatorcomment> - <translation>Lao</translation> + <source>Duplicate default property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Tibetan</source> - <translation>Tibétain</translation> + <source>Duplicate property name</source> + <translation type="unfinished"></translation> </message> <message> - <source>Myanmar</source> - <translatorcomment>Myanmar/Birman sont corrects mais Myanmar semble plus adapté pour la langue écrite</translatorcomment> - <translation>Myanmar</translation> + <source>Property names cannot begin with an upper case letter</source> + <translation type="unfinished"></translation> </message> <message> - <source>Georgian</source> - <translation>Géorgien</translation> + <source>Duplicate signal name</source> + <translation type="unfinished"></translation> </message> <message> - <source>Khmer</source> - <translation>Khmer</translation> + <source>Signal names cannot begin with an upper case letter</source> + <translation type="unfinished"></translation> </message> <message> - <source>Simplified Chinese</source> - <translation>Chinois Simplifié</translation> + <source>Duplicate method name</source> + <translation type="unfinished"></translation> </message> <message> - <source>Traditional Chinese</source> - <translation>Chinois Traditionnel</translation> + <source>Method names cannot begin with an upper case letter</source> + <translation type="unfinished"></translation> </message> <message> - <source>Japanese</source> - <translation>Japonais</translation> + <source>Property value set multiple times</source> + <translation type="unfinished"></translation> </message> <message> - <source>Korean</source> - <translation>Coréen</translation> + <source>Invalid property nesting</source> + <translation type="unfinished"></translation> </message> <message> - <source>Vietnamese</source> - <translation>Vietnamien</translation> + <source>Cannot override FINAL property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Symbol</source> - <translation>Symbole</translation> + <source>Invalid property type</source> + <translation type="unfinished">Type de propriété invalide</translation> </message> <message> - <source>Ogham</source> - <translation>Ogham</translation> + <source>Invalid empty ID</source> + <translation>ID vide non valide</translation> </message> <message> - <source>Runic</source> - <translation>Runique</translation> + <source>IDs cannot start with an uppercase letter</source> + <translation type="unfinished"></translation> </message> <message> - <source>N'Ko</source> - <translation>N'Ko</translation> + <source>IDs must start with a letter or underscore</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QFontDialog</name> <message> - <source>&Font</source> - <translation>&Police</translation> + <source>IDs must contain only letters, numbers, and underscores</source> + <translation type="unfinished"></translation> </message> <message> - <source>Font st&yle</source> - <translation>St&yle de police</translation> + <source>ID illegally masks global JavaScript property</source> + <translation type="unfinished"></translation> </message> <message> - <source>&Size</source> - <translation>&Taille</translation> + <source>No property alias location</source> + <translation type="unfinished"></translation> </message> <message> - <source>Effects</source> - <translation>Effets</translation> + <source>Invalid alias location</source> + <translation type="unfinished"></translation> </message> <message> - <source>Stri&keout</source> - <translation>&Barré</translation> + <source>Invalid alias reference. An alias reference must be specified as <id> or <id>.<property></source> + <translation type="unfinished"></translation> </message> <message> - <source>&Underline</source> - <translation>&Souligné</translation> + <source>Invalid alias reference. Unable to find id "%1"</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeComponent</name> <message> - <source>Sample</source> - <translation>Exemple</translation> + <source>Invalid empty URL</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeCompositeTypeManager</name> <message> - <source>Select Font</source> - <translation>Choisir une police</translation> + <source>Resource %1 unavailable</source> + <translation type="unfinished"></translation> </message> <message> - <source>Wr&iting System</source> - <translation>&Système d'écriture</translation> + <source>Namespace %1 cannot be used as a type</source> + <translation type="unfinished"></translation> + </message> + <message> + <source>%1 %2</source> + <translation type="unfinished">%1% {1 %2?}</translation> + </message> + <message> + <source>Type %1 unavailable</source> + <translation type="unfinished"></translation> </message> </context> <context> - <name>QFtp</name> + <name>QDeclarativeConnections</name> <message> - <source>Host %1 found</source> - <translation>Hôte %1 trouvé</translation> + <source>Cannot assign to non-existent property "%1"</source> + <translation type="unfinished"></translation> </message> <message> - <source>Host found</source> - <translation>Hôte trouvé</translation> + <source>Connections: nested objects not allowed</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connected to host %1</source> - <translation>Connecté à l'hôte %1</translation> + <source>Connections: syntax error</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connected to host</source> - <translation>Connecté à l'hôte</translation> + <source>Connections: script expected</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeEngine</name> <message> - <source>Connection to %1 closed</source> - <translation>Connexion à %1 arrêtée</translation> + <source>executeSql called outside transaction()</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connection closed</source> - <translation>Connexion arrêtée</translation> + <source>Read-only Transaction</source> + <translation type="unfinished"></translation> </message> <message> - <source>Host %1 not found</source> - <translation>Hôte %1 introuvable</translation> + <source>Version mismatch: expected %1, found %2</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connection refused to host %1</source> - <translation>Connexion à l'hôte %1 refusée</translation> + <source>SQL transaction failed</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connection timed out to host %1</source> - <translation>Connexion expirée vers l'hôte %1</translation> + <source>transaction: missing callback</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>SQL: database version mismatch</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeFlipable</name> <message> - <source>Connecting to host failed: -%1</source> - <translation>Échec de la connexion à l'hôte -%1</translation> + <source>front is a write-once property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Login failed: -%1</source> - <translation>Échec du login: -%1</translation> + <source>back is a write-once property</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeImportDatabase</name> <message> - <source>Listing directory failed: -%1</source> - <translation>Échec du listage du dossier : -%1</translation> + <source>module "%1" definition "%2" not readable</source> + <translation type="unfinished"></translation> </message> <message> - <source>Changing directory failed: -%1</source> - <translation>Échec du changement de dossier : -%1</translation> + <source>plugin cannot be loaded for module "%1": %2</source> + <translation type="unfinished"></translation> </message> <message> - <source>Downloading file failed: -%1</source> - <translation>Échec du téléchargement du fichier : -%1</translation> + <source>module "%1" plugin "%2" not found</source> + <translation type="unfinished"></translation> </message> <message> - <source>Uploading file failed: -%1</source> - <translation>Échec du télédéchargement : -%1</translation> + <source>module "%1" version %2.%3 is not installed</source> + <translation type="unfinished"></translation> </message> <message> - <source>Removing file failed: -%1</source> - <translation>Échec de la suppression d'un fichier : -%1</translation> + <source>module "%1" is not installed</source> + <translation type="unfinished"></translation> </message> <message> - <source>Creating directory failed: -%1</source> - <translation>Échec de la création d'un dossier : -%1</translation> + <source>"%1": no such directory</source> + <translation type="unfinished"></translation> </message> <message> - <source>Removing directory failed: -%1</source> - <translation>Échec de la suppression d'un dossier : -%1</translation> + <source>import "%1" has no qmldir and no namespace</source> + <translation type="unfinished"></translation> </message> <message> - <source>Not connected</source> - <translation>Non connecté</translation> + <source>- %1 is not a namespace</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connection refused for data connection</source> - <translation>Connexion donnée refusée</translation> + <source>- nested namespaces not allowed</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QHostInfo</name> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>local directory</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QHostInfoAgent</name> <message> - <source>Host not found</source> - <translation>Hôte introuvable</translation> + <source>is ambiguous. Found in %1 and in %2</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown address type</source> - <translation>Adresse de type inconnu</translation> + <source>is ambiguous. Found in %1 in version %2.%3 and %4.%5</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>is instantiated recursively</source> + <translation type="unfinished"></translation> </message> <message> - <source>No host name given</source> - <translation>Aucun nom d'hôte n'a été donné</translation> + <source>is not a type</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeKeyNavigationAttached</name> <message> - <source>Invalid hostname</source> - <translation>Nom d'hôte non valide</translation> + <source>KeyNavigation is only available via attached properties</source> + <translation type="unfinished"></translation> </message> </context> <context> - <name>QHttp</name> + <name>QDeclarativeKeysAttached</name> <message> - <source>Connection refused</source> - <translation>Connexion refusée</translation> + <source>Keys is only available via attached properties</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeListModel</name> <message> - <source>Host %1 not found</source> - <translation>Hôte %1 introuvable</translation> + <source>remove: index %1 out of range</source> + <translation type="unfinished"></translation> </message> <message> - <source>Wrong content length</source> - <translation>Longueur du contenu invalide</translation> + <source>insert: value is not an object</source> + <translation type="unfinished"></translation> </message> <message> - <source>HTTP request failed</source> - <translation>Échec de la requête HTTP</translation> + <source>insert: index %1 out of range</source> + <translation type="unfinished"></translation> </message> <message> - <source>Host %1 found</source> - <translation>Hôte %1 trouvé</translation> + <source>move: out of range</source> + <translation type="unfinished"></translation> </message> <message> - <source>Host found</source> - <translation>Hôte trouvé</translation> + <source>append: value is not an object</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connected to host %1</source> - <translation>Connecté à l'hôte %1</translation> + <source>set: value is not an object</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connected to host</source> - <translation>Connecté à l'hôte</translation> + <source>set: index %1 out of range</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connection to %1 closed</source> - <translation>Connexion à %1 arrêtée</translation> + <source>ListElement: cannot contain nested elements</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connection closed</source> - <translation>Connexion arrêtée</translation> + <source>ListElement: cannot use reserved "id" property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>ListElement: cannot use script for property value</source> + <translation type="unfinished"></translation> </message> <message> - <source>Request aborted</source> - <translation>Requête interrompue</translation> + <source>ListModel: undefined property '%1'</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeLoader</name> <message> - <source>No server set to connect to</source> - <translation>Aucun serveur spécifié</translation> + <source>Loader does not support loading non-visual elements.</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeParentAnimation</name> <message> - <source>Server closed connection unexpectedly</source> - <translation>Connexion interrompue par le serveur</translation> + <source>Unable to preserve appearance under complex transform</source> + <translation type="unfinished"></translation> </message> <message> - <source>Invalid HTTP response header</source> - <translation>Entête de réponse HTTP invalide</translation> + <source>Unable to preserve appearance under non-uniform scale</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown authentication method</source> - <translation>Méthode d'authentification inconnue</translation> + <source>Unable to preserve appearance under scale of 0</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeParentChange</name> <message> - <source>Invalid HTTP chunked body</source> - <translation>Fragment HTTP invalide</translation> + <source>Unable to preserve appearance under complex transform</source> + <translation type="unfinished"></translation> </message> <message> - <source>Error writing response to device</source> - <translation>Erreur lors de l'écriture de la réponse</translation> + <source>Unable to preserve appearance under non-uniform scale</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy authentication required</source> - <translation>Le proxy requiert une authentification</translation> + <source>Unable to preserve appearance under scale of 0</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeParser</name> <message> - <source>Authentication required</source> - <translation>Authentification requise</translation> + <source>Illegal unicode escape sequence</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy requires authentication</source> - <translation>Le proxy requiert une authentification</translation> + <source>Illegal character</source> + <translation type="unfinished"></translation> </message> <message> - <source>Host requires authentication</source> - <translation>L'hôte requiert une authentification</translation> + <source>Unclosed string at end of line</source> + <translation type="unfinished"></translation> </message> <message> - <source>Data corrupted</source> - <translation>Données corrompues</translation> + <source>Illegal escape squence</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown protocol specified</source> - <translation>Protocole spécifié inconnu</translation> + <source>Unclosed comment at end of file</source> + <translation type="unfinished"></translation> </message> <message> - <source>SSL handshake failed</source> - <translation>le handshake SSL a échoué</translation> + <source>Illegal syntax for exponential number</source> + <translation type="unfinished"></translation> </message> <message> - <source>Connection refused (or timed out)</source> - <translation>Connexion refusée (ou délai expiré)</translation> + <source>Identifier cannot start with numeric literal</source> + <translation type="unfinished"></translation> </message> <message> - <source>HTTPS connection requested but SSL support not compiled in</source> - <translation>Connexion HTTPS requise mais le support SSL n'est pas compilé</translation> + <source>Unterminated regular expression literal</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QHttpSocketEngine</name> <message> - <source>Did not receive HTTP response from proxy</source> - <translation>Pas de réponse HTTP de la part du proxy</translation> + <source>Invalid regular expression flag '%0'</source> + <translation type="unfinished"></translation> </message> <message> - <source>Error parsing authentication request from proxy</source> - <translation>Erreur dans le reqête d'authentification reçue du proxy</translation> + <source>Unterminated regular expression backslash sequence</source> + <translation type="unfinished"></translation> </message> <message> - <source>Authentication required</source> - <translation>Authentification requise</translation> + <source>Unterminated regular expression class</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy denied connection</source> - <translation>Le Proxy a rejeté la connexion</translation> + <source>Syntax error</source> + <translation type="unfinished"></translation> </message> <message> - <source>Error communicating with HTTP proxy</source> - <translation>Erreur de communication avec le proxy HTTP</translation> + <source>Unexpected token `%1'</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy server not found</source> - <translation>Serveur proxy introuvable</translation> + <source>Expected token `%1'</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy connection refused</source> - <translation>Connexion au proxy refusée</translation> + <source>Property value set multiple times</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy server connection timed out</source> - <translation>La connexion au serveur proxy a expiré</translation> + <source>Expected type name</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy connection closed prematurely</source> - <translation>La connexion au serveur proxy a été fermée prématurément</translation> + <source>Invalid import qualifier ID</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QIBaseDriver</name> <message> - <source>Error opening database</source> - <translation>Erreur d'ouverture de la base de données</translation> + <source>Reserved name "Qt" cannot be used as an qualifier</source> + <translation type="unfinished"></translation> </message> <message> - <source>Could not start transaction</source> - <translation>La transaction n'a pas pu être démarrée</translation> + <source>Script import qualifiers must be unique.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to commit transaction</source> - <translation>Incapable de soumettre la transaction</translation> + <source>Script import requires a qualifier</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to rollback transaction</source> - <translation>Incapable d'annuler la transaction</translation> + <source>Library import requires a version</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QIBaseResult</name> <message> - <source>Unable to create BLOB</source> - <translation>Impossible de créer un BLOB</translation> + <source>Expected parameter type</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to write BLOB</source> - <translation>Impossible d'écrire le BLOB</translation> + <source>Invalid property type modifier</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to open BLOB</source> - <translation>Impossible d'ouvrir le BLOB</translation> + <source>Unexpected property type modifier</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to read BLOB</source> - <translation>Impossible de lire le BLOB</translation> + <source>Expected property type</source> + <translation type="unfinished"></translation> </message> <message> - <source>Could not find array</source> - <translation>Impossible de trouver le tableau</translation> + <source>Readonly not yet supported</source> + <translation type="unfinished"></translation> </message> <message> - <source>Could not get array data</source> - <translation>Impossible de trouver le tableau de données</translation> + <source>JavaScript declaration outside Script element</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativePauseAnimation</name> <message> - <source>Could not get query info</source> - <translation>Impossible d'avoir les informations sur la requête</translation> + <source>Cannot set a duration of < 0</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativePixmapCache</name> <message> - <source>Could not start transaction</source> - <translation>Impossible de démarrer la transaction</translation> + <source>Error decoding: %1: %2</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to commit transaction</source> - <translation>Incapable de soumettre la transaction</translation> + <source>Failed to get image from provider: %1</source> + <translation type="unfinished"></translation> </message> <message> - <source>Could not allocate statement</source> - <translation>Impossible d'allouer la requête</translation> + <source>Cannot open: %1</source> + <translation type="unfinished"></translation> </message> <message> - <source>Could not prepare statement</source> - <translation>Impossible de préparer la requête</translation> + <source>Unknown Error loading %1</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativePropertyAnimation</name> <message> - <source>Could not describe input statement</source> - <translation>Impossible de décrire la requête</translation> + <source>Cannot set a duration of < 0</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativePropertyChanges</name> <message> - <source>Could not describe statement</source> - <translation>Impossible de décrire la requête</translation> + <source>PropertyChanges does not support creating state-specific objects.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to close statement</source> - <translation>Impossible de fermer la requête</translation> + <source>Cannot assign to non-existent property "%1"</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unable to execute query</source> - <translation>Impossible d'exécuter la requête</translation> + <source>Cannot assign to read-only property "%1"</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeTextInput</name> <message> - <source>Could not fetch next item</source> - <translation>Impossible de récuperer l'élément suivant</translation> + <source>Could not load cursor delegate</source> + <translation type="unfinished"></translation> </message> <message> - <source>Could not get statement info</source> - <translation>Impossible d'avoir les informations sur la requête</translation> + <source>Could not instantiate cursor delegate</source> + <translation type="unfinished"></translation> </message> </context> <context> - <name>QIODevice</name> + <name>QDeclarativeVME</name> <message> - <source>Permission denied</source> - <translation>Accès refusé</translation> + <source>Unable to create object of type %1</source> + <translation type="unfinished"></translation> </message> <message> - <source>Too many open files</source> - <translation>Trop de fichiers ouverts simultanément</translation> + <source>Cannot assign value %1 to property %2</source> + <translation type="unfinished"></translation> </message> <message> - <source>No such file or directory</source> - <translation>Aucun fichier ou dossier de ce nom</translation> + <source>Cannot assign object type %1 with no default method</source> + <translation type="unfinished"></translation> </message> <message> - <source>No space left on device</source> - <translation>Aucun espace disponible sur le périphérique</translation> + <source>Cannot connect mismatched signal/slot %1 %vs. %2</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>Cannot assign an object to signal property %1</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QInputContext</name> <message> - <source>XIM</source> - <translation>XIM</translation> + <source>Cannot assign object to list</source> + <translation type="unfinished"></translation> </message> <message> - <source>XIM input method</source> - <translation>Méthode d'entrée XIM</translation> + <source>Cannot assign object to interface property</source> + <translation type="unfinished"></translation> </message> <message> - <source>Windows input method</source> - <translation>Méthode d'entrée Windows</translation> + <source>Unable to create attached object</source> + <translation type="unfinished"></translation> </message> <message> - <source>Mac OS X input method</source> - <translation>Méthode d'entrée Mac OS X</translation> + <source>Cannot set properties on %1 as it is null</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeVisualDataModel</name> <message> - <source>FEP</source> - <translation>Processeur frontal</translation> + <source>Delegate component must be Item type.</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDeclarativeXmlListModel</name> <message> - <source>S60 FEP input method</source> - <translation>Méthode de saisie processeur frontal S60</translation> + <source>Qt was built without support for xmlpatterns</source> + <translation type="unfinished"></translation> </message> </context> <context> - <name>QInputDialog</name> + <name>QDeclarativeXmlListModelRole</name> <message> - <source>Enter a value:</source> - <translation>Entrer une valeur :</translation> + <source>An XmlRole query must not start with '/'</source> + <translation type="unfinished"></translation> </message> </context> <context> - <name>QLibrary</name> + <name>QDeclarativeXmlRoleList</name> <message> - <source>QLibrary::load_sys: Cannot load %1 (%2)</source> - <translation type="obsolete">QLibrary::load_sys: Impossible de charger %1 (%2)</translation> + <source>An XmlListModel query must start with '/' or "//"</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QDial</name> <message> - <source>QLibrary::unload_sys: Cannot unload %1 (%2)</source> - <translation type="obsolete">QLibrary::unload_sys: Impossible de décharger %1 (%2)</translation> + <source>QDial</source> + <translation>QDial</translation> </message> <message> - <source>QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3)</source> - <translation type="obsolete">QLibrary::resolve_sys: Symbole "%1" non défini dans %2 (%3)</translation> + <source>SpeedoMeter</source> + <translation>Tachymètre</translation> </message> <message> - <source>Could not mmap '%1': %2</source> - <translation>Impossible d'établir la projection en mémoire de '%1' : %2</translation> + <source>SliderHandle</source> + <translation>Poignée</translation> </message> +</context> +<context> + <name>QDialog</name> <message> - <source>Plugin verification data mismatch in '%1'</source> - <translation>Données de vérification du plugin différente dans '%1'</translation> + <source>What's This?</source> + <translation>Qu'est-ce que c'est ?</translation> </message> <message> - <source>Could not unmap '%1': %2</source> - <translation>Impossible de supprimer la projection en mémoire de '%1' : %2</translation> + <source>Done</source> + <translation>Terminer</translation> </message> +</context> +<context> + <name>QDialogButtonBox</name> <message> - <source>The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]</source> - <translation>Le plugin '%1' utilise une bibliothèque Qt incompatible. (%2.%3.%4) [%5]</translation> + <source>OK</source> + <translation>OK</translation> </message> <message> - <source>The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"</source> - <translation>Le plugin '%1' utilise une bibliothèque Qt incompatible. Clé attendue "%2", reçue "%3"</translation> + <source>Save</source> + <translation>Enregistrer</translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>&Save</source> + <translation>Enregi&strer</translation> </message> <message> - <source>The shared library was not found.</source> - <translation>La bibliothèque partagée est introuvable.</translation> + <source>Open</source> + <translation>Ouvrir</translation> </message> <message> - <source>The file '%1' is not a valid Qt plugin.</source> - <translation>Le fichier '%1' n'est pas un plugin Qt valide.</translation> + <source>Cancel</source> + <translation>Annuler</translation> </message> <message> - <source>The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)</source> - <translation>Le plugin '%1' utilise une bibliothèque Qt incompatible. (Il est impossible de mélanger des bibliothèques 'debug' et 'release'.)</translation> + <source>&Cancel</source> + <translation>&Annuler</translation> </message> <message> - <source>Cannot load library %1: %2</source> - <translation>Impossible de charger la bibliothèque %1 : %2</translation> + <source>Close</source> + <translation>Fermer</translation> </message> <message> - <source>Cannot unload library %1: %2</source> - <translation>Impossible de décharger la bibliothèque %1 : %2</translation> + <source>&Close</source> + <translation>&Fermer</translation> </message> <message> - <source>Cannot resolve symbol "%1" in %2: %3</source> - <translation>Impossible de résoudre le symbole "%1" dans %2 : %3</translation> + <source>Apply</source> + <translation>Appliquer</translation> </message> -</context> -<context> - <name>QLineEdit</name> <message> - <source>Select All</source> - <translation>Tout sélectionner</translation> + <source>Reset</source> + <translation>Réinitialiser</translation> </message> <message> - <source>&Undo</source> - <translation>&Annuler</translation> + <source>Help</source> + <translation>Aide</translation> </message> <message> - <source>&Redo</source> - <translation>&Rétablir</translation> + <source>Don't Save</source> + <translation>Ne pas enregistrer</translation> </message> <message> - <source>Cu&t</source> - <translation>Co&uper</translation> + <source>Discard</source> + <translation>Ne pas enregistrer</translation> </message> <message> - <source>&Copy</source> - <translation>Cop&ier</translation> + <source>&Yes</source> + <translation>&Oui</translation> </message> <message> - <source>&Paste</source> - <translation>Co&ller</translation> + <source>Yes to &All</source> + <translation>Oui à &tout</translation> </message> <message> - <source>Delete</source> - <translation>Supprimer</translation> + <source>&No</source> + <translation>&Non</translation> </message> -</context> -<context> - <name>QLocalServer</name> <message> - <source>%1: Name error</source> - <translation>%1: Erreur de nom</translation> + <source>N&o to All</source> + <translation>Non à to&ut</translation> </message> <message> - <source>%1: Permission denied</source> - <translation>%1: Permission refusée</translation> + <source>Save All</source> + <translation>Tout Enregistrer</translation> </message> <message> - <source>%1: Address in use</source> - <translation>%1: Address déjà utilisée</translation> + <source>Abort</source> + <translation>Abandonner</translation> </message> <message> - <source>%1: Unknown error %2</source> - <translation>%1: Erreur inconnue %2</translation> + <source>Retry</source> + <translation>Réessayer</translation> </message> -</context> -<context> - <name>QLocalSocket</name> <message> - <source>%1: Connection refused</source> - <translation>%1: Connexion refusée</translation> + <source>Ignore</source> + <translation>Ignorer</translation> </message> <message> - <source>%1: Remote closed</source> - <translation>%1: Connexion fermée</translation> + <source>Restore Defaults</source> + <translation>Restaurer les valeurs par défaut</translation> </message> <message> - <source>%1: Invalid name</source> - <translation>%1: Nom invalide</translation> + <source>Close without Saving</source> + <translation>Fermer sans enregistrer</translation> </message> <message> - <source>%1: Socket access error</source> - <translation>%1: Erreur d'accès au socket</translation> + <source>&OK</source> + <translation>&OK</translation> </message> +</context> +<context> + <name>QDirModel</name> <message> - <source>%1: Socket resource error</source> - <translation>%1: Erreur de ressource du socket</translation> + <source>Name</source> + <translation>Nom</translation> </message> <message> - <source>%1: Socket operation timed out</source> - <translation>%1: L'opération socket a expiré</translation> + <source>Size</source> + <translation>Taille</translation> </message> <message> - <source>%1: Datagram too large</source> - <translation>%1: Datagramme trop grand</translation> + <source>Kind</source> + <comment>Match OS X Finder</comment> + <translation>Type</translation> </message> <message> - <source>%1: Connection error</source> - <translation>%1: Erreur de connexion</translation> + <source>Type</source> + <comment>All other platforms</comment> + <translation>Type</translation> </message> <message> - <source>%1: The socket operation is not supported</source> - <translation>%1: L'opération n'est pas supportée</translation> + <source>Date Modified</source> + <translation>Dernière Modification</translation> </message> <message> - <source>%1: Unknown error</source> - <translation>%1 : erreur inconnue</translation> + <source>Kind</source> + <translation type="obsolete">Type</translation> </message> <message> - <source>%1: Unknown error %2</source> - <translation>%1: Erreur inconnue %2</translation> + <source>Type</source> + <translation type="obsolete">Type</translation> </message> </context> <context> - <name>QMYSQLDriver</name> + <name>QDockWidget</name> <message> - <source>Unable to open database '</source> - <translation>Impossible d'ouvrir la base de données '</translation> + <source>Close</source> + <translation>Fermer</translation> </message> <message> - <source>Unable to connect</source> - <translation>Impossible d'établir une connexion</translation> + <source>Dock</source> + <translation>Attacher</translation> </message> <message> - <source>Unable to begin transaction</source> - <translation>Impossible de démarrer la transaction</translation> + <source>Float</source> + <translation>Détacher</translation> </message> +</context> +<context> + <name>QDoubleSpinBox</name> <message> - <source>Unable to commit transaction</source> - <translation>Impossible de soumettre la transaction</translation> + <source>More</source> + <translation>Plus</translation> </message> <message> - <source>Unable to rollback transaction</source> - <translation>Impossible d'annuler la transaction</translation> + <source>Less</source> + <translation>Moins</translation> </message> </context> <context> - <name>QMYSQLResult</name> + <name>QErrorMessage</name> <message> - <source>Unable to fetch data</source> - <translation>Impossible de récuperer des données</translation> + <source>&Show this message again</source> + <translation>&Afficher ce message de nouveau</translation> </message> <message> - <source>Unable to execute query</source> - <translation>Impossible d'exécuter la requête</translation> + <source>&OK</source> + <translation>&OK</translation> </message> <message> - <source>Unable to store result</source> - <translation>Impossible de stocker le résultat</translation> + <source>Debug Message:</source> + <translation>Message de débogage:</translation> </message> <message> - <source>Unable to prepare statement</source> - <translation>Impossible de préparer l'instruction</translation> + <source>Warning:</source> + <translation>Avertissement:</translation> </message> <message> - <source>Unable to reset statement</source> - <translation>Impossible de réinitialiser l'instruction</translation> + <source>Fatal Error:</source> + <translation>Erreur fatale:</translation> </message> +</context> +<context> + <name>QFile</name> <message> - <source>Unable to bind value</source> - <translation>Impossible d'attacher la valeur</translation> + <source>Destination file exists</source> + <translation>Le fichier destination existe</translation> </message> <message> - <source>Unable to execute statement</source> - <translation>Impossible d'exécuter la requête</translation> + <source>Cannot remove source file</source> + <translation>Impossible de supprimer le fichier source</translation> </message> <message> - <source>Unable to bind outvalues</source> - <translation>Impossible d'attacher les valeurs de sortie</translation> + <source>Cannot open %1 for input</source> + <translation>Impossible d'ouvrir %1 pour lecture</translation> </message> <message> - <source>Unable to store statement results</source> - <translation>Impossible de stocker les résultats de la requête</translation> + <source>Cannot open for output</source> + <translation>Impossible d'ouvrir pour écriture</translation> </message> <message> - <source>Unable to execute next query</source> - <translation>Impossible d'exécuterla prochaine requête</translation> + <source>Failure to write block</source> + <translation>Impossible d'écrire un bloc</translation> </message> <message> - <source>Unable to store next result</source> - <translation>Impossible de stocker le prochain résultat</translation> + <source>Cannot create %1 for output</source> + <translation>Impossible de créer %1 pour écriture</translation> </message> -</context> -<context> - <name>QMdiArea</name> <message> - <source>(Untitled)</source> - <translation>(Sans titre)</translation> + <source>Will not rename sequential file using block copy</source> + <translation>Ne renommera pas le fichier séquentiel avec la copie bloc</translation> </message> </context> <context> - <name>QMdiSubWindow</name> + <name>QFileDialog</name> <message> - <source>%1 - [%2]</source> - <translation>%1 - [%2]</translation> + <source>Back</source> + <translation>Précédent (historique)</translation> </message> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>List View</source> + <translation>Affichage liste</translation> </message> <message> - <source>Minimize</source> - <translation>Réduire</translation> + <source>Detail View</source> + <translation>Affichage détaillé</translation> </message> <message> - <source>Restore Down</source> - <translation>Restaurer en bas</translation> + <source>Open</source> + <translation>Ouvrir</translation> </message> <message> - <source>&Restore</source> - <translation>&Restaurer</translation> + <source>&Open</source> + <translation>&Ouvrir</translation> </message> <message> - <source>&Move</source> - <translation>&Déplacer</translation> + <source>&Save</source> + <translation>&Enregistrer</translation> </message> <message> - <source>&Size</source> - <translation>&Taille</translation> + <source>&Rename</source> + <translation>&Renommer</translation> </message> <message> - <source>Mi&nimize</source> - <translation>Réd&uire</translation> + <source>&Delete</source> + <translation>Suppri&mer</translation> </message> <message> - <source>Ma&ximize</source> - <translation>Ma&ximiser</translation> + <source>Show &hidden files</source> + <translation>Afficher les fic&hiers cachés</translation> </message> <message> - <source>Stay on &Top</source> - <translation>&Rester au premier plan</translation> - </message> + <source>Directories</source> + <translation>Dossiers</translation> + </message> <message> - <source>&Close</source> - <translation>&Fermer</translation> + <source>Recent Places</source> + <translation>Emplacements récents</translation> </message> <message> - <source>- [%1]</source> - <translation>- [%1]</translation> + <source>All Files (*)</source> + <translation>Tous les fichiers (*)</translation> </message> <message> - <source>Maximize</source> - <translation>Maximiser</translation> + <source>%1 already exists. +Do you want to replace it?</source> + <translation>Le fichier %1 existe déjà. Voulez-vous l'écraser ?</translation> </message> <message> - <source>Unshade</source> - <translation>Restaurer</translation> + <source>%1 +File not found. +Please verify the correct file name was given.</source> + <translation>%1 +Fichier introuvable. +Veuillez vérifier que le nom du fichier est correct.</translation> </message> <message> - <source>Shade</source> - <translation>Ombrer</translation> + <source>My Computer</source> + <translation>Poste de travail</translation> </message> <message> - <source>Restore</source> - <translation>Restaurer</translation> + <source>Parent Directory</source> + <translation>Dossier parent</translation> </message> <message> - <source>Help</source> - <translation>Aide</translation> + <source>Files of type:</source> + <translation>Fichiers de type :</translation> </message> <message> - <source>Menu</source> - <translation>Menu</translation> + <source>Directory:</source> + <translation>Dossier :</translation> </message> -</context> -<context> - <name>QMenu</name> <message> - <source>Close</source> - <translation>Fermer</translation> + <source> +File not found. +Please verify the correct file name was given</source> + <translation type="obsolete"> +Fichier introuvable. +Veuillez vérifier que le nom du fichier est correct</translation> </message> <message> - <source>Open</source> - <translation>Ouvrir</translation> + <source>%1 +Directory not found. +Please verify the correct directory name was given.</source> + <translation>%1 +Dossier introuvable. +Veuillez vérifier que le nom du dossier est correct.</translation> </message> <message> - <source>Execute</source> - <translation>Exécuter</translation> + <source>'%1' is write protected. +Do you want to delete it anyway?</source> + <translation>'%1' est protégé en écriture. +Voulez-vous quand même le supprimer ?</translation> </message> -</context> -<context> - <name>QMenuBar</name> <message> - <source>About</source> - <translation type="obsolete">A propos</translation> + <source>Are sure you want to delete '%1'?</source> + <translation>Etes-vous sûr de vouloir supprimer '%1' ?</translation> </message> <message> - <source>Config</source> - <translation type="obsolete">Configuration</translation> + <source>Could not delete directory.</source> + <translation>Impossible de supprimer le dossier.</translation> </message> <message> - <source>Preference</source> - <translation type="obsolete">Préférence</translation> + <source>All Files (*.*)</source> + <translation>Tous les fichiers (*.*)</translation> </message> <message> - <source>Options</source> - <translation type="obsolete">Options</translation> + <source>Save As</source> + <translation>Enregistrer sous</translation> </message> <message> - <source>Setting</source> - <translation type="obsolete">Paramètre</translation> + <source>Drive</source> + <translation>Unité</translation> </message> <message> - <source>Setup</source> - <translation type="obsolete">Réglage</translation> + <source>File</source> + <translation>Fichier</translation> </message> <message> - <source>Quit</source> - <translation type="obsolete">Quitter</translation> + <source>File Folder</source> + <comment>Match Windows Explorer</comment> + <translation>Fichier Dossier</translation> </message> <message> - <source>Exit</source> - <translation type="obsolete">Quitter</translation> + <source>Folder</source> + <comment>All other platforms</comment> + <translation>Dossier</translation> </message> <message> - <source>About %1</source> - <translation type="obsolete">A propos de %1</translation> + <source>Alias</source> + <comment>Mac OS X Finder</comment> + <translation>Alias</translation> </message> <message> - <source>About Qt</source> - <translation type="obsolete">À propos de Qt</translation> + <source>Shortcut</source> + <comment>All other platforms</comment> + <translation>Raccourci</translation> </message> <message> - <source>Preferences</source> - <translation type="obsolete">Préférences</translation> + <source>Unknown</source> + <translation>Inconnu</translation> </message> <message> - <source>Quit %1</source> - <translation type="obsolete">Quitter %1</translation> + <source>Find Directory</source> + <translation>Chercher dans le dossier</translation> </message> <message> - <source>Actions</source> - <translation>Actions</translation> + <source>Show </source> + <translation>Afficher</translation> </message> -</context> -<context> - <name>QMessageBox</name> <message> - <source>OK</source> - <translation>OK</translation> + <source>Forward</source> + <translation>Successeur</translation> </message> <message> - <source>About Qt</source> - <translation>À propos de Qt</translation> + <source>New Folder</source> + <translation>Nouveau dossier</translation> </message> <message> - <source>Help</source> - <translation>Aide</translation> + <source>&New Folder</source> + <translation>&Nouveau dossier</translation> </message> <message> - <source><p>This program uses Qt version %1.</p></source> - <translation type="obsolete"><p>Ce programme utilise la version %1 de Qt.</p></translation> + <source>&Choose</source> + <translation>&Choisir</translation> </message> <message> - <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com/</a> for more information.</p></source> - <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'applications multi-platformes.</p><p>Qt fournit la portabilité du code source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et toutes les variantes commerciales majeures d'Unix. Qt est aussi disponible pour les systèmes embarqués sous le nom Qtopia Core.</p><p>Qt est un produit de Trolltech. <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></translation> + <source>Remove</source> + <translation>Supprimer</translation> </message> <message> - <source>Show Details...</source> - <translation>Montrer les détails...</translation> + <source>File &name:</source> + <translation>&Nom de fichier :</translation> </message> <message> - <source>Hide Details...</source> - <translation>Cacher les détails...</translation> + <source>Look in:</source> + <translation>Voir dans:</translation> </message> <message> - <location filename="../src/gui/dialogs/qmessagebox.cpp" line="+1693"/> - <source><h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation><h3>À propos de Qt</h3><p>Ce programme utilise Qt version %1.</p><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés tels que Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> + <source>Create New Folder</source> + <translation>Créer un nouveau dossier</translation> </message> <message> - <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un framework de développement d'applications multi-plateforme.</p><p>Qt fournit la portabilité du code source surMS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, et toutes les variantes majeures d'Unix. Qt est aussi disponible pour l'embarqué avec Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt est un produit de Nokia. Allez à <a href="http://qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> + <source>File Folder</source> + <translation type="obsolete">Fichier Dossier</translation> </message> <message> - <source><p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> for an overview of Qt licensing.</p></source> - <translation type="obsolete"><p>Ce programme utilise Qt Open Source Edition version %1.</p><p>Qt Open Source Edition est prévu pour le développement d'applications Open Source. Vous devez avoir un license commerciale de Qt pour développer des applications propiétaires (Closed Source).</p><p>Vous pouvez aller sur <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> pour plus d'informations sur les licenses Qt.</p></translation> + <source>Folder</source> + <translation type="obsolete">Dossier</translation> </message> <message> - <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt Embedded.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'application multi-plateforme.</p><p>Qt fournit la portabilité de votre source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, toutes les variantes majeures d'Unix. Qt est aussi disponible pour les périphériques embarqués avec Qt Embedded.</p><p>Qt est un produit de Trolltech. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> + <source>Alias</source> + <translation type="obsolete">Alias</translation> </message> <message> - <source><h3>About Qt</h3><p>This program uses Qt version %1.</p></source> - <translation><h3>À propos de Qt</h3><p>Ce programme utilise Qt version %1.</p></translation> + <source>Shortcut</source> + <translation type="obsolete">Raccourci</translation> </message> <message> - <source><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés tels que Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> + <source>Go back</source> + <translation>Précédent</translation> </message> -</context> -<context> - <name>QMultiInputContext</name> <message> - <source>Select IM</source> - <translation>Sélectionner IM</translation> + <source>Go forward</source> + <translation>Suivant</translation> </message> -</context> -<context> - <name>QMultiInputContextPlugin</name> <message> - <source>Multiple input method switcher</source> - <translation>Sélectionneur de méthode de saisie</translation> + <source>Go to the parent directory</source> + <translation>Dossier parent</translation> </message> <message> - <source>Multiple input method switcher that uses the context menu of the text widgets</source> - <translation>Sélectionneur de méthode de saisie qui utilise le menu contextuel des widgets de texte</translation> + <source>Create a New Folder</source> + <translation>Créer un nouveau dossier</translation> </message> -</context> -<context> - <name>QNativeSocketEngine</name> <message> - <source>The remote host closed the connection</source> - <translation>L'hôte distant a fermé la connexion</translation> + <source>Change to list view mode</source> + <translation>Affichage liste</translation> </message> <message> - <source>Network operation timed out</source> - <translation>L'opération réseau a expiré</translation> + <source>Change to detail view mode</source> + <translation>Affichage détaillé</translation> </message> +</context> +<context> + <name>QFileSystemModel</name> <message> - <source>Out of resources</source> - <translation>Manque de ressources</translation> + <source>%1 TB</source> + <translation>%1 To</translation> </message> <message> - <source>Unsupported socket operation</source> - <translation>Opération socket non supportée</translation> + <source>%1 GB</source> + <translation>%1 Go</translation> </message> <message> - <source>Protocol type not supported</source> - <translation>Protocol non géré</translation> + <source>%1 MB</source> + <translation>%1 Mo</translation> </message> <message> - <source>Invalid socket descriptor</source> - <translation>Descripteur de socket invalide</translation> + <source>%1 KB</source> + <translation>%1 Ko</translation> </message> <message> - <source>Network unreachable</source> - <translation>Réseau impossible à rejoindre</translation> + <source>%1 bytes</source> + <translation>%1 octets</translation> </message> <message> - <source>Permission denied</source> - <translation>Accès refusé</translation> + <source>Invalid filename</source> + <translation>Nom de fichier invalide</translation> </message> <message> - <source>Connection timed out</source> - <translation>Connexion expirée</translation> + <source><b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks.</source> + <translation><b>Le nom "%1" ne peut pas être utilisé.</b><p>Essayez un autre nom avec moins de caractères ou sans ponctuation.</translation> </message> <message> - <source>Connection refused</source> - <translation>Connexion refusée</translation> + <source>Name</source> + <translation>Nom</translation> </message> <message> - <source>The bound address is already in use</source> - <translation>L'adresse liée est déjà en usage</translation> + <source>Size</source> + <translation>Taille</translation> </message> <message> - <source>The address is not available</source> - <translation>L'adresse n'est pas disponible</translation> + <source>Kind</source> + <comment>Match OS X Finder</comment> + <translation>Type</translation> </message> <message> - <source>The address is protected</source> - <translation>L'adresse est protégée</translation> + <source>Type</source> + <comment>All other platforms</comment> + <translation>Type</translation> </message> <message> - <source>Unable to send a message</source> - <translation>Impossible d'envoyer un message</translation> + <source>Date Modified</source> + <translation>Dernière modification</translation> </message> <message> - <source>Unable to receive a message</source> - <translation>Impossible de recevoir un message</translation> + <source>My Computer</source> + <translation>Poste de travail</translation> </message> <message> - <source>Unable to write</source> - <translation>Impossible d'écrire</translation> + <source>Computer</source> + <translation>Ordinateur</translation> </message> <message> - <source>Network error</source> - <translation>Erreur réseau</translation> - </message> - <message> - <source>Another socket is already listening on the same port</source> - <translation>Un autre socket écoute déjà sur le même port</translation> - </message> - <message> - <source>Unable to initialize non-blocking socket</source> - <translation>Impossible d'initialiser le socket asynchrone</translation> + <source>Kind</source> + <translation type="obsolete">Type</translation> </message> <message> - <source>Unable to initialize broadcast socket</source> - <translation>Impossible d'initialiser le socket broadcast</translation> + <source>Type</source> + <translation type="obsolete">Type</translation> </message> <message> - <source>Attempt to use IPv6 socket on a platform with no IPv6 support</source> - <translation>Tentative d'utiliser un socket IPv6 sur une plateforme qui ne supporte pas IPv6</translation> + <source>%1 byte(s)</source> + <translation>%1 octet(s)</translation> </message> +</context> +<context> + <name>QFontDatabase</name> <message> - <source>Host unreachable</source> - <translation>Hôte inaccessible</translation> + <source>Normal</source> + <translation>Normal</translation> </message> <message> - <source>Datagram was too large to send</source> - <translation>Le datagramme était trop grand pour être envoyé</translation> + <source>Bold</source> + <translation>Gras</translation> </message> <message> - <source>Operation on non-socket</source> - <translation>Operation sur non-socket</translation> + <source>Demi Bold</source> + <translation>Semi Gras</translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>Black</source> + <translation>Noir</translation> </message> <message> - <source>The proxy type is invalid for this operation</source> - <translation>Le type de proxy est invalide pour cette opération</translation> + <source>Demi</source> + <translation>Demi</translation> </message> -</context> -<context> - <name>QNetworkAccessCacheBackend</name> <message> - <source>Error opening %1</source> - <translation>Erreur lors de l'ouverture de %1</translation> + <source>Light</source> + <translation>Léger</translation> </message> -</context> -<context> - <name>QNetworkAccessFileBackend</name> <message> - <source>Request for opening non-local file %1</source> - <translation>Requête d'ouverture de fichier distant %1</translation> + <source>Italic</source> + <translation>Italique</translation> </message> <message> - <source>Error opening %1: %2</source> - <translation>Erreur lors de l'ouverture de %1 : %2</translation> + <source>Oblique</source> + <translation>Oblique</translation> </message> <message> - <source>Write error writing to %1: %2</source> - <translation>Erreur d'écriture de %1 : %2</translation> + <source>Any</source> + <translation>Tous</translation> </message> <message> - <source>Cannot open %1: Path is a directory</source> - <translation>Impossible d'ouvrir %1 : le chemin est un dossier</translation> + <source>Latin</source> + <translation>Latin</translation> </message> <message> - <source>Read error reading from %1: %2</source> - <translation>Erreur de lecture de %1 : %2</translation> + <source>Greek</source> + <translation>Grec</translation> </message> -</context> -<context> - <name>QNetworkAccessFtpBackend</name> <message> - <source>No suitable proxy found</source> - <translation>Aucun proxy trouvé</translation> + <source>Cyrillic</source> + <translation>Cyrillique</translation> </message> <message> - <source>Cannot open %1: is a directory</source> - <translation>Impossible d'ouvrir %1 : le chemin est un dossier</translation> + <source>Armenian</source> + <translation>Arménien</translation> </message> <message> - <source>Logging in to %1 failed: authentication required</source> - <translation>Connexion à %1 a échoué : authentification requise</translation> + <source>Hebrew</source> + <translation>Hébreu</translation> </message> <message> - <source>Error while downloading %1: %2</source> - <translation>Erreur lors du téléchargement de %1 : %2</translation> + <source>Arabic</source> + <translation>Arabe</translation> </message> <message> - <source>Error while uploading %1: %2</source> - <translation>Erreur lors de l'envoi de %1 : %2</translation> + <source>Syriac</source> + <translation>Syriaque</translation> </message> -</context> -<context> - <name>QNetworkAccessHttpBackend</name> <message> - <source>No suitable proxy found</source> - <translation>Aucun proxy trouvé</translation> + <source>Thaana</source> + <translation>Thaana</translation> </message> -</context> -<context> - <name>QNetworkReply</name> <message> - <source>Error downloading %1 - server replied: %2</source> - <translation>Erreur lors du téléchargement de %1 - le serveur a répondu: %2</translation> + <source>Devanagari</source> + <translation>Devanagari</translation> </message> <message> - <source>Protocol "%1" is unknown</source> - <translation>Le protocole "%1" est inconnu</translation> + <source>Bengali</source> + <translation>Bengali</translation> </message> -</context> -<context> - <name>QNetworkReplyImpl</name> <message> - <source>Operation canceled</source> - <translation>Opération annulée</translation> + <source>Gurmukhi</source> + <translation>Gurmukhi</translation> </message> -</context> -<context> - <name>QOCIDriver</name> <message> - <source>Unable to logon</source> - <translation>Impossible d'ouvrir une session</translation> + <source>Gujarati</source> + <translation>Gujarati</translation> </message> <message> - <location filename="../src/sql/drivers/oci/qsql_oci.cpp" line="+1925"/> - <source>Unable to initialize</source> - <comment>QOCIDriver</comment> - <translation>L'initialisation a échoué</translation> + <source>Oriya</source> + <translation>Oriya</translation> </message> <message> - <source>Unable to begin transaction</source> - <translation>Impossible de démarrer la transaction</translation> + <source>Tamil</source> + <translation>Tamil</translation> </message> <message> - <source>Unable to commit transaction</source> - <translation>Impossible d'enregistrer la transaction</translation> + <source>Telugu</source> + <translation>Telugu</translation> </message> <message> - <source>Unable to rollback transaction</source> - <translation>Impossible d'annuler la transaction</translation> + <source>Kannada</source> + <translation>Kannada</translation> </message> <message> - <source>Unable to initialize</source> - <translation>L'initialisation a échoué</translation> + <source>Malayalam</source> + <translation>Malayalam</translation> </message> -</context> -<context> - <name>QOCIResult</name> <message> - <source>Unable to bind column for batch execute</source> - <translation>Impossible d'attacher la colonne pour une execution batch</translation> + <source>Sinhala</source> + <translation>Sinhala</translation> </message> <message> - <source>Unable to execute batch statement</source> - <translation>Impossible d'exécuter l'instruction batch</translation> + <source>Thai</source> + <translation>Thaï</translation> </message> <message> - <source>Unable to goto next</source> - <translation>Impossible de passer au suivant</translation> + <source>Lao</source> + <translatorcomment>Lao/Laotien sont corrects</translatorcomment> + <translation>Lao</translation> </message> <message> - <source>Unable to alloc statement</source> - <translation>Impossible d'allouer la requête</translation> + <source>Tibetan</source> + <translation>Tibétain</translation> </message> <message> - <source>Unable to prepare statement</source> - <translation>Impossible de préparer la requête</translation> + <source>Myanmar</source> + <translatorcomment>Myanmar/Birman sont corrects mais Myanmar semble plus adapté pour la langue écrite</translatorcomment> + <translation>Myanmar</translation> </message> <message> - <source>Unable to bind value</source> - <translation>Impossible d'attacher la valeur</translation> + <source>Georgian</source> + <translation>Géorgien</translation> </message> <message> - <source>Unable to execute select statement</source> - <translation type="obsolete">Impossible d'exéctuer la requête select</translation> + <source>Khmer</source> + <translation>Khmer</translation> </message> <message> - <source>Unable to execute statement</source> - <translation>Impossible d'exéctuer la requête</translation> + <source>Simplified Chinese</source> + <translation>Chinois Simplifié</translation> </message> <message> - <source>Unable to get statement type</source> - <translation>Impossible d'obtenir le type de la requête</translation> + <source>Traditional Chinese</source> + <translation>Chinois Traditionnel</translation> </message> -</context> -<context> - <name>QODBCDriver</name> <message> - <source>Unable to connect</source> - <translation>Incapable d'établir une connexion</translation> + <source>Japanese</source> + <translation>Japonais</translation> </message> <message> - <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="+1791"/> - <source>Unable to connect - Driver doesn't support all needed functionality</source> - <translation>Impossible de se connecter - Le pilote ne supporte pas toutes les fonctionnalités nécessaires</translation> + <source>Korean</source> + <translation>Coréen</translation> </message> <message> - <source>Unable to disable autocommit</source> - <translation>Impossible de désactiver l'autocommit</translation> + <source>Vietnamese</source> + <translation>Vietnamien</translation> </message> <message> - <source>Unable to commit transaction</source> - <translation>Incapable de soumettre la transaction</translation> + <source>Symbol</source> + <translation>Symbole</translation> </message> <message> - <source>Unable to rollback transaction</source> - <translation>Incapable d'annuler la transaction</translation> + <source>Ogham</source> + <translation>Ogham</translation> </message> <message> - <source>Unable to enable autocommit</source> - <translation>Impossible d'activer l'autocommit</translation> + <source>Runic</source> + <translation>Runique</translation> </message> <message> - <source>Unable to connect - Driver doesn't support all functionality required</source> - <translation>Impossible de se connecter - Le pilote ne supporte pas toutes les fonctionnalités nécessaires</translation> + <source>N'Ko</source> + <translation>N'Ko</translation> </message> </context> <context> - <name>QODBCResult</name> + <name>QFontDialog</name> <message> - <source>QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration</source> - <translation>QODBCResult::reset: Impossible d'utiliser 'SQL_CURSOR_STATIC' comme attribut de requête. Veuillez vérifier la configuration de votre pilote ODBC</translation> + <source>&Font</source> + <translation>&Police</translation> </message> <message> - <source>Unable to execute statement</source> - <translation>Impossible d'exéctuer la requête</translation> + <source>Font st&yle</source> + <translation>St&yle de police</translation> </message> <message> - <source>Unable to fetch next</source> - <translation>Impossible de récupérer le suivant</translation> + <source>&Size</source> + <translation>&Taille</translation> </message> <message> - <source>Unable to prepare statement</source> - <translation>Impossible de préparer la requête</translation> + <source>Effects</source> + <translation>Effets</translation> </message> <message> - <source>Unable to bind variable</source> - <translation>Impossible d'attacher la variable</translation> + <source>Stri&keout</source> + <translation>&Barré</translation> </message> <message> - <source>Unable to fetch last</source> - <translation>Impossible de récupérer le dernier</translation> + <source>&Underline</source> + <translation>&Souligné</translation> </message> <message> - <source>Unable to fetch</source> - <translation>Impossible de récupérer</translation> + <source>Sample</source> + <translation>Exemple</translation> </message> <message> - <source>Unable to fetch first</source> - <translation>Impossible de récupérer le premier</translation> + <source>Select Font</source> + <translation>Choisir une police</translation> </message> <message> - <source>Unable to fetch previous</source> - <translation>Impossible de récupérer le précedent</translation> - </message> + <source>Wr&iting System</source> + <translation>&Système d'écriture</translation> + </message> </context> <context> - <name>QObject</name> - <message> - <location filename="../src/gui/util/qdesktopservices_mac.cpp" line="+165"/> - <source>Home</source> - <translation>Début</translation> - </message> + <name>QFtp</name> <message> - <source>Operation not supported on %1</source> - <translation>Opération non supportée sur %1</translation> + <source>Host %1 found</source> + <translation>Hôte %1 trouvé</translation> </message> <message> - <source>Invalid URI: %1</source> - <translation>URI invalide : %1</translation> + <source>Host found</source> + <translation>Hôte trouvé</translation> </message> <message> - <location filename="../src/network/access/qnetworkaccessdebugpipebackend.cpp" line="+175"/> - <source>Write error writing to %1: %2</source> - <translation>Erreur d'écriture sur %1 : %2</translation> + <source>Connected to host %1</source> + <translation>Connecté à l'hôte %1</translation> </message> <message> - <location line="+57"/> - <source>Read error reading from %1: %2</source> - <translation>Erreur de lecture sur %1 : %2</translation> + <source>Connected to host</source> + <translation>Connecté à l'hôte</translation> </message> <message> - <source>Socket error on %1: %2</source> - <translation>Erreur de socket sur %1 : %2</translation> + <source>Connection to %1 closed</source> + <translation>Connexion à %1 arrêtée</translation> </message> <message> - <source>Remote host closed the connection prematurely on %1</source> - <translation>L'hôte distant a fermé sa connexion de façon prématurée sur %1</translation> + <source>Connection closed</source> + <translation>Connexion arrêtée</translation> </message> <message> - <location line="+99"/> - <source>Protocol error: packet of size 0 received</source> - <translation>Erreur de protocole: paquet de taille 0 reçu</translation> + <source>Host %1 not found</source> + <translation>Hôte %1 introuvable</translation> </message> <message> - <source>No host name given</source> - <translation>Nom d'hôte manquant</translation> + <source>Connection refused to host %1</source> + <translation>Connexion à l'hôte %1 refusée</translation> </message> <message> - <source>Invalid hostname</source> - <translation>Nom d'hôte non valide</translation> + <source>Connection timed out to host %1</source> + <translation>Connexion expirée vers l'hôte %1</translation> </message> -</context> -<context> - <name>QPPDOptionsModel</name> <message> - <source>Name</source> - <translation>Nom</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> <message> - <source>Value</source> - <translation>Valeur</translation> + <source>Connecting to host failed: +%1</source> + <translation>Échec de la connexion à l'hôte +%1</translation> </message> -</context> -<context> - <name>QPSQLDriver</name> <message> - <source>Unable to connect</source> - <translation>Impossible d'établir une connexion</translation> + <source>Login failed: +%1</source> + <translation>Échec du login: +%1</translation> </message> <message> - <source>Could not begin transaction</source> - <translation>Impossible de démarrer la transaction</translation> + <source>Listing directory failed: +%1</source> + <translation>Échec du listage du dossier : +%1</translation> </message> <message> - <source>Could not commit transaction</source> - <translation>Impossible de soumettre la transaction</translation> + <source>Changing directory failed: +%1</source> + <translation>Échec du changement de dossier : +%1</translation> </message> <message> - <source>Could not rollback transaction</source> - <translation>Impossible d'annuler la transaction</translation> + <source>Downloading file failed: +%1</source> + <translation>Échec du téléchargement du fichier : +%1</translation> </message> <message> - <source>Unable to subscribe</source> - <translation>Impossible de s'inscrire</translation> + <source>Uploading file failed: +%1</source> + <translation>Échec du télédéchargement : +%1</translation> </message> <message> - <source>Unable to unsubscribe</source> - <translation>Impossible de se désinscrire</translation> + <source>Removing file failed: +%1</source> + <translation>Échec de la suppression d'un fichier : +%1</translation> </message> -</context> -<context> - <name>QPSQLResult</name> <message> - <source>Unable to create query</source> - <translation>Impossible de créer la requête</translation> + <source>Creating directory failed: +%1</source> + <translation>Échec de la création d'un dossier : +%1</translation> </message> <message> - <source>Unable to prepare statement</source> - <translation>Impossible de préparer la requête</translation> + <source>Removing directory failed: +%1</source> + <translation>Échec de la suppression d'un dossier : +%1</translation> </message> -</context> -<context> - <name>QPageSetupWidget</name> <message> - <source>Centimeters (cm)</source> - <translation>Centimètres (cm)</translation> + <source>Not connected</source> + <translation>Non connecté</translation> </message> <message> - <source>Millimeters (mm)</source> - <translation>Millimètres (mm)</translation> + <source>Connection refused for data connection</source> + <translation>Connexion donnée refusée</translation> </message> +</context> +<context> + <name>QGstreamerPlayerSession</name> <message> - <source>Inches (in)</source> - <translation>Pouces (in)</translation> + <source>Unable to play %1</source> + <translation>Impossible de lire %1</translation> </message> +</context> +<context> + <name>QHostInfo</name> <message> - <source>Points (pt)</source> - <translation>Points (pts)</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> <message> - <source>Form</source> - <translation>Formulaire</translation> + <source>No host name given</source> + <translation>Aucun nom d'hôte n'a été donné</translation> </message> +</context> +<context> + <name>QHostInfoAgent</name> <message> - <source>Paper</source> - <translation>Papier</translation> + <source>Host not found</source> + <translation>Hôte introuvable</translation> </message> <message> - <source>Page size:</source> - <translation>Dimensions :</translation> + <source>Unknown address type</source> + <translation>Adresse de type inconnu</translation> </message> <message> - <source>Width:</source> - <translation>Largeur :</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> <message> - <source>Height:</source> - <translation>Hauteur :</translation> + <source>No host name given</source> + <translation>Aucun nom d'hôte n'a été donné</translation> </message> <message> - <source>Paper source:</source> - <translation>Source du papier :</translation> + <source>Invalid hostname</source> + <translation>Nom d'hôte non valide</translation> </message> +</context> +<context> + <name>QHttp</name> <message> - <source>Orientation</source> - <translation>Orientation</translation> + <source>Connection refused</source> + <translation>Connexion refusée</translation> </message> <message> - <source>Portrait</source> - <translation>Portrait</translation> + <source>Host %1 not found</source> + <translation>Hôte %1 introuvable</translation> </message> <message> - <source>Landscape</source> - <translation>Paysage</translation> + <source>Wrong content length</source> + <translation>Longueur du contenu invalide</translation> </message> <message> - <source>Reverse landscape</source> - <translation>Paysage inversé</translation> + <source>HTTP request failed</source> + <translation>Échec de la requête HTTP</translation> </message> <message> - <source>Reverse portrait</source> - <translation>Portrait inversé</translation> + <source>Host %1 found</source> + <translation>Hôte %1 trouvé</translation> </message> <message> - <source>Margins</source> - <translation>Marges</translation> + <source>Host found</source> + <translation>Hôte trouvé</translation> </message> <message> - <source>top margin</source> - <translation>marge haute</translation> + <source>Connected to host %1</source> + <translation>Connecté à l'hôte %1</translation> </message> <message> - <source>left margin</source> - <translation>marge gauche</translation> + <source>Connected to host</source> + <translation>Connecté à l'hôte</translation> </message> <message> - <source>right margin</source> - <translation>marge droite</translation> + <source>Connection to %1 closed</source> + <translation>Connexion à %1 arrêtée</translation> </message> <message> - <source>bottom margin</source> - <translation>marge basse</translation> + <source>Connection closed</source> + <translation>Connexion arrêtée</translation> </message> -</context> -<context> - <name>QPluginLoader</name> <message> <source>Unknown error</source> <translation>Erreur inconnue</translation> </message> <message> - <source>The plugin was not loaded.</source> - <translation>Le plugin n'a pas été chargé.</translation> + <source>Request aborted</source> + <translation>Requête interrompue</translation> </message> -</context> -<context> - <name>QPrintDialog</name> <message> - <source>locally connected</source> - <translation>connecté en local</translation> + <source>No server set to connect to</source> + <translation>Aucun serveur spécifié</translation> </message> <message> - <source>unknown</source> - <translation>inconnu</translation> + <source>Server closed connection unexpectedly</source> + <translation>Connexion interrompue par le serveur</translation> </message> <message> - <source>OK</source> - <translation>OK</translation> + <source>Invalid HTTP response header</source> + <translation>Entête de réponse HTTP invalide</translation> </message> <message> - <source>Cancel</source> - <translation type="obsolete">Annuler</translation> + <source>Unknown authentication method</source> + <translation>Méthode d'authentification inconnue</translation> </message> <message> - <source>Print in color if available</source> - <translation type="obsolete">Imprimer en couleur si possible</translation> + <source>Invalid HTTP chunked body</source> + <translation>Fragment HTTP invalide</translation> </message> <message> - <source>Print all</source> - <translation>Imprimer tout</translation> + <source>Error writing response to device</source> + <translation>Erreur lors de l'écriture de la réponse</translation> </message> <message> - <source>Print range</source> - <translation>Imprimer la sélection</translation> + <source>Proxy authentication required</source> + <translation>Le proxy requiert une authentification</translation> </message> <message> - <source>Print last page first</source> - <translation type="obsolete">Imprimer d'abord la dernière page</translation> + <source>Authentication required</source> + <translation>Authentification requise</translation> </message> <message> - <source>Number of copies:</source> - <translation type="obsolete">Nombre de copies :</translation> + <source>Proxy requires authentication</source> + <translation>Le proxy requiert une authentification</translation> </message> <message> - <source>Paper format</source> - <translation type="obsolete">Format du papier</translation> + <source>Host requires authentication</source> + <translation>L'hôte requiert une authentification</translation> </message> <message> - <source>Portrait</source> - <translation type="obsolete">Portrait</translation> + <source>Data corrupted</source> + <translation>Données corrompues</translation> </message> <message> - <source>Landscape</source> - <translation type="obsolete">Paysage</translation> + <source>Unknown protocol specified</source> + <translation>Protocole spécifié inconnu</translation> </message> <message> - <source>A0 (841 x 1189 mm)</source> - <translation>A0 (841 x 1189 mm)</translation> + <source>SSL handshake failed</source> + <translation>le handshake SSL a échoué</translation> </message> <message> - <source>A1 (594 x 841 mm)</source> - <translation>A1 (594 x 841 mm)</translation> + <source>Connection refused (or timed out)</source> + <translation>Connexion refusée (ou délai expiré)</translation> </message> <message> - <source>A2 (420 x 594 mm)</source> - <translation>A2 (420 x 594 mm)</translation> + <source>HTTPS connection requested but SSL support not compiled in</source> + <translation>Connexion HTTPS requise mais le support SSL n'est pas compilé</translation> </message> +</context> +<context> + <name>QHttpSocketEngine</name> <message> - <source>A3 (297 x 420 mm)</source> - <translation>A3 (297 x 420 mm)</translation> + <source>Did not receive HTTP response from proxy</source> + <translation>Pas de réponse HTTP de la part du proxy</translation> </message> <message> - <source>A5 (148 x 210 mm)</source> - <translation>A5 (148 x 210 mm)</translation> + <source>Error parsing authentication request from proxy</source> + <translation>Erreur dans le reqête d'authentification reçue du proxy</translation> </message> <message> - <source>A6 (105 x 148 mm)</source> - <translation>A6 (105 x 148 mm)</translation> + <source>Authentication required</source> + <translation>Authentification requise</translation> </message> <message> - <source>A7 (74 x 105 mm)</source> - <translation>A7 (74 x 105 mm)</translation> + <source>Proxy denied connection</source> + <translation>Le Proxy a rejeté la connexion</translation> </message> <message> - <source>A8 (52 x 74 mm)</source> - <translation>A8 (52 x 74 mm)</translation> + <source>Error communicating with HTTP proxy</source> + <translation>Erreur de communication avec le proxy HTTP</translation> </message> <message> - <source>A9 (37 x 52 mm)</source> - <translation>A9 (37 x 52 mm)</translation> + <source>Proxy server not found</source> + <translation>Serveur proxy introuvable</translation> </message> <message> - <source>B0 (1000 x 1414 mm)</source> - <translation>B0 (1000 x 1414 mm)</translation> + <source>Proxy connection refused</source> + <translation>Connexion au proxy refusée</translation> </message> <message> - <source>B1 (707 x 1000 mm)</source> - <translation>B1 (707 x 1000 mm)</translation> + <source>Proxy server connection timed out</source> + <translation>La connexion au serveur proxy a expiré</translation> </message> <message> - <source>B2 (500 x 707 mm)</source> - <translation>B2 (500 x 707 mm)</translation> + <source>Proxy connection closed prematurely</source> + <translation>La connexion au serveur proxy a été fermée prématurément</translation> </message> +</context> +<context> + <name>QIBaseDriver</name> <message> - <source>B3 (353 x 500 mm)</source> - <translation>B3 (353 x 500 mm)</translation> + <source>Error opening database</source> + <translation>Erreur d'ouverture de la base de données</translation> </message> <message> - <source>B4 (250 x 353 mm)</source> - <translation>B4 (250 x 353 mm)</translation> + <source>Could not start transaction</source> + <translation>La transaction n'a pas pu être démarrée</translation> </message> <message> - <source>B6 (125 x 176 mm)</source> - <translation>B6 (125 x 176 mm)</translation> + <source>Unable to commit transaction</source> + <translation>Incapable de soumettre la transaction</translation> </message> <message> - <source>B7 (88 x 125 mm)</source> - <translation>B7 (88 x 125 mm)</translation> + <source>Unable to rollback transaction</source> + <translation>Incapable d'annuler la transaction</translation> </message> +</context> +<context> + <name>QIBaseResult</name> <message> - <source>B8 (62 x 88 mm)</source> - <translation>B8 (62 x 88 mm)</translation> + <source>Unable to create BLOB</source> + <translation>Impossible de créer un BLOB</translation> </message> <message> - <source>B9 (44 x 62 mm)</source> - <translation>B9 (44 x 62 mm)</translation> + <source>Unable to write BLOB</source> + <translation>Impossible d'écrire le BLOB</translation> </message> <message> - <source>B10 (31 x 44 mm)</source> - <translation>B10 (31 x 44 mm)</translation> + <source>Unable to open BLOB</source> + <translation>Impossible d'ouvrir le BLOB</translation> </message> <message> - <source>C5E (163 x 229 mm)</source> - <translation>C5E (163 x 229 mm)</translation> + <source>Unable to read BLOB</source> + <translation>Impossible de lire le BLOB</translation> </message> <message> - <source>DLE (110 x 220 mm)</source> - <translation>DLE (110 x 220 mm)</translation> + <source>Could not find array</source> + <translation>Impossible de trouver le tableau</translation> </message> <message> - <source>Folio (210 x 330 mm)</source> - <translation>Folio (210 x 330 mm)</translation> + <source>Could not get array data</source> + <translation>Impossible de trouver le tableau de données</translation> </message> <message> - <source>Ledger (432 x 279 mm)</source> - <translation>Ledger (432 x 279 mm)</translation> + <source>Could not get query info</source> + <translation>Impossible d'avoir les informations sur la requête</translation> </message> <message> - <source>Tabloid (279 x 432 mm)</source> - <translation>Tabloïde (279 x 432 mm)</translation> + <source>Could not start transaction</source> + <translation>Impossible de démarrer la transaction</translation> </message> <message> - <source>US Common #10 Envelope (105 x 241 mm)</source> - <translation>US Common #10 Envelope (105 x 241 mm)</translation> + <source>Unable to commit transaction</source> + <translation>Incapable de soumettre la transaction</translation> </message> <message> - <source>Aliases: %1</source> - <translation>Alias : %1</translation> + <source>Could not allocate statement</source> + <translation>Impossible d'allouer la requête</translation> </message> <message> - <source>A4 (210 x 297 mm, 8.26 x 11.7 inches)</source> - <translation>A4 (210 x 297 mm)</translation> + <source>Could not prepare statement</source> + <translation>Impossible de préparer la requête</translation> </message> <message> - <source>B5 (176 x 250 mm, 6.93 x 9.84 inches)</source> - <translation>B5 (176 x 250 mm)</translation> + <source>Could not describe input statement</source> + <translation>Impossible de décrire la requête</translation> </message> <message> - <source>Executive (7.5 x 10 inches, 191 x 254 mm)</source> - <translation>Executive (7,5 x 10 pouces, 191 x 254 mm)</translation> + <source>Could not describe statement</source> + <translation>Impossible de décrire la requête</translation> </message> <message> - <source>Legal (8.5 x 14 inches, 216 x 356 mm)</source> - <translation>Legal (8.5 x 14 pouces, 216 x 356 mm)</translation> + <source>Unable to close statement</source> + <translation>Impossible de fermer la requête</translation> </message> <message> - <source>Letter (8.5 x 11 inches, 216 x 279 mm)</source> - <translation>Letter (8,5 x 11 pouces, 216 x 279 mm)</translation> + <source>Unable to execute query</source> + <translation>Impossible d'exécuter la requête</translation> </message> <message> - <source>Print selection</source> - <translation>Imprimer la sélection</translation> + <source>Could not fetch next item</source> + <translation>Impossible de récuperer l'élément suivant</translation> </message> <message> - <source>Page size:</source> - <translation type="obsolete">Dimensions :</translation> + <source>Could not get statement info</source> + <translation>Impossible d'avoir les informations sur la requête</translation> </message> +</context> +<context> + <name>QIODevice</name> <message> - <source>Orientation:</source> - <translation type="obsolete">Orientation :</translation> + <source>Permission denied</source> + <translation>Accès refusé</translation> </message> <message> - <source>Paper source:</source> - <translation type="obsolete">Source du papier :</translation> + <source>Too many open files</source> + <translation>Trop de fichiers ouverts simultanément</translation> </message> <message> - <source>Print</source> - <translation>Impr écran</translation> + <source>No such file or directory</source> + <translation>Aucun fichier ou dossier de ce nom</translation> </message> <message> - <source>File</source> - <translation type="obsolete">Fichier</translation> + <source>No space left on device</source> + <translation>Aucun espace disponible sur le périphérique</translation> </message> <message> - <source>Printer</source> - <translation type="obsolete">Imprimante</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> +</context> +<context> + <name>QInputContext</name> <message> - <source>Print To File ...</source> - <translation>Imprimer dans un fichier...</translation> + <source>XIM</source> + <translation>XIM</translation> </message> <message> - <source>Print dialog</source> - <translation type="obsolete">Fenêtre d'impression</translation> + <source>XIM input method</source> + <translation>Méthode d'entrée XIM</translation> </message> <message> - <source>Size:</source> - <translation type="obsolete">Taille :</translation> + <source>Windows input method</source> + <translation>Méthode d'entrée Windows</translation> </message> <message> - <source>Properties</source> - <translation type="obsolete">Propriétés</translation> + <source>Mac OS X input method</source> + <translation>Méthode d'entrée Mac OS X</translation> </message> <message> - <source>Printer info:</source> - <translation type="obsolete">Informations sur l'imprimante :</translation> + <source>FEP</source> + <translation>Processeur frontal</translation> </message> <message> - <source>Browse</source> - <translation type="obsolete">Parcourir</translation> + <source>S60 FEP input method</source> + <translation>Méthode de saisie processeur frontal S60</translation> </message> +</context> +<context> + <name>QInputDialog</name> <message> - <source>Print to file</source> - <translation type="obsolete">Imprimer dans un fichier</translation> + <source>Enter a value:</source> + <translation>Entrer une valeur :</translation> </message> +</context> +<context> + <name>QLibrary</name> <message> - <source>Pages from</source> - <translation type="obsolete">Pages</translation> + <source>QLibrary::load_sys: Cannot load %1 (%2)</source> + <translation type="obsolete">QLibrary::load_sys: Impossible de charger %1 (%2)</translation> </message> <message> - <source>to</source> - <translation type="obsolete">à</translation> + <source>QLibrary::unload_sys: Cannot unload %1 (%2)</source> + <translation type="obsolete">QLibrary::unload_sys: Impossible de décharger %1 (%2)</translation> </message> <message> - <source>Selection</source> - <translation type="obsolete">Sélection</translation> + <source>QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3)</source> + <translation type="obsolete">QLibrary::resolve_sys: Symbole "%1" non défini dans %2 (%3)</translation> </message> <message> - <source>Copies</source> - <translation type="obsolete">Copies</translation> + <source>Could not mmap '%1': %2</source> + <translation>Impossible d'établir la projection en mémoire de '%1' : %2</translation> </message> <message> - <source>Collate</source> - <translation type="obsolete">Assembler</translation> + <source>Plugin verification data mismatch in '%1'</source> + <translation>Données de vérification du plugin différente dans '%1'</translation> </message> <message> - <source>Other</source> - <translation type="obsolete">Autre</translation> + <source>Could not unmap '%1': %2</source> + <translation>Impossible de supprimer la projection en mémoire de '%1' : %2</translation> </message> <message> - <source>Double side printing</source> - <translation type="obsolete">Impression recto verso</translation> + <source>The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]</source> + <translation>Le plugin '%1' utilise une bibliothèque Qt incompatible. (%2.%3.%4) [%5]</translation> </message> <message> - <source>File %1 is not writable. -Please choose a different file name.</source> - <translation>Impossible d'écrire dans le fichier %1. -Veuillez choisir un nom de fichier différent.</translation> + <source>The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"</source> + <translation>Le plugin '%1' utilise une bibliothèque Qt incompatible. Clé attendue "%2", reçue "%3"</translation> </message> <message> - <source>%1 already exists. -Do you want to overwrite it?</source> - <translation>%1 existe. -Voulez-vous l'écraser ?</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> <message> - <source>File exists</source> - <translation>Le fichier existe</translation> + <source>The shared library was not found.</source> + <translation>La bibliothèque partagée est introuvable.</translation> </message> <message> - <source><qt>Do you want to overwrite it?</qt></source> - <translation><qt>voulez-vous l'écraser ?</qt></translation> + <source>The file '%1' is not a valid Qt plugin.</source> + <translation>Le fichier '%1' n'est pas un plugin Qt valide.</translation> </message> <message> - <source>%1 is a directory. -Please choose a different file name.</source> - <translation>%1 est un dossier. -Veuillez choisir un nom de fichier différent.</translation> + <source>The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)</source> + <translation>Le plugin '%1' utilise une bibliothèque Qt incompatible. (Il est impossible de mélanger des bibliothèques 'debug' et 'release'.)</translation> </message> <message> - <source>A0</source> - <translation></translation> + <source>Cannot load library %1: %2</source> + <translation>Impossible de charger la bibliothèque %1 : %2</translation> </message> <message> - <source>A1</source> - <translation></translation> + <source>Cannot unload library %1: %2</source> + <translation>Impossible de décharger la bibliothèque %1 : %2</translation> </message> <message> - <source>A2</source> - <translation></translation> + <source>Cannot resolve symbol "%1" in %2: %3</source> + <translation>Impossible de résoudre le symbole "%1" dans %2 : %3</translation> </message> +</context> +<context> + <name>QLineEdit</name> <message> - <source>A3</source> - <translation></translation> + <source>Select All</source> + <translation>Tout sélectionner</translation> </message> <message> - <source>A4</source> - <translation></translation> + <source>&Undo</source> + <translation>&Annuler</translation> </message> <message> - <source>A5</source> - <translation></translation> + <source>&Redo</source> + <translation>&Rétablir</translation> </message> <message> - <source>A6</source> - <translation></translation> + <source>Cu&t</source> + <translation>Co&uper</translation> </message> <message> - <source>A7</source> - <translation></translation> + <source>&Copy</source> + <translation>Cop&ier</translation> </message> <message> - <source>A8</source> - <translation></translation> + <source>&Paste</source> + <translation>Co&ller</translation> </message> <message> - <source>A9</source> - <translation></translation> + <source>Delete</source> + <translation>Supprimer</translation> </message> +</context> +<context> + <name>QLocalServer</name> <message> - <source>B0</source> - <translation></translation> + <source>%1: Name error</source> + <translation>%1: Erreur de nom</translation> </message> <message> - <source>B1</source> - <translation></translation> + <source>%1: Permission denied</source> + <translation>%1: Permission refusée</translation> </message> <message> - <source>B2</source> - <translation></translation> + <source>%1: Address in use</source> + <translation>%1: Address déjà utilisée</translation> </message> <message> - <source>B3</source> - <translation></translation> + <source>%1: Unknown error %2</source> + <translation>%1: Erreur inconnue %2</translation> </message> +</context> +<context> + <name>QLocalSocket</name> <message> - <source>B4</source> - <translation></translation> + <source>%1: Connection refused</source> + <translation>%1: Connexion refusée</translation> </message> <message> - <source>B5</source> - <translation></translation> + <source>%1: Remote closed</source> + <translation>%1: Connexion fermée</translation> </message> <message> - <source>B6</source> - <translation></translation> + <source>%1: Invalid name</source> + <translation>%1: Nom invalide</translation> </message> <message> - <source>B7</source> - <translation></translation> + <source>%1: Socket access error</source> + <translation>%1: Erreur d'accès au socket</translation> </message> <message> - <source>B8</source> - <translation></translation> + <source>%1: Socket resource error</source> + <translation>%1: Erreur de ressource du socket</translation> </message> <message> - <source>B9</source> - <translation></translation> + <source>%1: Socket operation timed out</source> + <translation>%1: L'opération socket a expiré</translation> </message> <message> - <source>B10</source> - <translation></translation> + <source>%1: Datagram too large</source> + <translation>%1: Datagramme trop grand</translation> </message> <message> - <source>C5E</source> - <translation></translation> + <source>%1: Connection error</source> + <translation>%1: Erreur de connexion</translation> </message> <message> - <source>DLE</source> - <translation></translation> + <source>%1: The socket operation is not supported</source> + <translation>%1: L'opération n'est pas supportée</translation> </message> <message> - <source>Executive</source> - <translation></translation> + <source>%1: Unknown error</source> + <translation>%1 : erreur inconnue</translation> </message> <message> - <source>Folio</source> - <translation></translation> + <source>%1: Unknown error %2</source> + <translation>%1: Erreur inconnue %2</translation> </message> +</context> +<context> + <name>QMYSQLDriver</name> <message> - <source>Ledger</source> - <translation></translation> + <source>Unable to open database '</source> + <translation>Impossible d'ouvrir la base de données '</translation> </message> <message> - <source>Legal</source> - <translation></translation> + <source>Unable to connect</source> + <translation>Impossible d'établir une connexion</translation> </message> <message> - <source>Letter</source> - <translation></translation> + <source>Unable to begin transaction</source> + <translation>Impossible de démarrer la transaction</translation> </message> <message> - <source>Tabloid</source> - <translation></translation> + <source>Unable to commit transaction</source> + <translation>Impossible de soumettre la transaction</translation> </message> <message> - <source>US Common #10 Envelope</source> - <translation></translation> + <source>Unable to rollback transaction</source> + <translation>Impossible d'annuler la transaction</translation> </message> +</context> +<context> + <name>QMYSQLResult</name> <message> - <source>Custom</source> - <translation>Personnalisé</translation> + <source>Unable to fetch data</source> + <translation>Impossible de récuperer des données</translation> </message> <message> - <source>&Options >></source> - <translation></translation> + <source>Unable to execute query</source> + <translation>Impossible d'exécuter la requête</translation> </message> <message> - <source>&Print</source> - <translation>Im&primer</translation> + <source>Unable to store result</source> + <translation>Impossible de stocker le résultat</translation> </message> <message> - <source>&Options <<</source> - <translation></translation> + <source>Unable to prepare statement</source> + <translation>Impossible de préparer l'instruction</translation> </message> <message> - <source>Print to File (PDF)</source> - <translation>Imprimer dans un fichier (PDF)</translation> + <source>Unable to reset statement</source> + <translation>Impossible de réinitialiser l'instruction</translation> </message> <message> - <source>Print to File (Postscript)</source> - <translation>Imprimer dans un fichier (PostScript)</translation> + <source>Unable to bind value</source> + <translation>Impossible d'attacher la valeur</translation> </message> <message> - <source>Local file</source> - <translation>Fichier local</translation> + <source>Unable to execute statement</source> + <translation>Impossible d'exécuter la requête</translation> </message> <message> - <source>Write %1 file</source> - <translation>Ecriture du fichier %1</translation> + <source>Unable to bind outvalues</source> + <translation>Impossible d'attacher les valeurs de sortie</translation> </message> <message> - <source>The 'From' value cannot be greater than the 'To' value.</source> - <translation>La valeur 'de' ne peut pas être plus grande que la valeur 'à'.</translation> + <source>Unable to store statement results</source> + <translation>Impossible de stocker les résultats de la requête</translation> </message> -</context> -<context> - <name>QPrintPreviewDialog</name> <message> - <source>%1%</source> - <translation>%1%</translation> + <source>Unable to execute next query</source> + <translation>Impossible d'exécuterla prochaine requête</translation> </message> <message> - <source>Print Preview</source> - <translation>Aperçu avant impression</translation> + <source>Unable to store next result</source> + <translation>Impossible de stocker le prochain résultat</translation> </message> +</context> +<context> + <name>QMdiArea</name> <message> - <source>Next page</source> - <translation>Page suivante</translation> + <source>(Untitled)</source> + <translation>(Sans titre)</translation> </message> +</context> +<context> + <name>QMdiSubWindow</name> <message> - <source>Previous page</source> - <translation>Page précédente</translation> + <source>%1 - [%2]</source> + <translation>%1 - [%2]</translation> </message> <message> - <source>First page</source> - <translation>Première page</translation> + <source>Close</source> + <translation>Fermer</translation> </message> <message> - <source>Last page</source> - <translation>Dernière page</translation> + <source>Minimize</source> + <translation>Réduire</translation> </message> <message> - <source>Fit width</source> - <translation>Ajuster la largeur</translation> + <source>Restore Down</source> + <translation>Restaurer en bas</translation> </message> <message> - <source>Fit page</source> - <translation>Ajuster la page</translation> + <source>&Restore</source> + <translation>&Restaurer</translation> </message> <message> - <source>Zoom in</source> - <translation>Zoom avant</translation> + <source>&Move</source> + <translation>&Déplacer</translation> </message> <message> - <source>Zoom out</source> - <translation>Zoom arrière</translation> + <source>&Size</source> + <translation>&Taille</translation> </message> <message> - <source>Portrait</source> - <translation>Portrait</translation> + <source>Mi&nimize</source> + <translation>Réd&uire</translation> </message> <message> - <source>Landscape</source> - <translation>Paysage</translation> + <source>Ma&ximize</source> + <translation>Ma&ximiser</translation> </message> <message> - <source>Show single page</source> - <translation>Afficher une seule page</translation> + <source>Stay on &Top</source> + <translation>&Rester au premier plan</translation> </message> <message> - <source>Show facing pages</source> - <translation>Afficher deux pages</translation> + <source>&Close</source> + <translation>&Fermer</translation> </message> <message> - <source>Show overview of all pages</source> - <translation>Afficher un aperçu de toutes les pages</translation> + <source>- [%1]</source> + <translation>- [%1]</translation> </message> <message> - <source>Print</source> - <translation>Impr écran</translation> + <source>Maximize</source> + <translation>Maximiser</translation> </message> <message> - <source>Page setup</source> - <translation>Configuration de la page</translation> + <source>Unshade</source> + <translation>Restaurer</translation> </message> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Shade</source> + <translation>Ombrer</translation> </message> <message> - <source>Export to PDF</source> - <translation>Exporter vers PDF</translation> + <source>Restore</source> + <translation>Restaurer</translation> </message> <message> - <source>Export to PostScript</source> - <translation>Exporter vers PostScript</translation> + <source>Help</source> + <translation>Aide</translation> </message> <message> - <source>Page Setup</source> - <translation>Configuration de la page</translation> + <source>Menu</source> + <translation>Menu</translation> </message> </context> <context> - <name>QPrintPropertiesDialog</name> + <name>QMediaPlayer</name> <message> - <source>PPD Properties</source> - <translation type="obsolete">Propriétés PPD</translation> + <source>The QMediaPlayer object does not have a valid service</source> + <translation>Pas de service valide pour l'objet QMediaPlayer</translation> </message> +</context> +<context> + <name>QMediaPlaylist</name> <message> - <source>Save</source> - <translation type="obsolete">Enregistrer</translation> + <source>Could not add items to read only playlist.</source> + <translation>Impossible d'ajouter des éléments à une liste de lecture en lecture seule.</translation> </message> <message> - <source>OK</source> - <translation type="obsolete">OK</translation> + <source>Playlist format is not supported</source> + <translation>Le format de liste de lecture n'est pas supporté</translation> + </message> + <message> + <source>The file could not be accessed.</source> + <translation>Impossible d'accéder au fichier.</translation> + </message> + <message> + <source>Playlist format is not supported.</source> + <translation></translation> </message> </context> <context> - <name>QPrintPropertiesWidget</name> + <name>QMenu</name> <message> - <source>Form</source> - <translation>Formulaire</translation> + <source>Close</source> + <translation>Fermer</translation> </message> <message> - <source>Page</source> - <translation></translation> + <source>Open</source> + <translation>Ouvrir</translation> </message> <message> - <source>Advanced</source> - <translation>Avancé</translation> + <source>Execute</source> + <translation>Exécuter</translation> </message> </context> <context> - <name>QPrintSettingsOutput</name> - <message> - <source>Form</source> - <translation>Formulaire</translation> - </message> + <name>QMenuBar</name> <message> - <source>Copies</source> - <translation>Copies</translation> + <source>About</source> + <translation type="obsolete">A propos</translation> </message> <message> - <source>Print range</source> - <translation>Imprimer la sélection</translation> + <source>Config</source> + <translation type="obsolete">Configuration</translation> </message> <message> - <source>Print all</source> - <translation>Imprimer tout</translation> + <source>Preference</source> + <translation type="obsolete">Préférence</translation> </message> <message> - <source>Pages from</source> - <translation>Pages</translation> + <source>Options</source> + <translation type="obsolete">Options</translation> </message> <message> - <source>to</source> - <translation>à</translation> + <source>Setting</source> + <translation type="obsolete">Paramètre</translation> </message> <message> - <source>Selection</source> - <translation>Sélection</translation> + <source>Setup</source> + <translation type="obsolete">Réglage</translation> </message> <message> - <source>Output Settings</source> - <translation>Paramètres de sortie</translation> + <source>Quit</source> + <translation type="obsolete">Quitter</translation> </message> <message> - <source>Copies:</source> - <translation>Copies :</translation> + <source>Exit</source> + <translation type="obsolete">Quitter</translation> </message> <message> - <source>Collate</source> - <translation>Assembler</translation> + <source>About %1</source> + <translation type="obsolete">A propos de %1</translation> </message> <message> - <source>Reverse</source> - <translation>Inverse</translation> + <source>About Qt</source> + <translation type="obsolete">À propos de Qt</translation> </message> <message> - <source>Options</source> - <translation>Options</translation> + <source>Preferences</source> + <translation type="obsolete">Préférences</translation> </message> <message> - <source>Color Mode</source> - <translation>Mode de couleur</translation> + <source>Quit %1</source> + <translation type="obsolete">Quitter %1</translation> </message> <message> - <source>Color</source> - <translation>Couleur</translation> + <source>Actions</source> + <translation>Actions</translation> </message> +</context> +<context> + <name>QMessageBox</name> <message> - <source>Grayscale</source> - <translation>Dégradé de gris</translation> + <source>OK</source> + <translation>OK</translation> </message> <message> - <source>Duplex Printing</source> - <translation>Impression en duplex</translation> + <source>About Qt</source> + <translation>À propos de Qt</translation> </message> <message> - <source>None</source> - <translation>Aucun</translation> + <source>Help</source> + <translation>Aide</translation> </message> <message> - <source>Long side</source> - <translation>Côté long</translation> + <source><p>This program uses Qt version %1.</p></source> + <translation type="obsolete"><p>Ce programme utilise la version %1 de Qt.</p></translation> </message> <message> - <source>Short side</source> - <translation>Côté court</translation> + <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com/</a> for more information.</p></source> + <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'applications multi-platformes.</p><p>Qt fournit la portabilité du code source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et toutes les variantes commerciales majeures d'Unix. Qt est aussi disponible pour les systèmes embarqués sous le nom Qtopia Core.</p><p>Qt est un produit de Trolltech. <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></translation> </message> -</context> -<context> - <name>QPrintWidget</name> <message> - <source>Form</source> - <translation>Formulaire</translation> + <source>Show Details...</source> + <translation>Montrer les détails...</translation> </message> <message> - <source>Printer</source> - <translation>Imprimante</translation> + <source>Hide Details...</source> + <translation>Cacher les détails...</translation> </message> <message> - <source>&Name:</source> - <translation>&Nom :</translation> + <source><h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> + <translation type="obsolete"><h3>À propos de Qt</h3><p>Ce programme utilise Qt version %1.</p><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés tels que Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> </message> <message> - <source>P&roperties</source> - <translation>P&ropriétés</translation> + <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> + <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un framework de développement d'applications multi-plateforme.</p><p>Qt fournit la portabilité du code source surMS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, et toutes les variantes majeures d'Unix. Qt est aussi disponible pour l'embarqué avec Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt est un produit de Nokia. Allez à <a href="http://qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> </message> <message> - <source>Location:</source> - <translation>Emplacement :</translation> + <source><p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> for an overview of Qt licensing.</p></source> + <translation type="obsolete"><p>Ce programme utilise Qt Open Source Edition version %1.</p><p>Qt Open Source Edition est prévu pour le développement d'applications Open Source. Vous devez avoir un license commerciale de Qt pour développer des applications propiétaires (Closed Source).</p><p>Vous pouvez aller sur <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> pour plus d'informations sur les licenses Qt.</p></translation> </message> <message> - <source>Preview</source> - <translation>Prévisualisation</translation> + <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt Embedded.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> + <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'application multi-plateforme.</p><p>Qt fournit la portabilité de votre source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, toutes les variantes majeures d'Unix. Qt est aussi disponible pour les périphériques embarqués avec Qt Embedded.</p><p>Qt est un produit de Trolltech. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> </message> <message> - <source>Type:</source> - <translation>Type :</translation> + <source><h3>About Qt</h3><p>This program uses Qt version %1.</p></source> + <translation><h3>À propos de Qt</h3><p>Ce programme utilise Qt version %1.</p></translation> </message> <message> - <source>Output &file:</source> - <translation>&Fichier de sortie:</translation> + <source><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> + <translation><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés tels que Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> </message> +</context> +<context> + <name>QMultiInputContext</name> <message> - <source>...</source> - <translation></translation> + <source>Select IM</source> + <translation>Sélectionner IM</translation> </message> </context> <context> - <name>QProcess</name> + <name>QMultiInputContextPlugin</name> <message> - <source>Could not open input redirection for reading</source> - <translation>Impossible d'ouvrir la redirection d'entrée en lecture</translation> + <source>Multiple input method switcher</source> + <translation>Sélectionneur de méthode de saisie</translation> </message> <message> - <source>Could not open output redirection for writing</source> - <translation>Impossible d'ouvrir la redirection de sortie pour écriture</translation> + <source>Multiple input method switcher that uses the context menu of the text widgets</source> + <translation>Sélectionneur de méthode de saisie qui utilise le menu contextuel des widgets de texte</translation> </message> +</context> +<context> + <name>QNativeSocketEngine</name> <message> - <source>Resource error (fork failure): %1</source> - <translation>Erreur de ressouce (fork) : %1</translation> + <source>The remote host closed the connection</source> + <translation>L'hôte distant a fermé la connexion</translation> </message> <message> - <source>Process operation timed out</source> - <translation>Operation de processus a expiré</translation> + <source>Network operation timed out</source> + <translation>L'opération réseau a expiré</translation> </message> <message> - <source>Error reading from process</source> - <translation>Erreur de lecture du processus</translation> + <source>Out of resources</source> + <translation>Manque de ressources</translation> </message> <message> - <source>Error writing to process</source> - <translation>Erreur d"écriture vers le processus</translation> + <source>Unsupported socket operation</source> + <translation>Opération socket non supportée</translation> </message> <message> - <source>Process crashed</source> - <translation>Le processus à planté</translation> + <source>Protocol type not supported</source> + <translation>Protocol non géré</translation> </message> <message> - <source>No program defined</source> - <translation>Aucun programme défini</translation> + <source>Invalid socket descriptor</source> + <translation>Descripteur de socket invalide</translation> </message> <message> - <location filename="../src/corelib/io/qprocess_win.cpp" line="+464"/> - <source>Process failed to start</source> - <translation>Le processus n'a pas démarré</translation> + <source>Network unreachable</source> + <translation>Réseau impossible à rejoindre</translation> </message> <message> - <source>Process failed to start: %1</source> - <translation>Le démarrage du processus a échoué: %1</translation> + <source>Permission denied</source> + <translation>Accès refusé</translation> </message> -</context> -<context> - <name>QProgressDialog</name> <message> - <source>Cancel</source> - <translation>Annuler</translation> + <source>Connection timed out</source> + <translation>Connexion expirée</translation> </message> -</context> -<context> - <name>QPushButton</name> <message> - <source>Open</source> - <translation>Ouvrir</translation> + <source>Connection refused</source> + <translation>Connexion refusée</translation> </message> -</context> -<context> - <name>QRadioButton</name> <message> - <source>Check</source> - <translation>Cocher</translation> + <source>The bound address is already in use</source> + <translation>L'adresse liée est déjà en usage</translation> </message> -</context> -<context> - <name>QRegExp</name> <message> - <source>no error occurred</source> - <translation>aucune erreur ne s'est produite</translation> + <source>The address is not available</source> + <translation>L'adresse n'est pas disponible</translation> </message> <message> - <source>disabled feature used</source> - <translation>option désactivée</translation> + <source>The address is protected</source> + <translation>L'adresse est protégée</translation> </message> <message> - <source>bad char class syntax</source> - <translation>syntaxe invalide pour classe de caractère</translation> + <source>Unable to send a message</source> + <translation>Impossible d'envoyer un message</translation> </message> <message> - <source>bad lookahead syntax</source> - <translation>syntaxe invalide pour lookahead</translation> + <source>Unable to receive a message</source> + <translation>Impossible de recevoir un message</translation> </message> <message> - <source>bad repetition syntax</source> - <translation>syntaxe invalide pour répétition</translation> + <source>Unable to write</source> + <translation>Impossible d'écrire</translation> </message> <message> - <source>invalid octal value</source> - <translation>valeur octale invalide</translation> + <source>Network error</source> + <translation>Erreur réseau</translation> </message> <message> - <source>missing left delim</source> - <translation>délémiteur gauche manquant</translation> + <source>Another socket is already listening on the same port</source> + <translation>Un autre socket écoute déjà sur le même port</translation> </message> <message> - <source>unexpected end</source> - <translation>fin impromptue</translation> + <source>Unable to initialize non-blocking socket</source> + <translation>Impossible d'initialiser le socket asynchrone</translation> </message> <message> - <source>met internal limit</source> - <translation>rencontré limite interne</translation> - </message> - <message> - <source>invalid interval</source> - <translation>intervalle non valide</translation> + <source>Unable to initialize broadcast socket</source> + <translation>Impossible d'initialiser le socket broadcast</translation> </message> <message> - <source>invalid category</source> - <translation>catégorie non valide</translation> + <source>Attempt to use IPv6 socket on a platform with no IPv6 support</source> + <translation>Tentative d'utiliser un socket IPv6 sur une plateforme qui ne supporte pas IPv6</translation> </message> -</context> -<context> - <name>QSQLite2Driver</name> <message> - <location filename="../src/sql/drivers/sqlite2/qsql_sqlite2.cpp" line="+396"/> - <source>Error to open database</source> - <translation>Erreur à l'ouverture de la base de données</translation> + <source>Host unreachable</source> + <translation>Hôte inaccessible</translation> </message> <message> - <source>Unable to begin transaction</source> - <translation>Impossible de démarrer la transaction</translation> + <source>Datagram was too large to send</source> + <translation>Le datagramme était trop grand pour être envoyé</translation> </message> <message> - <source>Unable to commit transaction</source> - <translation>Impossible de soumettre la transaction</translation> + <source>Operation on non-socket</source> + <translation>Operation sur non-socket</translation> </message> <message> - <location line="+75"/> - <source>Unable to rollback Transaction</source> - <translation>Impossible d'annuler la transaction</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> <message> - <source>Error opening database</source> - <translation>Erreur lors de l'ouverture de la base de données</translation> + <source>The proxy type is invalid for this operation</source> + <translation>Le type de proxy est invalide pour cette opération</translation> </message> +</context> +<context> + <name>QNetworkAccessCacheBackend</name> <message> - <source>Unable to rollback transaction</source> - <translation>Impossible de répéter la transaction</translation> + <source>Error opening %1</source> + <translation>Erreur lors de l'ouverture de %1</translation> </message> </context> <context> - <name>QSQLite2Result</name> + <name>QNetworkAccessDataBackend</name> <message> - <source>Unable to fetch results</source> - <translation>Impossible de récupérer les résultats</translation> + <source>Operation not supported on %1</source> + <translation>Opération non supportée sur %1</translation> </message> <message> - <source>Unable to execute statement</source> - <translation>Impossible d'exécuter la requête</translation> + <source>Invalid URI: %1</source> + <translation>URI invalide : %1</translation> </message> </context> <context> - <name>QSQLiteDriver</name> + <name>QNetworkAccessDebugPipeBackend</name> <message> - <source>Error opening database</source> - <translation>Erreur lors de l'ouverture de la base de données</translation> + <source>Write error writing to %1: %2</source> + <translation>Erreur lors de l'écriture dans %1: %2</translation> </message> <message> - <source>Error closing database</source> - <translation>Erreur lors de la fermeture de la base de données</translation> + <source>Socket error on %1: %2</source> + <translation>Erreur de socket sur %1 : %2</translation> </message> <message> - <source>Unable to begin transaction</source> - <translation>Impossible de démarrer la transaction</translation> + <source>Remote host closed the connection prematurely on %1</source> + <translation>L'hôte distant a fermé sa connexion de façon prématurée sur %1</translation> + </message> +</context> +<context> + <name>QNetworkAccessFileBackend</name> + <message> + <source>Request for opening non-local file %1</source> + <translation>Requête d'ouverture de fichier distant %1</translation> </message> <message> - <source>Unable to commit transaction</source> - <translation>Incapable de soumettre la transaction</translation> + <source>Error opening %1: %2</source> + <translation>Erreur lors de l'ouverture de %1 : %2</translation> </message> <message> - <source>Unable to roll back transaction</source> - <translation type="obsolete">Impossible d'annuler la transaction</translation> + <source>Write error writing to %1: %2</source> + <translation>Erreur d'écriture de %1 : %2</translation> </message> <message> - <source>Unable to rollback transaction</source> - <translation>Impossible d'annuler la transaction</translation> + <source>Cannot open %1: Path is a directory</source> + <translation>Impossible d'ouvrir %1 : le chemin est un dossier</translation> </message> -</context> -<context> - <name>QSQLiteResult</name> <message> - <source>Unable to fetch row</source> - <translation>Impossible de récupérer la rangée</translation> + <source>Read error reading from %1: %2</source> + <translation>Erreur de lecture de %1 : %2</translation> </message> +</context> +<context> + <name>QNetworkAccessFtpBackend</name> <message> - <source>Unable to execute statement</source> - <translation>Impossible d'exécuter la requête</translation> + <source>No suitable proxy found</source> + <translation>Aucun proxy trouvé</translation> </message> <message> - <source>Unable to reset statement</source> - <translation>Impossible de réinitialiser la requête</translation> + <source>Cannot open %1: is a directory</source> + <translation>Impossible d'ouvrir %1 : le chemin est un dossier</translation> </message> <message> - <source>Unable to bind parameters</source> - <translation>Impossible d'attacher les paramètres</translation> + <source>Logging in to %1 failed: authentication required</source> + <translation>Connexion à %1 a échoué : authentification requise</translation> </message> <message> - <source>Parameter count mismatch</source> - <translation>Nombre de paramètres incorrect</translation> + <source>Error while downloading %1: %2</source> + <translation>Erreur lors du téléchargement de %1 : %2</translation> </message> <message> - <source>No query</source> - <translation>Pas de requête</translation> + <source>Error while uploading %1: %2</source> + <translation>Erreur lors de l'envoi de %1 : %2</translation> </message> </context> <context> - <name>QScrollBar</name> + <name>QNetworkAccessHttpBackend</name> <message> - <source>Scroll here</source> - <translation>Défiler jusqu'ici</translation> + <source>No suitable proxy found</source> + <translation>Aucun proxy trouvé</translation> </message> +</context> +<context> + <name>QNetworkAccessManager</name> <message> - <source>Left edge</source> - <translation>Extrême gauche</translation> + <source>Network access is disabled.</source> + <translation>L'accès au réseau est désactivé.</translation> </message> +</context> +<context> + <name>QNetworkReply</name> <message> - <source>Top</source> - <translation>En haut</translation> + <source>Error downloading %1 - server replied: %2</source> + <translation>Erreur lors du téléchargement de %1 - le serveur a répondu: %2</translation> </message> <message> - <source>Right edge</source> - <translation>Extrême droite</translation> + <source>Protocol "%1" is unknown</source> + <translation>Le protocole "%1" est inconnu</translation> </message> <message> - <source>Bottom</source> - <translation>En bas</translation> + <source>Network session error.</source> + <translation>Erreur de session réseau.</translation> </message> <message> - <source>Page left</source> - <translation>Page précédente</translation> + <source>Temporary network failure.</source> + <translation>Erreur réseau temporaire.</translation> </message> +</context> +<context> + <name>QNetworkReplyImpl</name> <message> - <source>Page up</source> - <translation>Page précédente</translation> + <source>Operation canceled</source> + <translation>Opération annulée</translation> </message> +</context> +<context> + <name>QNetworkSession</name> <message> - <source>Page right</source> - <translation>Page suivante</translation> + <source>Invalid configuration.</source> + <translation>Configuration invalide.</translation> </message> +</context> +<context> + <name>QNetworkSessionPrivateImpl</name> <message> - <source>Page down</source> - <translation>Page suivante</translation> + <source>Roaming error</source> + <translation>Erreur de roaming</translation> </message> <message> - <source>Scroll left</source> - <translation>Défiler vers la gauche</translation> + <source>Session aborted by user or system</source> + <translation>Session annulée par l'utilisateur ou le système</translation> </message> <message> - <source>Scroll up</source> - <translation>Défiler vers le haut</translation> + <source>Unidentified Error</source> + <translation>Erreur inconnue</translation> </message> <message> - <source>Scroll right</source> - <translation>Défiler vers la droite</translation> + <source>Unknown session error.</source> + <translation>Erreur de session inconnue.</translation> </message> <message> - <source>Scroll down</source> - <translation>Défiler vers le bas</translation> + <source>The session was aborted by the user or system.</source> + <translation>la session a été annulée par l'utilisateur ou le système.</translation> </message> <message> - <source>Line up</source> - <translation>Aligner</translation> + <source>The requested operation is not supported by the system.</source> + <translation>L'opération requise n'est pas suportée par le système.</translation> </message> <message> - <source>Position</source> - <translation>Position</translation> + <source>The specified configuration cannot be used.</source> + <translation>La configuration spécifiée ne peut être utilisée.</translation> </message> <message> - <source>Line down</source> - <translation>Aligner en-bas</translation> + <source>Roaming was aborted or is not possible.</source> + <translation>Le roaming a été annulé ou est impossible.</translation> </message> </context> <context> - <name>QSharedMemory</name> + <name>QOCIDriver</name> <message> - <source>%1: unable to set key on lock</source> - <translation>%1 : impossible d'affecter la clé au verrou</translation> + <source>Unable to logon</source> + <translation>Impossible d'ouvrir une session</translation> </message> <message> - <source>%1: create size is less then 0</source> - <translation>%1 : taille de création est inférieur à 0</translation> + <source>Unable to initialize</source> + <comment>QOCIDriver</comment> + <translation>L'initialisation a échoué</translation> </message> <message> - <source>%1: unable to lock</source> - <translation>%1 : impossible de vérrouiller</translation> + <source>Unable to begin transaction</source> + <translation>Impossible de démarrer la transaction</translation> </message> <message> - <source>%1: unable to unlock</source> - <translation>%1 : impossible de déverrouiller</translation> + <source>Unable to commit transaction</source> + <translation>Impossible d'enregistrer la transaction</translation> </message> <message> - <source>%1: permission denied</source> - <translation>%1 : permission refusée</translation> + <source>Unable to rollback transaction</source> + <translation>Impossible d'annuler la transaction</translation> </message> <message> - <source>%1: already exists</source> - <translation>%1 : existe déjà</translation> + <source>Unable to initialize</source> + <translation type="obsolete">L'initialisation a échoué</translation> </message> +</context> +<context> + <name>QOCIResult</name> <message> - <source>%1: doesn't exists</source> - <translation>%1 : n'existe pas</translation> + <source>Unable to bind column for batch execute</source> + <translation>Impossible d'attacher la colonne pour une execution batch</translation> </message> <message> - <source>%1: out of resources</source> - <translation>%1 : plus de ressources disponibles</translation> + <source>Unable to execute batch statement</source> + <translation>Impossible d'exécuter l'instruction batch</translation> </message> <message> - <source>%1: unknown error %2</source> - <translation>%1 : erreur inconnue %2</translation> + <source>Unable to goto next</source> + <translation>Impossible de passer au suivant</translation> </message> <message> - <source>%1: key is empty</source> - <translation>%1 : clé vide</translation> + <source>Unable to alloc statement</source> + <translation>Impossible d'allouer la requête</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+125"/> - <source>%1: unix key file doesn't exists</source> - <translation>%1 : le fichier de clé unix n'existe pas</translation> + <source>Unable to prepare statement</source> + <translation>Impossible de préparer la requête</translation> </message> <message> - <source>%1: ftok failed</source> - <translation>%1 : ftok a échoué</translation> + <source>Unable to bind value</source> + <translation>Impossible d'attacher la valeur</translation> </message> <message> - <source>%1: unable to make key</source> - <translation>%1 : impossible de créer la clé</translation> + <source>Unable to execute select statement</source> + <translation type="obsolete">Impossible d'exéctuer la requête select</translation> </message> <message> - <source>%1: system-imposed size restrictions</source> - <translation>%1 : le système impose des restrictions sur la taille</translation> + <source>Unable to execute statement</source> + <translation>Impossible d'exéctuer la requête</translation> </message> <message> - <source>%1: not attached</source> - <translation>%1 : non attaché</translation> + <source>Unable to get statement type</source> + <translation>Impossible d'obtenir le type de la requête</translation> </message> +</context> +<context> + <name>QODBCDriver</name> <message> - <source>%1: invalid size</source> - <translation>%1 : taille invalide</translation> + <source>Unable to connect</source> + <translation>Incapable d'établir une connexion</translation> </message> <message> - <source>%1: key error</source> - <translation>%1 : erreur de clé</translation> + <source>Unable to connect - Driver doesn't support all needed functionality</source> + <translation type="obsolete">Impossible de se connecter - Le pilote ne supporte pas toutes les fonctionnalités nécessaires</translation> </message> <message> - <source>%1: size query failed</source> - <translation>%1 : la requête de taille a échoué</translation> + <source>Unable to disable autocommit</source> + <translation>Impossible de désactiver l'autocommit</translation> </message> <message> - <source>%1: doesn't exist</source> - <translation>%1: n'existe pas</translation> + <source>Unable to commit transaction</source> + <translation>Incapable de soumettre la transaction</translation> </message> <message> - <source>%1: UNIX key file doesn't exist</source> - <translation>%1: le fichier de clés UNIX n'existe pas</translation> + <source>Unable to rollback transaction</source> + <translation>Incapable d'annuler la transaction</translation> </message> -</context> -<context> - <name>QShortcut</name> <message> - <source>Space</source> - <translation>Espace</translation> + <source>Unable to enable autocommit</source> + <translation>Impossible d'activer l'autocommit</translation> </message> <message> - <source>Esc</source> - <translation>Échap</translation> + <source>Unable to connect - Driver doesn't support all functionality required</source> + <translation>Impossible de se connecter - Le pilote ne supporte pas toutes les fonctionnalités nécessaires</translation> </message> +</context> +<context> + <name>QODBCResult</name> <message> - <source>Tab</source> - <translation>Tab</translation> + <source>QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration</source> + <translation>QODBCResult::reset: Impossible d'utiliser 'SQL_CURSOR_STATIC' comme attribut de requête. Veuillez vérifier la configuration de votre pilote ODBC</translation> </message> <message> - <source>Backtab</source> - <translation>Tab arr</translation> + <source>Unable to execute statement</source> + <translation>Impossible d'exéctuer la requête</translation> </message> <message> - <source>Backspace</source> - <translation>Effacement</translation> + <source>Unable to fetch next</source> + <translation>Impossible de récupérer le suivant</translation> </message> <message> - <source>Return</source> - <translation>Retour</translation> + <source>Unable to prepare statement</source> + <translation>Impossible de préparer la requête</translation> </message> <message> - <source>Enter</source> - <translation>Entrée</translation> + <source>Unable to bind variable</source> + <translation>Impossible d'attacher la variable</translation> </message> <message> - <source>Ins</source> - <translation>Inser</translation> + <source>Unable to fetch last</source> + <translation>Impossible de récupérer le dernier</translation> </message> <message> - <source>Del</source> - <translation>Suppr</translation> + <source>Unable to fetch</source> + <translation>Impossible de récupérer</translation> </message> <message> - <source>Pause</source> - <translation>Pause</translation> + <source>Unable to fetch first</source> + <translation>Impossible de récupérer le premier</translation> </message> <message> - <source>Print</source> - <translation>Impr écran</translation> + <source>Unable to fetch previous</source> + <translation>Impossible de récupérer le précedent</translation> </message> +</context> +<context> + <name>QObject</name> <message> - <source>SysReq</source> - <translation>Syst</translation> + <source>Home</source> + <translation type="obsolete">Début</translation> </message> <message> - <source>Home</source> - <translation>Début</translation> + <source>Operation not supported on %1</source> + <translation type="obsolete">Opération non supportée sur %1</translation> </message> <message> - <source>End</source> - <translation>Fin</translation> + <source>Invalid URI: %1</source> + <translation type="obsolete">URI invalide : %1</translation> </message> <message> - <source>Left</source> - <translation>Gauche</translation> + <source>Write error writing to %1: %2</source> + <translation type="obsolete">Erreur d'écriture sur %1 : %2</translation> </message> <message> - <source>Up</source> - <translation>Haut</translation> + <source>Read error reading from %1: %2</source> + <translation type="obsolete">Erreur de lecture sur %1 : %2</translation> </message> <message> - <source>Right</source> - <translation>Droite</translation> + <source>Socket error on %1: %2</source> + <translation type="obsolete">Erreur de socket sur %1 : %2</translation> </message> <message> - <source>Down</source> - <translation>Bas</translation> + <source>Remote host closed the connection prematurely on %1</source> + <translation type="obsolete">L'hôte distant a fermé sa connexion de façon prématurée sur %1</translation> </message> <message> - <source>PgUp</source> - <translation>Page préc</translation> + <source>Protocol error: packet of size 0 received</source> + <translation type="obsolete">Erreur de protocole: paquet de taille 0 reçu</translation> </message> <message> - <source>PgDown</source> - <translation>Page suiv</translation> + <source>No host name given</source> + <translation type="obsolete">Nom d'hôte manquant</translation> </message> <message> - <source>CapsLock</source> - <translation>Verr maj</translation> + <source>Invalid hostname</source> + <translation type="obsolete">Nom d'hôte non valide</translation> </message> <message> - <source>NumLock</source> - <translation>Verr num</translation> + <source>PulseAudio Sound Server</source> + <translation>Serveur de son PulseAudio</translation> </message> <message> - <source>ScrollLock</source> - <translation>Arrêt défil</translation> + <source>"%1" duplicates a previous role name and will be disabled.</source> + <translation>"%1" est un doublon d'un nom de role existant et sera désactivé.</translation> </message> <message> - <source>Menu</source> - <translation>Menu</translation> + <source>invalid query: "%1"</source> + <translation>Requête invalide : "%1"</translation> </message> +</context> +<context> + <name>QPPDOptionsModel</name> <message> - <source>Help</source> - <translation>Aide</translation> + <source>Name</source> + <translation>Nom</translation> </message> <message> - <source>Back</source> - <translation>Précédent (historique)</translation> + <source>Value</source> + <translation>Valeur</translation> </message> +</context> +<context> + <name>QPSQLDriver</name> <message> - <source>Forward</source> - <translation>Successeur (historique)</translation> + <source>Unable to connect</source> + <translation>Impossible d'établir une connexion</translation> </message> <message> - <source>Stop</source> - <translation>Stop</translation> + <source>Could not begin transaction</source> + <translation>Impossible de démarrer la transaction</translation> </message> <message> - <source>Refresh</source> - <translation>Rafraîchir</translation> + <source>Could not commit transaction</source> + <translation>Impossible de soumettre la transaction</translation> </message> <message> - <source>Volume Down</source> - <translation>Volume bas</translation> + <source>Could not rollback transaction</source> + <translation>Impossible d'annuler la transaction</translation> </message> <message> - <source>Volume Mute</source> - <translation>Volume muet</translation> + <source>Unable to subscribe</source> + <translation>Impossible de s'inscrire</translation> </message> <message> - <source>Volume Up</source> - <translation>Volume haut -</translation> + <source>Unable to unsubscribe</source> + <translation>Impossible de se désinscrire</translation> </message> +</context> +<context> + <name>QPSQLResult</name> <message> - <source>Bass Boost</source> - <translation>Graves fort</translation> + <source>Unable to create query</source> + <translation>Impossible de créer la requête</translation> </message> <message> - <source>Bass Up</source> - <translation>Graves haut</translation> + <source>Unable to prepare statement</source> + <translation>Impossible de préparer la requête</translation> </message> +</context> +<context> + <name>QPageSetupWidget</name> <message> - <source>Bass Down</source> - <translation>Graves bas</translation> + <source>Centimeters (cm)</source> + <translation>Centimètres (cm)</translation> </message> <message> - <source>Treble Up</source> - <translation>Aigus haut</translation> + <source>Millimeters (mm)</source> + <translation>Millimètres (mm)</translation> </message> <message> - <source>Treble Down</source> - <translation>Aigus bas</translation> + <source>Inches (in)</source> + <translation>Pouces (in)</translation> </message> <message> - <source>Media Play</source> - <translation>Média démarrer</translation> + <source>Points (pt)</source> + <translation>Points (pts)</translation> </message> <message> - <source>Media Stop</source> - <translation>Média arrêt</translation> + <source>Form</source> + <translation>Formulaire</translation> </message> <message> - <source>Media Previous</source> - <translation>Média précédent</translation> + <source>Paper</source> + <translation>Papier</translation> </message> <message> - <source>Media Next</source> - <translation>Média suivant</translation> + <source>Page size:</source> + <translation>Dimensions :</translation> </message> <message> - <source>Media Record</source> - <translation>Média enregistrer</translation> + <source>Width:</source> + <translation>Largeur :</translation> </message> <message> - <source>Favorites</source> - <translation>Préférés</translation> + <source>Height:</source> + <translation>Hauteur :</translation> </message> <message> - <source>Search</source> - <translation>Recherche</translation> + <source>Paper source:</source> + <translation>Source du papier :</translation> </message> <message> - <source>Standby</source> - <translation>Attente</translation> + <source>Orientation</source> + <translation>Orientation</translation> </message> <message> - <source>Open URL</source> - <translation>Ouvrir URL</translation> + <source>Portrait</source> + <translation>Portrait</translation> </message> <message> - <source>Launch Mail</source> - <translation>Lancer courrier</translation> + <source>Landscape</source> + <translation>Paysage</translation> </message> <message> - <source>Launch Media</source> - <translation>Lancer média</translation> + <source>Reverse landscape</source> + <translation>Paysage inversé</translation> </message> <message> - <source>Launch (0)</source> - <translation>Lancer (0)</translation> + <source>Reverse portrait</source> + <translation>Portrait inversé</translation> </message> <message> - <source>Launch (1)</source> - <translation>Lancer (1)</translation> + <source>Margins</source> + <translation>Marges</translation> </message> <message> - <source>Launch (2)</source> - <translation>Lancer (2)</translation> + <source>top margin</source> + <translation>marge haute</translation> </message> <message> - <source>Launch (3)</source> - <translation>Lancer (3)</translation> + <source>left margin</source> + <translation>marge gauche</translation> </message> <message> - <source>Launch (4)</source> - <translation>Lancer (4)</translation> + <source>right margin</source> + <translation>marge droite</translation> </message> <message> - <source>Launch (5)</source> - <translation>Lancer (5)</translation> + <source>bottom margin</source> + <translation>marge basse</translation> </message> +</context> +<context> + <name>QPluginLoader</name> <message> - <source>Launch (6)</source> - <translation>Lancer (6)</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> <message> - <source>Launch (7)</source> - <translation>Lancer (7)</translation> + <source>The plugin was not loaded.</source> + <translation>Le plugin n'a pas été chargé.</translation> </message> +</context> +<context> + <name>QPrintDialog</name> <message> - <source>Launch (8)</source> - <translation>Lancer (8)</translation> + <source>locally connected</source> + <translation>connecté en local</translation> </message> <message> - <source>Launch (9)</source> - <translation>Lancer (9)</translation> + <source>unknown</source> + <translation>inconnu</translation> </message> <message> - <source>Launch (A)</source> - <translation>Lancer (A)</translation> + <source>OK</source> + <translation>OK</translation> </message> <message> - <source>Launch (B)</source> - <translation>Lancer (B)</translation> + <source>Cancel</source> + <translation type="obsolete">Annuler</translation> </message> <message> - <source>Launch (C)</source> - <translation>Lancer (C)</translation> + <source>Print in color if available</source> + <translation type="obsolete">Imprimer en couleur si possible</translation> </message> <message> - <source>Launch (D)</source> - <translation>Lancer (D)</translation> + <source>Print all</source> + <translation>Imprimer tout</translation> </message> <message> - <source>Launch (E)</source> - <translation>Lancer (E)</translation> - </message> - <message> - <source>Launch (F)</source> - <translation>Lancer (F)</translation> + <source>Print range</source> + <translation>Imprimer la sélection</translation> </message> <message> - <source>Print Screen</source> - <translation>Capture d'écran</translation> + <source>Print last page first</source> + <translation type="obsolete">Imprimer d'abord la dernière page</translation> </message> <message> - <source>Page Up</source> - <translation>Page haut</translation> + <source>Number of copies:</source> + <translation type="obsolete">Nombre de copies :</translation> </message> <message> - <source>Page Down</source> - <translation>Page bas</translation> + <source>Paper format</source> + <translation type="obsolete">Format du papier</translation> </message> <message> - <source>Caps Lock</source> - <translation>Verr Maj</translation> + <source>Portrait</source> + <translation type="obsolete">Portrait</translation> </message> <message> - <source>Num Lock</source> - <translation>Verr num</translation> + <source>Landscape</source> + <translation type="obsolete">Paysage</translation> </message> <message> - <source>Number Lock</source> - <translation>Verrouillage numérique</translation> + <source>A0 (841 x 1189 mm)</source> + <translation>A0 (841 x 1189 mm)</translation> </message> <message> - <source>Scroll Lock</source> - <translation>Arrêt défilement</translation> + <source>A1 (594 x 841 mm)</source> + <translation>A1 (594 x 841 mm)</translation> </message> <message> - <source>Insert</source> - <translation>Insérer</translation> + <source>A2 (420 x 594 mm)</source> + <translation>A2 (420 x 594 mm)</translation> </message> <message> - <source>Delete</source> - <translation>Supprimer</translation> + <source>A3 (297 x 420 mm)</source> + <translation>A3 (297 x 420 mm)</translation> </message> <message> - <source>Escape</source> - <translation>Échapement</translation> + <source>A5 (148 x 210 mm)</source> + <translation>A5 (148 x 210 mm)</translation> </message> <message> - <source>System Request</source> - <translation>Système</translation> + <source>A6 (105 x 148 mm)</source> + <translation>A6 (105 x 148 mm)</translation> </message> <message> - <source>Select</source> - <translation>Sélectionner</translation> + <source>A7 (74 x 105 mm)</source> + <translation>A7 (74 x 105 mm)</translation> </message> <message> - <source>Yes</source> - <translation>Oui</translation> + <source>A8 (52 x 74 mm)</source> + <translation>A8 (52 x 74 mm)</translation> </message> <message> - <source>No</source> - <translation>Non</translation> + <source>A9 (37 x 52 mm)</source> + <translation>A9 (37 x 52 mm)</translation> </message> <message> - <source>Context1</source> - <translation>Contexte1</translation> + <source>B0 (1000 x 1414 mm)</source> + <translation>B0 (1000 x 1414 mm)</translation> </message> <message> - <source>Context2</source> - <translation>Contexte2</translation> + <source>B1 (707 x 1000 mm)</source> + <translation>B1 (707 x 1000 mm)</translation> </message> <message> - <source>Context3</source> - <translation>Contexte3</translation> + <source>B2 (500 x 707 mm)</source> + <translation>B2 (500 x 707 mm)</translation> </message> <message> - <source>Context4</source> - <translation>Contexte4</translation> + <source>B3 (353 x 500 mm)</source> + <translation>B3 (353 x 500 mm)</translation> </message> <message> - <source>Call</source> - <translation>Appeler</translation> + <source>B4 (250 x 353 mm)</source> + <translation>B4 (250 x 353 mm)</translation> </message> <message> - <source>Hangup</source> - <translation>Raccrocher</translation> + <source>B6 (125 x 176 mm)</source> + <translation>B6 (125 x 176 mm)</translation> </message> <message> - <source>Flip</source> - <translation>Retourner</translation> + <source>B7 (88 x 125 mm)</source> + <translation>B7 (88 x 125 mm)</translation> </message> <message> - <source>Ctrl</source> - <translation>Ctrl</translation> + <source>B8 (62 x 88 mm)</source> + <translation>B8 (62 x 88 mm)</translation> </message> <message> - <source>Shift</source> - <translation>Maj</translation> + <source>B9 (44 x 62 mm)</source> + <translation>B9 (44 x 62 mm)</translation> </message> <message> - <source>Alt</source> - <translation>Alt</translation> + <source>B10 (31 x 44 mm)</source> + <translation>B10 (31 x 44 mm)</translation> </message> <message> - <source>Meta</source> - <translation>Méta</translation> + <source>C5E (163 x 229 mm)</source> + <translation>C5E (163 x 229 mm)</translation> </message> <message> - <source>+</source> - <translation>+</translation> + <source>DLE (110 x 220 mm)</source> + <translation>DLE (110 x 220 mm)</translation> </message> <message> - <source>F%1</source> - <translation>F%1</translation> + <source>Folio (210 x 330 mm)</source> + <translation>Folio (210 x 330 mm)</translation> </message> <message> - <source>Home Page</source> - <translation>Page d'accueil</translation> + <source>Ledger (432 x 279 mm)</source> + <translation>Ledger (432 x 279 mm)</translation> </message> <message> - <source>Monitor Brightness Up</source> - <translation>Augmenter la luminosité du moniteur</translation> + <source>Tabloid (279 x 432 mm)</source> + <translation>Tabloïde (279 x 432 mm)</translation> </message> <message> - <source>Monitor Brightness Down</source> - <translation>Baisser la luminosité du moniteur</translation> + <source>US Common #10 Envelope (105 x 241 mm)</source> + <translation>US Common #10 Envelope (105 x 241 mm)</translation> </message> <message> - <source>Keyboard Light On/Off</source> - <translation>Avec/sans lumière clavier</translation> + <source>Print current page</source> + <translation>Imprimer la page courante</translation> </message> <message> - <source>Keyboard Brightness Up</source> - <translation>Augmenter la luminosité du clavier</translation> + <source>Aliases: %1</source> + <translation>Alias : %1</translation> </message> <message> - <source>Keyboard Brightness Down</source> - <translation>Baisser la luminosité du clavier</translation> + <source>A4 (210 x 297 mm, 8.26 x 11.7 inches)</source> + <translation>A4 (210 x 297 mm)</translation> </message> <message> - <source>Power Off</source> - <translation>Couper l'alimentation</translation> + <source>B5 (176 x 250 mm, 6.93 x 9.84 inches)</source> + <translation>B5 (176 x 250 mm)</translation> </message> <message> - <source>Wake Up</source> - <translation>Réveiller</translation> + <source>Executive (7.5 x 10 inches, 191 x 254 mm)</source> + <translation>Executive (7,5 x 10 pouces, 191 x 254 mm)</translation> </message> <message> - <source>Eject</source> - <translation>Éjecter</translation> + <source>Legal (8.5 x 14 inches, 216 x 356 mm)</source> + <translation>Legal (8.5 x 14 pouces, 216 x 356 mm)</translation> </message> <message> - <source>Screensaver</source> - <translation>Économiseur d'écran</translation> + <source>Letter (8.5 x 11 inches, 216 x 279 mm)</source> + <translation>Letter (8,5 x 11 pouces, 216 x 279 mm)</translation> </message> <message> - <source>WWW</source> - <translation>WWW</translation> + <source>Print selection</source> + <translation>Imprimer la sélection</translation> </message> <message> - <source>Sleep</source> - <translation>Dormir</translation> + <source>Page size:</source> + <translation type="obsolete">Dimensions :</translation> </message> <message> - <source>LightBulb</source> - <translation>Ampoule</translation> + <source>Orientation:</source> + <translation type="obsolete">Orientation :</translation> </message> <message> - <source>Shop</source> - <translation>Magasin</translation> + <source>Paper source:</source> + <translation type="obsolete">Source du papier :</translation> </message> <message> - <source>History</source> - <translation>Historique</translation> + <source>Print</source> + <translation>Imprimer</translation> </message> <message> - <source>Add Favorite</source> - <translation>Ajouter favori</translation> + <source>File</source> + <translation type="obsolete">Fichier</translation> </message> <message> - <source>Hot Links</source> - <translation>Liens chauds</translation> + <source>Printer</source> + <translation type="obsolete">Imprimante</translation> </message> <message> - <source>Adjust Brightness</source> - <translation>Régler la luminosité</translation> + <source>Print To File ...</source> + <translation>Imprimer dans un fichier...</translation> </message> <message> - <source>Finance</source> - <translation>Finances</translation> + <source>Print dialog</source> + <translation type="obsolete">Fenêtre d'impression</translation> </message> <message> - <source>Community</source> - <translation>Communauté</translation> + <source>Size:</source> + <translation type="obsolete">Taille :</translation> </message> <message> - <source>Audio Rewind</source> - <translation>Audio arrière</translation> + <source>Properties</source> + <translation type="obsolete">Propriétés</translation> </message> <message> - <source>Back Forward</source> - <translation>Retour avant</translation> + <source>Printer info:</source> + <translation type="obsolete">Informations sur l'imprimante :</translation> </message> <message> - <source>Application Left</source> - <translation>Application gauche</translation> + <source>Browse</source> + <translation type="obsolete">Parcourir</translation> </message> <message> - <source>Application Right</source> - <translation>Application droite</translation> + <source>Print to file</source> + <translation type="obsolete">Imprimer dans un fichier</translation> </message> <message> - <source>Book</source> - <translation>Livre</translation> + <source>Pages from</source> + <translation type="obsolete">Pages</translation> </message> <message> - <source>CD</source> - <translation>CD</translation> + <source>to</source> + <translation type="obsolete">à</translation> </message> <message> - <source>Calculator</source> - <translation>Calculatrice</translation> + <source>Selection</source> + <translation type="obsolete">Sélection</translation> </message> <message> - <source>Clear</source> - <translation>Effacer</translation> + <source>Copies</source> + <translation type="obsolete">Copies</translation> </message> <message> - <source>Clear Grab</source> - <translation>Effacer la prise</translation> + <source>Collate</source> + <translation type="obsolete">Assembler</translation> </message> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Other</source> + <translation type="obsolete">Autre</translation> </message> <message> - <source>Copy</source> - <translation>Copier</translation> + <source>Double side printing</source> + <translation type="obsolete">Impression recto verso</translation> </message> <message> - <source>Cut</source> - <translation>Couper</translation> + <source>File %1 is not writable. +Please choose a different file name.</source> + <translation>Impossible d'écrire dans le fichier %1. +Veuillez choisir un nom de fichier différent.</translation> </message> <message> - <source>Display</source> - <translation>Affichage</translation> + <source>%1 already exists. +Do you want to overwrite it?</source> + <translation>%1 existe. +Voulez-vous l'écraser ?</translation> </message> <message> - <source>DOS</source> - <translation>DOS</translation> + <source>File exists</source> + <translation>Le fichier existe</translation> </message> <message> - <source>Documents</source> - <translation>Documents</translation> + <source><qt>Do you want to overwrite it?</qt></source> + <translation><qt>voulez-vous l'écraser ?</qt></translation> </message> <message> - <source>Spreadsheet</source> - <translation>Feuille de calcul</translation> + <source>%1 is a directory. +Please choose a different file name.</source> + <translation>%1 est un dossier. +Veuillez choisir un nom de fichier différent.</translation> </message> <message> - <source>Browser</source> - <translation>Navigateur</translation> + <source>A0</source> + <translation></translation> </message> <message> - <source>Game</source> - <translation>Jeu</translation> + <source>A1</source> + <translation></translation> </message> <message> - <source>Go</source> - <translation>Aller</translation> + <source>A2</source> + <translation></translation> </message> <message> - <source>iTouch</source> - <translation>iTouch</translation> + <source>A3</source> + <translation></translation> </message> <message> - <source>Logoff</source> - <translation>Fermer une session</translation> + <source>A4</source> + <translation></translation> </message> <message> - <source>Market</source> - <translation>Marché</translation> + <source>A5</source> + <translation></translation> </message> <message> - <source>Meeting</source> - <translation>Réunion</translation> + <source>A6</source> + <translation></translation> </message> <message> - <source>Keyboard Menu</source> - <translation>Menu du clavier</translation> + <source>A7</source> + <translation></translation> </message> <message> - <source>Menu PB</source> - <translation>Menu PB</translation> + <source>A8</source> + <translation></translation> </message> <message> - <source>My Sites</source> - <translation>Mes sites</translation> + <source>A9</source> + <translation></translation> </message> <message> - <source>News</source> - <translation>Actualités</translation> + <source>B0</source> + <translation></translation> </message> <message> - <source>Home Office</source> - <translation>Bureau à domicile</translation> + <source>B1</source> + <translation></translation> </message> <message> - <source>Option</source> - <translation>Option</translation> + <source>B2</source> + <translation></translation> </message> <message> - <source>Paste</source> - <translation>Coller</translation> + <source>B3</source> + <translation></translation> </message> <message> - <source>Phone</source> - <translation>Téléphone</translation> + <source>B4</source> + <translation></translation> </message> <message> - <source>Reply</source> - <translation>Répondre</translation> + <source>B5</source> + <translation></translation> </message> <message> - <source>Reload</source> - <translation>Recharger</translation> + <source>B6</source> + <translation></translation> </message> <message> - <source>Rotate Windows</source> - <translation>Faire tourner la fenêtre</translation> + <source>B7</source> + <translation></translation> </message> <message> - <source>Rotation PB</source> - <translation>Rotation PB</translation> + <source>B8</source> + <translation></translation> </message> <message> - <source>Rotation KB</source> - <translation>Rotation KB</translation> + <source>B9</source> + <translation></translation> </message> <message> - <source>Save</source> - <translation>Enregistrer</translation> + <source>B10</source> + <translation></translation> </message> <message> - <source>Send</source> - <translation>Envoyer</translation> + <source>C5E</source> + <translation></translation> </message> <message> - <source>Spellchecker</source> - <translation>Correcteur orthographique</translation> + <source>DLE</source> + <translation></translation> </message> <message> - <source>Split Screen</source> - <translation>Partager l'écran</translation> + <source>Executive</source> + <translation></translation> </message> <message> - <source>Support</source> - <translation>Supporter</translation> + <source>Folio</source> + <translation></translation> </message> <message> - <source>Task Panel</source> - <translation>Panneau de tâches</translation> + <source>Ledger</source> + <translation></translation> </message> <message> - <source>Terminal</source> - <translation>Terminal</translation> + <source>Legal</source> + <translation></translation> </message> <message> - <source>Tools</source> - <translation>Outils</translation> + <source>Letter</source> + <translation></translation> </message> <message> - <source>Travel</source> - <translation>Voyager</translation> + <source>Tabloid</source> + <translation></translation> </message> <message> - <source>Video</source> - <translation>Vidéo</translation> + <source>US Common #10 Envelope</source> + <translation></translation> </message> <message> - <source>Word Processor</source> - <translation>Traitement de texte</translation> + <source>Custom</source> + <translation>Personnalisé</translation> </message> <message> - <source>XFer</source> - <translation>XFer</translation> + <source>&Options >></source> + <translation></translation> </message> <message> - <source>Zoom In</source> - <translation>Agrandir</translation> + <source>&Print</source> + <translation>Im&primer</translation> </message> <message> - <source>Zoom Out</source> - <translation>Rétrécir</translation> + <source>&Options <<</source> + <translation></translation> </message> <message> - <source>Away</source> - <translation>Absent</translation> + <source>Print to File (PDF)</source> + <translation>Imprimer dans un fichier (PDF)</translation> </message> <message> - <source>Messenger</source> - <translation>Messagerie instantanée</translation> + <source>Print to File (Postscript)</source> + <translation>Imprimer dans un fichier (PostScript)</translation> </message> <message> - <source>WebCam</source> - <translation>Webcaméra</translation> + <source>Local file</source> + <translation>Fichier local</translation> </message> <message> - <source>Mail Forward</source> - <translation>Faire suivre l'e-mail</translation> + <source>Write %1 file</source> + <translation>Ecriture du fichier %1</translation> </message> <message> - <source>Pictures</source> - <translation>Images</translation> + <source>The 'From' value cannot be greater than the 'To' value.</source> + <translation>La valeur 'de' ne peut pas être plus grande que la valeur 'à'.</translation> </message> +</context> +<context> + <name>QPrintPreviewDialog</name> <message> - <source>Music</source> - <translation>Musique</translation> + <source>%1%</source> + <translation>%1%</translation> </message> <message> - <source>Battery</source> - <translation>Batterie</translation> + <source>Print Preview</source> + <translation>Aperçu avant impression</translation> </message> <message> - <source>Bluetooth</source> - <translation>Bluetooth</translation> + <source>Next page</source> + <translation>Page suivante</translation> </message> <message> - <source>Wireless</source> - <translation>Sans fil</translation> + <source>Previous page</source> + <translation>Page précédente</translation> </message> <message> - <source>Ultra Wide Band</source> - <translation>Bande ultralarge</translation> + <source>First page</source> + <translation>Première page</translation> </message> <message> - <source>Audio Forward</source> - <translation>Audio avant</translation> + <source>Last page</source> + <translation>Dernière page</translation> </message> <message> - <source>Audio Repeat</source> - <translation>Audio répéter</translation> + <source>Fit width</source> + <translation>Ajuster la largeur</translation> </message> <message> - <source>Audio Random Play</source> - <translation>Audio lecture aléatoire</translation> + <source>Fit page</source> + <translation>Ajuster la page</translation> </message> <message> - <source>Subtitle</source> - <translation>Sous-titre</translation> + <source>Zoom in</source> + <translation>Zoom avant</translation> </message> <message> - <source>Audio Cycle Track</source> - <translation>Audio répéter la piste</translation> + <source>Zoom out</source> + <translation>Zoom arrière</translation> </message> <message> - <source>Time</source> - <translation>Heure</translation> + <source>Portrait</source> + <translation>Portrait</translation> </message> <message> - <source>View</source> - <translation>Afficher</translation> + <source>Landscape</source> + <translation>Paysage</translation> </message> <message> - <source>Top Menu</source> - <translation>Haut du menu</translation> + <source>Show single page</source> + <translation>Afficher une seule page</translation> </message> <message> - <source>Suspend</source> - <translation>Suspendre</translation> + <source>Show facing pages</source> + <translation>Afficher deux pages</translation> </message> <message> - <source>Hibernate</source> - <translation>Hiberner</translation> + <source>Show overview of all pages</source> + <translation>Afficher un aperçu de toutes les pages</translation> </message> -</context> -<context> - <name>QSlider</name> <message> - <source>Page left</source> - <translation>Page précédente</translation> + <source>Print</source> + <translation>Imprimer</translation> </message> <message> - <source>Page up</source> - <translation>Page précédente</translation> + <source>Page setup</source> + <translation>Mise en page</translation> </message> <message> - <source>Position</source> - <translation>Position</translation> + <source>Close</source> + <translation>Fermer</translation> </message> <message> - <source>Page right</source> - <translation>Page suivante</translation> + <source>Export to PDF</source> + <translation>Exporter vers PDF</translation> </message> <message> - <source>Page down</source> - <translation>Page suivante</translation> + <source>Export to PostScript</source> + <translation>Exporter vers PostScript</translation> + </message> + <message> + <source>Page Setup</source> + <translation>Mise en page</translation> </message> </context> <context> - <name>QSocks5SocketEngine</name> + <name>QPrintPropertiesDialog</name> <message> - <source>Connection to proxy refused</source> - <translation>Connexion au proxy refusée</translation> + <source>PPD Properties</source> + <translation type="obsolete">Propriétés PPD</translation> </message> <message> - <source>Connection to proxy closed prematurely</source> - <translation>connexion au proxy fermée prématurément</translation> - </message> - <message> - <source>Proxy host not found</source> - <translation>Hôte proxy introuvable</translation> + <source>Save</source> + <translation type="obsolete">Enregistrer</translation> </message> <message> - <source>Connection to proxy timed out</source> - <translation>Connexion au proxy expirée</translation> + <source>OK</source> + <translation type="obsolete">OK</translation> </message> +</context> +<context> + <name>QPrintPropertiesWidget</name> <message> - <source>Proxy authentication failed</source> - <translation>L'authentification proxy a échoué</translation> + <source>Form</source> + <translation>Formulaire</translation> </message> <message> - <source>Proxy authentication failed: %1</source> - <translation>L'authentification proxy a échoué : %1</translation> + <source>Page</source> + <translation></translation> </message> <message> - <source>SOCKS version 5 protocol error</source> - <translation>Erreur de protocole SOCKS version 5</translation> + <source>Advanced</source> + <translation>Avancé</translation> </message> +</context> +<context> + <name>QPrintSettingsOutput</name> <message> - <source>General SOCKSv5 server failure</source> - <translation>Erreur générale du serveur SOCKSv5</translation> + <source>Form</source> + <translation>Formulaire</translation> </message> <message> - <source>Connection not allowed by SOCKSv5 server</source> - <translation>Connexion refusée par le serveur SOCKSv5</translation> + <source>Copies</source> + <translation>Copies</translation> </message> <message> - <source>TTL expired</source> - <translation>TTL expiré</translation> + <source>Print range</source> + <translation>Imprimer la sélection</translation> </message> <message> - <source>SOCKSv5 command not supported</source> - <translation>Commande SOCKSv5 non supportée</translation> + <source>Print all</source> + <translation>Imprimer tout</translation> </message> <message> - <source>Address type not supported</source> - <translation>Type d'adresse non supporté</translation> + <source>Pages from</source> + <translation>Pages</translation> </message> <message> - <source>Unknown SOCKSv5 proxy error code 0x%1</source> - <translation>Erreur proxy SOCKSv5 inconnue : 0x%1</translation> + <source>to</source> + <translation>à</translation> </message> <message> - <source>Socks5 timeout error connecting to socks server</source> - <translation type="obsolete">Erreur d'expiration socks5 lors de l'établissement d'une connexion au serveur socks</translation> + <source>Selection</source> + <translation>Sélection</translation> </message> <message> - <source>Network operation timed out</source> - <translation>L'opération réseau a expiré</translation> + <source>Output Settings</source> + <translation>Paramètres de sortie</translation> </message> -</context> -<context> - <name>QSpinBox</name> <message> - <source>More</source> - <translation>Plus</translation> + <source>Copies:</source> + <translation>Copies :</translation> </message> <message> - <source>Less</source> - <translation>Moins</translation> + <source>Collate</source> + <translation>Assembler</translation> </message> -</context> -<context> - <name>QSql</name> <message> - <source>Delete</source> - <translation>Supprimer</translation> + <source>Reverse</source> + <translation>Inverse</translation> </message> <message> - <source>Delete this record?</source> - <translation>Supprimer cet enregistrement ?</translation> + <source>Options</source> + <translation>Options</translation> </message> <message> - <source>Yes</source> - <translation>Oui</translation> + <source>Color Mode</source> + <translation>Mode de couleur</translation> </message> <message> - <source>No</source> - <translation>Non</translation> + <source>Color</source> + <translation>Couleur</translation> </message> <message> - <source>Insert</source> - <translation>Insérer</translation> + <source>Grayscale</source> + <translation>Dégradé de gris</translation> </message> <message> - <source>Update</source> - <translation>Actualiser</translation> + <source>Duplex Printing</source> + <translation>Impression en duplex</translation> </message> <message> - <source>Save edits?</source> - <translation>Enregistrer les modifications ?</translation> + <source>None</source> + <translation>Aucun</translation> </message> <message> - <source>Cancel</source> - <translation>Annuler</translation> + <source>Long side</source> + <translation>Côté long</translation> </message> <message> - <source>Confirm</source> - <translation>Confirmer</translation> + <source>Short side</source> + <translation>Côté court</translation> </message> <message> - <source>Cancel your edits?</source> - <translation>Annuler vos modifications ?</translation> + <source>Current Page</source> + <translation>Page courante</translation> </message> </context> <context> - <name>QSslSocket</name> + <name>QPrintWidget</name> <message> - <source>Unable to write data: %1</source> - <translation>Impossible d'écrire les données : %1</translation> + <source>Form</source> + <translation>Formulaire</translation> </message> <message> - <source>Error while reading: %1</source> - <translation>Erreur lors de la lecture : %1</translation> + <source>Printer</source> + <translation>Imprimante</translation> </message> <message> - <source>Error during SSL handshake: %1</source> - <translation>Erreur lors de la poignée de main SSL : %1</translation> + <source>&Name:</source> + <translation>&Nom :</translation> </message> <message> - <source>Error creating SSL context (%1)</source> - <translation>Erreur lors de la création du contexte SSL (%1)</translation> + <source>P&roperties</source> + <translation>P&ropriétés</translation> </message> <message> - <source>Invalid or empty cipher list (%1)</source> - <translation>La list de chiffrements est invalide ou vide (%1)</translation> + <source>Location:</source> + <translation>Emplacement :</translation> </message> <message> - <source>Error creating SSL session, %1</source> - <translation>Erreur lors de la création de la session SSL, %1</translation> + <source>Preview</source> + <translation>Prévisualisation</translation> </message> <message> - <source>Error creating SSL session: %1</source> - <translation>Erreur lors de la création de la session SSL : %1</translation> + <source>Type:</source> + <translation>Type :</translation> </message> <message> - <source>Cannot provide a certificate with no key, %1</source> - <translation>Impossible de fournir un certificat sans clé, %1</translation> + <source>Output &file:</source> + <translation>&Fichier de sortie:</translation> </message> <message> - <source>Error loading local certificate, %1</source> - <translation>Erreur lors du chargement du certificat local, %1</translation> + <source>...</source> + <translation></translation> </message> +</context> +<context> + <name>QProcess</name> <message> - <source>Error loading private key, %1</source> - <translation>Erreur lors du chargement de la clé privée, %1</translation> + <source>Could not open input redirection for reading</source> + <translation>Impossible d'ouvrir la redirection d'entrée en lecture</translation> </message> <message> - <source>Private key do not certificate public key, %1</source> - <translation type="obsolete">La clé privée ne certifie pas la clé publique, %1</translation> + <source>Could not open output redirection for writing</source> + <translation>Impossible d'ouvrir la redirection de sortie pour écriture</translation> </message> <message> - <location filename="../src/network/ssl/qsslsocket_openssl.cpp" line="+327"/> - <source>Private key does not certificate public key, %1</source> - <translation>La clé privée ne certifie pas la clé publique, %1</translation> + <source>Resource error (fork failure): %1</source> + <translation>Erreur de ressouce (fork) : %1</translation> </message> <message> - <source>Unable to decrypt data: %1</source> - <translation>Impossible de décrypter les données: %1</translation> + <source>Process operation timed out</source> + <translation>Operation de processus a expiré</translation> </message> <message> - <source>Private key does not certify public key, %1</source> - <translation>La clé privée ne certifie pas la clé publique, %1</translation> + <source>Error reading from process</source> + <translation>Erreur de lecture du processus</translation> </message> <message> - <source>No error</source> - <translation>Aucune erreur</translation> + <source>Error writing to process</source> + <translation>Erreur d"écriture vers le processus</translation> </message> <message> - <source>The issuer certificate could not be found</source> - <translation>Le certificat de l'émetteur est introuvable</translation> + <source>Process crashed</source> + <translation>Le processus à planté</translation> </message> <message> - <source>The certificate signature could not be decrypted</source> - <translation>La signature du certificat n'a pas pu être vérifiée</translation> + <source>No program defined</source> + <translation>Aucun programme défini</translation> </message> <message> - <source>The public key in the certificate could not be read</source> - <translation>La clé publique du certificat n'a pas pu être lue</translation> + <source>Process failed to start</source> + <translation type="obsolete">Le processus n'a pas démarré</translation> </message> <message> - <source>The signature of the certificate is invalid</source> - <translation>La signature du certificat n'est pas valide</translation> + <source>Process failed to start: %1</source> + <translation>Le démarrage du processus a échoué: %1</translation> </message> +</context> +<context> + <name>QProgressDialog</name> <message> - <source>The certificate is not yet valid</source> - <translation>Le certificat n'est pas encore valide</translation> + <source>Cancel</source> + <translation>Annuler</translation> </message> +</context> +<context> + <name>QPushButton</name> <message> - <source>The certificate has expired</source> - <translation>Le certificat a expiré</translation> + <source>Open</source> + <translation>Ouvrir</translation> </message> +</context> +<context> + <name>QRadioButton</name> <message> - <source>The certificate's notBefore field contains an invalid time</source> - <translation>Le champ pasAvant du certificat inclut une heure non valide</translation> + <source>Check</source> + <translation>Cocher</translation> </message> +</context> +<context> + <name>QRegExp</name> <message> - <source>The certificate's notAfter field contains an invalid time</source> - <translation>Le champ pasAprès du certificat inclut une heure non valide</translation> + <source>no error occurred</source> + <translation>aucune erreur ne s'est produite</translation> </message> <message> - <source>The certificate is self-signed, and untrusted</source> - <translation>Le certificat n'est pas sécurisé car auto-signé</translation> + <source>disabled feature used</source> + <translation>option désactivée</translation> </message> <message> - <source>The root certificate of the certificate chain is self-signed, and untrusted</source> - <translation>Le certificat racine de la chaîne de certificats n'est pas sécurisé car signé automatiquement</translation> + <source>bad char class syntax</source> + <translation>syntaxe invalide pour classe de caractère</translation> </message> <message> - <source>The issuer certificate of a locally looked up certificate could not be found</source> - <translation>Le certificat de l'émetteur d'un certificat converti localement est introuvable</translation> + <source>bad lookahead syntax</source> + <translation>syntaxe invalide pour lookahead</translation> </message> <message> - <source>No certificates could be verified</source> - <translation>Aucun certificat n'a pu être vérifié</translation> + <source>bad repetition syntax</source> + <translation>syntaxe invalide pour répétition</translation> </message> <message> - <source>One of the CA certificates is invalid</source> - <translation>L'un des certificats CA n'est pas valide</translation> + <source>invalid octal value</source> + <translation>valeur octale invalide</translation> </message> <message> - <source>The basicConstraints path length parameter has been exceeded</source> - <translation>Le paramètre de longueur du chemin basicConstraints a été dépassé</translation> + <source>missing left delim</source> + <translation>délémiteur gauche manquant</translation> </message> <message> - <source>The supplied certificate is unsuitable for this purpose</source> - <translation>Le certificat fourni ne convient pas pour cet objectif</translation> + <source>unexpected end</source> + <translation>fin impromptue</translation> </message> <message> - <source>The root CA certificate is not trusted for this purpose</source> - <translation>Le certificat CA racine n'est pas sécurisé pour cet objectif</translation> + <source>met internal limit</source> + <translation>rencontré limite interne</translation> </message> <message> - <source>The root CA certificate is marked to reject the specified purpose</source> - <translation>Le certificat CA racine est marqué pour rejeter l'objectif spécifié</translation> - </message> - <message> - <source>The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate</source> - <translation>Le certificat de l'émetteur candidat actuel a été rejeté car le nom de son sujet ne correspondait pas au nom de l'émetteur du certificat actuel</translation> - </message> - <message> - <source>The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate</source> - <translation>Le certificat de l'émetteur candidat actuel a été rejeté car le nom de son sujet et son numéro de série étaient présents et ne correspondaient pas à l'identifiant de la clé d'autorité du certificat actuel</translation> - </message> - <message> - <source>The peer did not present any certificate</source> - <translation>Le poste ne contient aucun certificat</translation> - </message> - <message> - <source>The host name did not match any of the valid hosts for this certificate</source> - <translation>Le nom d'hôte ne correspondait à aucun des hôtes valides pour ce certificat</translation> + <source>invalid interval</source> + <translation>intervalle non valide</translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>invalid category</source> + <translation>catégorie non valide</translation> </message> </context> <context> - <name>QSystemSemaphore</name> + <name>QSQLite2Driver</name> <message> - <source>%1: out of resources</source> - <translation>%1: plus de ressources disponibles</translation> + <source>Error to open database</source> + <translation type="obsolete">Erreur à l'ouverture de la base de données</translation> </message> <message> - <source>%1: permission denied</source> - <translation>%1: permission refusée</translation> + <source>Unable to begin transaction</source> + <translation>Impossible de démarrer la transaction</translation> </message> <message> - <source>%1: already exists</source> - <translation>%1 : existe déjà</translation> + <source>Unable to commit transaction</source> + <translation>Impossible de soumettre la transaction</translation> </message> <message> - <source>%1: does not exist</source> - <translation>%1 : n'existe pas</translation> + <source>Unable to rollback Transaction</source> + <translation type="obsolete">Impossible d'annuler la transaction</translation> </message> <message> - <source>%1: unknown error %2</source> - <translation>%1: erreur inconnue %2</translation> + <source>Error opening database</source> + <translation>Erreur lors de l'ouverture de la base de données</translation> + </message> + <message> + <source>Unable to rollback transaction</source> + <translation>Impossible de répéter la transaction</translation> </message> </context> <context> - <name>QTDSDriver</name> + <name>QSQLite2Result</name> <message> - <source>Unable to open connection</source> - <translation>Impossible d'ouvrir la connexion</translation> + <source>Unable to fetch results</source> + <translation>Impossible de récupérer les résultats</translation> </message> <message> - <source>Unable to use database</source> - <translation>Impossible d'utiliser la base de données</translation> + <source>Unable to execute statement</source> + <translation>Impossible d'exécuter la requête</translation> </message> </context> <context> - <name>QTabBar</name> + <name>QSQLiteDriver</name> <message> - <source>Scroll Left</source> - <translation>Défiler vers la gauche</translation> + <source>Error opening database</source> + <translation>Erreur lors de l'ouverture de la base de données</translation> </message> <message> - <source>Scroll Right</source> - <translation>Défiler vers la droite</translation> + <source>Error closing database</source> + <translation>Erreur lors de la fermeture de la base de données</translation> </message> -</context> -<context> - <name>QTcpServer</name> <message> - <source>Socket operation unsupported</source> - <translation type="obsolete">Operation socket non supportée</translation> + <source>Unable to begin transaction</source> + <translation>Impossible de démarrer la transaction</translation> </message> <message> - <source>Operation on socket is not supported</source> - <translation>Opération sur le socket non supportée</translation> + <source>Unable to commit transaction</source> + <translation>Incapable de soumettre la transaction</translation> </message> -</context> -<context> - <name>QTextControl</name> <message> - <source>&Undo</source> - <translation>&Annuler</translation> + <source>Unable to roll back transaction</source> + <translation type="obsolete">Impossible d'annuler la transaction</translation> </message> <message> - <source>&Redo</source> - <translation>&Répéter</translation> + <source>Unable to rollback transaction</source> + <translation>Impossible d'annuler la transaction</translation> </message> +</context> +<context> + <name>QSQLiteResult</name> <message> - <source>Cu&t</source> - <translation>Co&uper</translation> + <source>Unable to fetch row</source> + <translation>Impossible de récupérer la rangée</translation> </message> <message> - <source>&Copy</source> - <translation>Cop&ier</translation> + <source>Unable to execute statement</source> + <translation>Impossible d'exécuter la requête</translation> </message> <message> - <source>Copy &Link Location</source> - <translation>Copier l'adresse du &lien</translation> + <source>Unable to reset statement</source> + <translation>Impossible de réinitialiser la requête</translation> </message> <message> - <source>&Paste</source> - <translation>Co&ller</translation> + <source>Unable to bind parameters</source> + <translation>Impossible d'attacher les paramètres</translation> </message> <message> - <source>Delete</source> - <translation>Supprimer</translation> + <source>Parameter count mismatch</source> + <translation>Nombre de paramètres incorrect</translation> </message> <message> - <source>Select All</source> - <translation>Tout sélectionner</translation> + <source>No query</source> + <translation>Pas de requête</translation> </message> </context> <context> - <name>QToolButton</name> + <name>QScriptBreakpointsModel</name> <message> - <source>Press</source> - <translation>Presser</translation> + <source>ID</source> + <translation>Identifiant</translation> </message> <message> - <source>Open</source> - <translation>Ouvrir</translation> + <source>Location</source> + <translation>Lieu</translation> </message> -</context> -<context> - <name>QUdpSocket</name> <message> - <source>This platform does not support IPv6</source> - <translation>Cette plateforme ne supporte pas IPv6</translation> + <source>Condition</source> + <translation>Condition</translation> </message> -</context> -<context> - <name>QUndoGroup</name> <message> - <source>Undo</source> - <translation>Annuler</translation> + <source>Ignore-count</source> + <translation>Comptes d'ignorés</translation> </message> <message> - <source>Redo</source> - <translation>Répéter</translation> + <source>Single-shot</source> + <translation>Un seul tir</translation> </message> -</context> -<context> - <name>QUndoModel</name> <message> - <source><empty></source> - <translation><vide></translation> + <source>Hit-count</source> + <translation>Compte de coups</translation> </message> </context> <context> - <name>QUndoStack</name> + <name>QScriptBreakpointsWidget</name> <message> - <source>Undo</source> - <translation>Annuler</translation> + <source>New</source> + <translation>Créer</translation> </message> <message> - <source>Redo</source> - <translation>Répéter</translation> + <source>Delete</source> + <translation>Supprimer</translation> </message> </context> <context> - <name>QUnicodeControlCharacterMenu</name> + <name>QScriptDebugger</name> <message> - <source>LRM Left-to-right mark</source> - <translation>LRM Left-to-right mark</translation> + <source>Go to Line</source> + <translation>Aller à la ligne</translation> </message> <message> - <source>RLM Right-to-left mark</source> - <translation>RLM Right-to-left mark</translation> + <source>Line:</source> + <translation>Ligne:</translation> </message> <message> - <source>ZWJ Zero width joiner</source> - <translation>ZWJ Zero width joiner</translation> + <source>Interrupt</source> + <translation>Interrompre</translation> </message> <message> - <source>ZWNJ Zero width non-joiner</source> - <translation>ZWNJ Zero width non-joiner</translation> + <source>Shift+F5</source> + <translation>Shift+F5</translation> </message> <message> - <source>ZWSP Zero width space</source> - <translation>ZWSP Zero width space</translation> + <source>Continue</source> + <translation>Continuer</translation> </message> <message> - <source>LRE Start of left-to-right embedding</source> - <translation>LRE Start of left-to-right embedding</translation> + <source>F5</source> + <translation>F5</translation> </message> <message> - <source>RLE Start of right-to-left embedding</source> - <translation>RLE Start of right-to-left embedding</translation> + <source>Step Into</source> + <translation>Pas à pas détaillé</translation> </message> <message> - <source>LRO Start of left-to-right override</source> - <translation>LRO Start of left-to-right override</translation> + <source>F11</source> + <translation>F11</translation> </message> <message> - <source>RLO Start of right-to-left override</source> - <translation>RLO Start of right-to-left override</translation> + <source>Step Over</source> + <translation>Pas à pas principal</translation> </message> <message> - <source>PDF Pop directional formatting</source> - <translation>PDF Pop directional formatting</translation> + <source>F10</source> + <translation>F10</translation> </message> <message> - <source>Insert Unicode control character</source> - <translation>Insérer caractère de contrôle Unicode</translation> + <source>Step Out</source> + <translation>Pas à pas sortant</translation> </message> -</context> -<context> - <name>QWebFrame</name> <message> - <source>Request cancelled</source> - <translation>Requête annulée</translation> + <source>Shift+F11</source> + <translation>Shift+F11</translation> </message> <message> - <source>Request blocked</source> - <translation>Requête bloquée</translation> + <source>Run to Cursor</source> + <translation>Exécuter au curseur</translation> </message> <message> - <source>Cannot show URL</source> - <translation>Impossible d'afficher l'URL</translation> + <source>Ctrl+F10</source> + <translation>Ctrl+F10</translation> </message> <message> - <location filename="../src/3rdparty/webkit/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp" line="+722"/> - <source>Frame load interruped by policy change</source> - <translation>Chargement de la frame interrompu par un changement de configuration</translation> + <source>Run to New Script</source> + <translation>Exécuter au nouveau script</translation> </message> <message> - <source>Cannot show mimetype</source> - <translation>Impossible d'afficher le mimetype</translation> + <source>Toggle Breakpoint</source> + <translation>Basculer le point d'arrêt</translation> </message> <message> - <source>File does not exist</source> - <translation>Le fichier n'existe pas</translation> + <source>F9</source> + <translation>F9</translation> </message> <message> - <source>Frame load interrupted by policy change</source> - <translation>Chargement du cadre interrompue par le changement de stratégie</translation> + <source>Clear Debug Output</source> + <translation>Effacer les résultats du débogage</translation> </message> -</context> -<context> - <name>QWebPage</name> <message> - <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="+42"/> - <source>Submit</source> - <comment>default label for Submit buttons in forms on web pages</comment> - <translation>Soumettre</translation> + <source>Clear Error Log</source> + <translation>Effacer le journal d'erreurs</translation> </message> <message> - <location line="+5"/> - <source>Submit</source> - <comment>Submit (input element) alt text for <input> elements with no alt, title, or value</comment> - <translation>Soumettre</translation> + <source>Clear Console</source> + <translation>Effacer la console</translation> </message> <message> - <location line="+5"/> - <source>Reset</source> - <comment>default label for Reset buttons in forms on web pages</comment> - <translation>Réinitialiser</translation> + <source>&Find in Script...</source> + <translation>&Chercher dans le script...</translation> </message> <message> - <source>Searchable Index</source> - <comment>text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'</comment> - <translation type="obsolete">Index recherchable</translation> + <source>Ctrl+F</source> + <translation>Ctrl+F</translation> </message> <message> - <location line="+15"/> - <source>Choose File</source> - <comment>title for file button used in HTML forms</comment> - <translation>Choisir le fichier</translation> + <source>Find &Next</source> + <translation>Résultat &suivant</translation> + </message> + <message> + <source>F3</source> + <translation>F3</translation> + </message> + <message> + <source>Find &Previous</source> + <translation>Chercher &précédent</translation> + </message> + <message> + <source>Shift+F3</source> + <translation>Shift+F3</translation> + </message> + <message> + <source>Ctrl+G</source> + <translation>Ctrl+G</translation> + </message> + <message> + <source>Debug</source> + <translation>Déboguer</translation> + </message> +</context> +<context> + <name>QScriptDebuggerCodeFinderWidget</name> + <message> + <source>Close</source> + <translation>Fermer</translation> + </message> + <message> + <source>Previous</source> + <translation>Précédent</translation> + </message> + <message> + <source>Next</source> + <translation>Suivant</translation> + </message> + <message> + <source>Case Sensitive</source> + <translation>Sensible à la casse</translation> + </message> + <message> + <source>Whole words</source> + <translation>Mots complets</translation> + </message> + <message> + <source><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped</source> + <translation><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;La recherche est revenue au début</translation> + </message> +</context> +<context> + <name>QScriptDebuggerLocalsModel</name> + <message> + <source>Name</source> + <translation>Nom</translation> + </message> + <message> + <source>Value</source> + <translation>Valeur</translation> + </message> +</context> +<context> + <name>QScriptDebuggerStackModel</name> + <message> + <source>Level</source> + <translation>Niveau</translation> + </message> + <message> + <source>Name</source> + <translation>Nom</translation> + </message> + <message> + <source>Location</source> + <translation>Lieu</translation> + </message> +</context> +<context> + <name>QScriptEdit</name> + <message> + <source>Toggle Breakpoint</source> + <translation>Basculer le point d'arrêt</translation> + </message> + <message> + <source>Disable Breakpoint</source> + <translation>Désactiver le point d'arrêt</translation> + </message> + <message> + <source>Enable Breakpoint</source> + <translation>Activer le point d'arrêt</translation> + </message> + <message> + <source>Breakpoint Condition:</source> + <translation>Condition du point d'arrêt:</translation> + </message> +</context> +<context> + <name>QScriptEngineDebugger</name> + <message> + <source>Loaded Scripts</source> + <translation>Scripts chargés</translation> + </message> + <message> + <source>Breakpoints</source> + <translation>Points d'arrêt</translation> + </message> + <message> + <source>Stack</source> + <translation>Empiler</translation> + </message> + <message> + <source>Locals</source> + <translation>Locaux</translation> + </message> + <message> + <source>Console</source> + <translation>Console</translation> + </message> + <message> + <source>Debug Output</source> + <translation>Résultats du débogage</translation> + </message> + <message> + <source>Error Log</source> + <translation>Journal d'erreurs</translation> + </message> + <message> + <source>Search</source> + <translation>Chercher</translation> + </message> + <message> + <source>View</source> + <translation>Affichage</translation> + </message> + <message> + <source>Qt Script Debugger</source> + <translation>Débogueur de script Qt</translation> + </message> +</context> +<context> + <name>QScriptNewBreakpointWidget</name> + <message> + <source>Close</source> + <translation>Fermer</translation> + </message> +</context> +<context> + <name>QScrollBar</name> + <message> + <source>Scroll here</source> + <translation>Défiler jusqu'ici</translation> + </message> + <message> + <source>Left edge</source> + <translation>Extrême gauche</translation> + </message> + <message> + <source>Top</source> + <translation>En haut</translation> + </message> + <message> + <source>Right edge</source> + <translation>Extrême droite</translation> + </message> + <message> + <source>Bottom</source> + <translation>En bas</translation> + </message> + <message> + <source>Page left</source> + <translation>Page précédente</translation> + </message> + <message> + <source>Page up</source> + <translation>Page précédente</translation> + </message> + <message> + <source>Page right</source> + <translation>Page suivante</translation> + </message> + <message> + <source>Page down</source> + <translation>Page suivante</translation> + </message> + <message> + <source>Scroll left</source> + <translation>Défiler vers la gauche</translation> + </message> + <message> + <source>Scroll up</source> + <translation>Défiler vers le haut</translation> + </message> + <message> + <source>Scroll right</source> + <translation>Défiler vers la droite</translation> + </message> + <message> + <source>Scroll down</source> + <translation>Défiler vers le bas</translation> + </message> + <message> + <source>Line up</source> + <translation>Aligner</translation> + </message> + <message> + <source>Position</source> + <translation>Position</translation> + </message> + <message> + <source>Line down</source> + <translation>Aligner en-bas</translation> + </message> +</context> +<context> + <name>QSharedMemory</name> + <message> + <source>%1: unable to set key on lock</source> + <translation>%1 : impossible d'affecter la clé au verrou</translation> + </message> + <message> + <source>%1: create size is less then 0</source> + <translation>%1 : taille de création est inférieur à 0</translation> + </message> + <message> + <source>%1: unable to lock</source> + <translation>%1 : impossible de vérrouiller</translation> + </message> + <message> + <source>%1: unable to unlock</source> + <translation>%1 : impossible de déverrouiller</translation> + </message> + <message> + <source>%1: permission denied</source> + <translation>%1 : permission refusée</translation> + </message> + <message> + <source>%1: already exists</source> + <translation>%1 : existe déjà</translation> + </message> + <message> + <source>%1: doesn't exists</source> + <translation>%1 : n'existe pas</translation> + </message> + <message> + <source>%1: out of resources</source> + <translation>%1 : plus de ressources disponibles</translation> + </message> + <message> + <source>%1: unknown error %2</source> + <translation>%1 : erreur inconnue %2</translation> + </message> + <message> + <source>%1: key is empty</source> + <translation>%1 : clé vide</translation> + </message> + <message> + <source>%1: unix key file doesn't exists</source> + <translation type="obsolete">%1 : le fichier de clé unix n'existe pas</translation> + </message> + <message> + <source>%1: ftok failed</source> + <translation>%1 : ftok a échoué</translation> + </message> + <message> + <source>%1: unable to make key</source> + <translation>%1 : impossible de créer la clé</translation> + </message> + <message> + <source>%1: system-imposed size restrictions</source> + <translation>%1 : le système impose des restrictions sur la taille</translation> + </message> + <message> + <source>%1: not attached</source> + <translation>%1 : non attaché</translation> + </message> + <message> + <source>%1: invalid size</source> + <translation>%1 : taille invalide</translation> + </message> + <message> + <source>%1: key error</source> + <translation>%1 : erreur de clé</translation> + </message> + <message> + <source>%1: size query failed</source> + <translation>%1 : la requête de taille a échoué</translation> + </message> + <message> + <source>%1: doesn't exist</source> + <translation>%1: n'existe pas</translation> + </message> + <message> + <source>%1: UNIX key file doesn't exist</source> + <translation>%1: le fichier de clés UNIX n'existe pas</translation> + </message> +</context> +<context> + <name>QShortcut</name> + <message> + <source>Space</source> + <extracomment>This and all following "incomprehensible" strings in QShortcut context are key names. Please use the localized names appearing on actual keyboards or whatever is commonly used.</extracomment> + <translation>Espace</translation> + </message> + <message> + <source>Esc</source> + <translation>Échap</translation> + </message> + <message> + <source>Tab</source> + <translation>Tab</translation> + </message> + <message> + <source>Backtab</source> + <translation>Tab arr</translation> + </message> + <message> + <source>Backspace</source> + <translation>Effacement</translation> + </message> + <message> + <source>Return</source> + <translation>Retour</translation> + </message> + <message> + <source>Enter</source> + <translation>Entrée</translation> + </message> + <message> + <source>Ins</source> + <translation>Inser</translation> + </message> + <message> + <source>Del</source> + <translation>Suppr</translation> + </message> + <message> + <source>Pause</source> + <translation>Pause</translation> + </message> + <message> + <source>Print</source> + <translation>Imprimer</translation> + </message> + <message> + <source>SysReq</source> + <translation>Syst</translation> + </message> + <message> + <source>Home</source> + <translation>Début</translation> + </message> + <message> + <source>End</source> + <translation>Fin</translation> + </message> + <message> + <source>Left</source> + <translation>Gauche</translation> + </message> + <message> + <source>Up</source> + <translation>Haut</translation> + </message> + <message> + <source>Right</source> + <translation>Droite</translation> + </message> + <message> + <source>Down</source> + <translation>Bas</translation> + </message> + <message> + <source>PgUp</source> + <translation>Page préc</translation> + </message> + <message> + <source>PgDown</source> + <translation>Page suiv</translation> + </message> + <message> + <source>CapsLock</source> + <translation>Verr maj</translation> + </message> + <message> + <source>NumLock</source> + <translation>Verr num</translation> + </message> + <message> + <source>ScrollLock</source> + <translation>Arrêt défil</translation> + </message> + <message> + <source>Menu</source> + <translation>Menu</translation> + </message> + <message> + <source>Help</source> + <translation>Aide</translation> + </message> + <message> + <source>Back</source> + <translation>Précédent (historique)</translation> + </message> + <message> + <source>Forward</source> + <translation>Successeur (historique)</translation> + </message> + <message> + <source>Stop</source> + <translation>Arrêter</translation> + </message> + <message> + <source>Refresh</source> + <translation>Rafraîchir</translation> + </message> + <message> + <source>Volume Down</source> + <translation>Volume bas</translation> + </message> + <message> + <source>Volume Mute</source> + <translation>Volume muet</translation> + </message> + <message> + <source>Volume Up</source> + <translation>Volume haut +</translation> + </message> + <message> + <source>Bass Boost</source> + <translation>Graves fort</translation> + </message> + <message> + <source>Bass Up</source> + <translation>Graves haut</translation> + </message> + <message> + <source>Bass Down</source> + <translation>Graves bas</translation> + </message> + <message> + <source>Treble Up</source> + <translation>Aigus haut</translation> + </message> + <message> + <source>Treble Down</source> + <translation>Aigus bas</translation> + </message> + <message> + <source>Media Play</source> + <translation>Média démarrer</translation> + </message> + <message> + <source>Media Stop</source> + <translation>Média arrêt</translation> + </message> + <message> + <source>Media Previous</source> + <translation>Média précédent</translation> + </message> + <message> + <source>Media Next</source> + <translation>Média suivant</translation> + </message> + <message> + <source>Media Record</source> + <translation>Média enregistrer</translation> + </message> + <message> + <source>Favorites</source> + <translation>Préférés</translation> + </message> + <message> + <source>Search</source> + <translation>Recherche</translation> + </message> + <message> + <source>Standby</source> + <translation>Attente</translation> + </message> + <message> + <source>Open URL</source> + <translation>Ouvrir URL</translation> + </message> + <message> + <source>Launch Mail</source> + <translation>Lancer courrier</translation> + </message> + <message> + <source>Launch Media</source> + <translation>Lancer média</translation> + </message> + <message> + <source>Launch (0)</source> + <translation>Lancer (0)</translation> + </message> + <message> + <source>Launch (1)</source> + <translation>Lancer (1)</translation> + </message> + <message> + <source>Launch (2)</source> + <translation>Lancer (2)</translation> + </message> + <message> + <source>Launch (3)</source> + <translation>Lancer (3)</translation> + </message> + <message> + <source>Launch (4)</source> + <translation>Lancer (4)</translation> + </message> + <message> + <source>Launch (5)</source> + <translation>Lancer (5)</translation> + </message> + <message> + <source>Launch (6)</source> + <translation>Lancer (6)</translation> + </message> + <message> + <source>Launch (7)</source> + <translation>Lancer (7)</translation> + </message> + <message> + <source>Launch (8)</source> + <translation>Lancer (8)</translation> + </message> + <message> + <source>Launch (9)</source> + <translation>Lancer (9)</translation> + </message> + <message> + <source>Launch (A)</source> + <translation>Lancer (A)</translation> + </message> + <message> + <source>Launch (B)</source> + <translation>Lancer (B)</translation> + </message> + <message> + <source>Launch (C)</source> + <translation>Lancer (C)</translation> + </message> + <message> + <source>Launch (D)</source> + <translation>Lancer (D)</translation> + </message> + <message> + <source>Launch (E)</source> + <translation>Lancer (E)</translation> + </message> + <message> + <source>Launch (F)</source> + <translation>Lancer (F)</translation> + </message> + <message> + <source>Print Screen</source> + <translation>Capture d'écran</translation> + </message> + <message> + <source>Page Up</source> + <translation>Page haut</translation> + </message> + <message> + <source>Page Down</source> + <translation>Page bas</translation> + </message> + <message> + <source>Caps Lock</source> + <translation>Verr Maj</translation> + </message> + <message> + <source>Num Lock</source> + <translation>Verr num</translation> + </message> + <message> + <source>Number Lock</source> + <translation>Verrouillage numérique</translation> + </message> + <message> + <source>Scroll Lock</source> + <translation>Arrêt défilement</translation> + </message> + <message> + <source>Insert</source> + <translation>Insérer</translation> + </message> + <message> + <source>Delete</source> + <translation>Supprimer</translation> + </message> + <message> + <source>Escape</source> + <translation>Échapement</translation> + </message> + <message> + <source>System Request</source> + <translation>Système</translation> + </message> + <message> + <source>Select</source> + <translation>Sélectionner</translation> + </message> + <message> + <source>Yes</source> + <translation>Oui</translation> + </message> + <message> + <source>No</source> + <translation>Non</translation> + </message> + <message> + <source>Context1</source> + <translation>Contexte1</translation> + </message> + <message> + <source>Context2</source> + <translation>Contexte2</translation> + </message> + <message> + <source>Context3</source> + <translation>Contexte3</translation> + </message> + <message> + <source>Context4</source> + <translation>Contexte4</translation> + </message> + <message> + <source>Call</source> + <extracomment>Button to start a call (note: a separate button is used to end the call)</extracomment> + <translation>Appeler</translation> + </message> + <message> + <source>Hangup</source> + <extracomment>Button to end a call (note: a separate button is used to start the call)</extracomment> + <translation>Raccrocher</translation> + </message> + <message> + <source>Toggle Call/Hangup</source> + <extracomment>Button that will hang up if we're in call, or make a call if we're not.</extracomment> + <translation>Décrocher/Raccrocher</translation> + </message> + <message> + <source>Flip</source> + <translation>Retourner</translation> + </message> + <message> + <source>Voice Dial</source> + <extracomment>Button to trigger voice dialling</extracomment> + <translation>Commande vocale</translation> + </message> + <message> + <source>Last Number Redial</source> + <extracomment>Button to redial the last number called</extracomment> + <translation>Bis</translation> + </message> + <message> + <source>Camera Shutter</source> + <extracomment>Button to trigger the camera shutter (take a picture)</extracomment> + <translation>Déclencheur appareil photo</translation> + </message> + <message> + <source>Camera Focus</source> + <extracomment>Button to focus the camera</extracomment> + <translation>Focus appareil photo</translation> + </message> + <message> + <source>Kanji</source> + <translation></translation> + </message> + <message> + <source>Muhenkan</source> + <translation></translation> + </message> + <message> + <source>Henkan</source> + <translation></translation> + </message> + <message> + <source>Romaji</source> + <translation></translation> + </message> + <message> + <source>Hiragana</source> + <translation></translation> + </message> + <message> + <source>Katakana</source> + <translation></translation> + </message> + <message> + <source>Hiragana Katakana</source> + <translation></translation> + </message> + <message> + <source>Zenkaku</source> + <translation></translation> + </message> + <message> + <source>Hankaku</source> + <translation></translation> + </message> + <message> + <source>Zenkaku Hankaku</source> + <translation></translation> + </message> + <message> + <source>Touroku</source> + <translation></translation> + </message> + <message> + <source>Massyo</source> + <translation></translation> + </message> + <message> + <source>Kana Lock</source> + <translation></translation> + </message> + <message> + <source>Kana Shift</source> + <translation></translation> + </message> + <message> + <source>Eisu Shift</source> + <translation></translation> + </message> + <message> + <source>Eisu toggle</source> + <translation></translation> + </message> + <message> + <source>Code input</source> + <translation></translation> + </message> + <message> + <source>Multiple Candidate</source> + <translation>Candidat multiple</translation> + </message> + <message> + <source>Previous Candidate</source> + <translation>Candidat précédent</translation> + </message> + <message> + <source>Hangul</source> + <translation></translation> + </message> + <message> + <source>Hangul Start</source> + <translation>Hangul début</translation> + </message> + <message> + <source>Hangul End</source> + <translation>Hangul Fin</translation> + </message> + <message> + <source>Hangul Hanja</source> + <translation></translation> + </message> + <message> + <source>Hangul Jamo</source> + <translation></translation> + </message> + <message> + <source>Hangul Romaja</source> + <translation></translation> + </message> + <message> + <source>Hangul Jeonja</source> + <translation></translation> + </message> + <message> + <source>Hangul Banja</source> + <translation></translation> + </message> + <message> + <source>Hangul PreHanja</source> + <translation></translation> + </message> + <message> + <source>Hangul PostHanja</source> + <translation></translation> + </message> + <message> + <source>Hangul Special</source> + <translation></translation> + </message> + <message> + <source>Ctrl</source> + <translation>Ctrl</translation> + </message> + <message> + <source>Shift</source> + <translation>Maj</translation> + </message> + <message> + <source>Alt</source> + <translation>Alt</translation> + </message> + <message> + <source>Meta</source> + <translation>Méta</translation> + </message> + <message> + <source>+</source> + <translation>+</translation> + </message> + <message> + <source>F%1</source> + <translation>F%1</translation> + </message> + <message> + <source>Home Page</source> + <translation>Page d'accueil</translation> + </message> + <message> + <source>Media Pause</source> + <extracomment>Media player pause button</extracomment> + <translation>Média pause</translation> + </message> + <message> + <source>Toggle Media Play/Pause</source> + <extracomment>Media player button to toggle between playing and paused</extracomment> + <translation>Média Lecture/Pause</translation> + </message> + <message> + <source>Monitor Brightness Up</source> + <translation>Augmenter la luminosité du moniteur</translation> + </message> + <message> + <source>Monitor Brightness Down</source> + <translation>Baisser la luminosité du moniteur</translation> + </message> + <message> + <source>Keyboard Light On/Off</source> + <translation>Avec/sans lumière clavier</translation> + </message> + <message> + <source>Keyboard Brightness Up</source> + <translation>Augmenter la luminosité du clavier</translation> + </message> + <message> + <source>Keyboard Brightness Down</source> + <translation>Baisser la luminosité du clavier</translation> + </message> + <message> + <source>Power Off</source> + <translation>Couper l'alimentation</translation> + </message> + <message> + <source>Wake Up</source> + <translation>Réveiller</translation> + </message> + <message> + <source>Eject</source> + <translation>Éjecter</translation> + </message> + <message> + <source>Screensaver</source> + <translation>Économiseur d'écran</translation> + </message> + <message> + <source>WWW</source> + <translation>WWW</translation> + </message> + <message> + <source>Sleep</source> + <translation>Dormir</translation> + </message> + <message> + <source>LightBulb</source> + <translation>Ampoule</translation> + </message> + <message> + <source>Shop</source> + <translation>Magasin</translation> + </message> + <message> + <source>History</source> + <translation>Historique</translation> + </message> + <message> + <source>Add Favorite</source> + <translation>Ajouter favori</translation> + </message> + <message> + <source>Hot Links</source> + <translation>Liens chauds</translation> + </message> + <message> + <source>Adjust Brightness</source> + <translation>Régler la luminosité</translation> + </message> + <message> + <source>Finance</source> + <translation>Finances</translation> + </message> + <message> + <source>Community</source> + <translation>Communauté</translation> + </message> + <message> + <source>Audio Rewind</source> + <translation>Audio arrière</translation> + </message> + <message> + <source>Back Forward</source> + <translation>Retour avant</translation> + </message> + <message> + <source>Application Left</source> + <translation>Application gauche</translation> + </message> + <message> + <source>Application Right</source> + <translation>Application droite</translation> + </message> + <message> + <source>Book</source> + <translation>Livre</translation> + </message> + <message> + <source>CD</source> + <translation>CD</translation> + </message> + <message> + <source>Calculator</source> + <translation>Calculatrice</translation> + </message> + <message> + <source>Clear</source> + <translation>Effacer</translation> + </message> + <message> + <source>Clear Grab</source> + <translation>Effacer la prise</translation> + </message> + <message> + <source>Close</source> + <translation>Fermer</translation> + </message> + <message> + <source>Copy</source> + <translation>Copier</translation> + </message> + <message> + <source>Cut</source> + <translation>Couper</translation> + </message> + <message> + <source>Display</source> + <translation>Affichage</translation> + </message> + <message> + <source>DOS</source> + <translation>DOS</translation> + </message> + <message> + <source>Documents</source> + <translation>Documents</translation> + </message> + <message> + <source>Spreadsheet</source> + <translation>Feuille de calcul</translation> + </message> + <message> + <source>Browser</source> + <translation>Navigateur</translation> + </message> + <message> + <source>Game</source> + <translation>Jeu</translation> + </message> + <message> + <source>Go</source> + <translation>Aller</translation> + </message> + <message> + <source>iTouch</source> + <translation>iTouch</translation> + </message> + <message> + <source>Logoff</source> + <translation>Fermer une session</translation> + </message> + <message> + <source>Market</source> + <translation>Marché</translation> + </message> + <message> + <source>Meeting</source> + <translation>Réunion</translation> + </message> + <message> + <source>Keyboard Menu</source> + <translation>Menu du clavier</translation> + </message> + <message> + <source>Menu PB</source> + <translation>Menu PB</translation> + </message> + <message> + <source>My Sites</source> + <translation>Mes sites</translation> + </message> + <message> + <source>News</source> + <translation>Actualités</translation> + </message> + <message> + <source>Home Office</source> + <translation>Bureau à domicile</translation> + </message> + <message> + <source>Option</source> + <translation>Option</translation> + </message> + <message> + <source>Paste</source> + <translation>Coller</translation> + </message> + <message> + <source>Phone</source> + <translation>Téléphone</translation> + </message> + <message> + <source>Reply</source> + <translation>Répondre</translation> + </message> + <message> + <source>Reload</source> + <translation>Recharger</translation> + </message> + <message> + <source>Rotate Windows</source> + <translation>Faire tourner la fenêtre</translation> + </message> + <message> + <source>Rotation PB</source> + <translation>Rotation PB</translation> + </message> + <message> + <source>Rotation KB</source> + <translation>Rotation KB</translation> + </message> + <message> + <source>Save</source> + <translation>Enregistrer</translation> + </message> + <message> + <source>Send</source> + <translation>Envoyer</translation> + </message> + <message> + <source>Spellchecker</source> + <translation>Correcteur orthographique</translation> + </message> + <message> + <source>Split Screen</source> + <translation>Partager l'écran</translation> + </message> + <message> + <source>Support</source> + <translation>Supporter</translation> + </message> + <message> + <source>Task Panel</source> + <translation>Panneau de tâches</translation> + </message> + <message> + <source>Terminal</source> + <translation>Terminal</translation> + </message> + <message> + <source>Tools</source> + <translation>Outils</translation> + </message> + <message> + <source>Travel</source> + <translation>Voyager</translation> + </message> + <message> + <source>Video</source> + <translation>Vidéo</translation> + </message> + <message> + <source>Word Processor</source> + <translation>Traitement de texte</translation> + </message> + <message> + <source>XFer</source> + <translation>XFer</translation> + </message> + <message> + <source>Zoom In</source> + <translation>Agrandir</translation> + </message> + <message> + <source>Zoom Out</source> + <translation>Rétrécir</translation> + </message> + <message> + <source>Away</source> + <translation>Absent</translation> + </message> + <message> + <source>Messenger</source> + <translation>Messagerie instantanée</translation> + </message> + <message> + <source>WebCam</source> + <translation>Webcaméra</translation> + </message> + <message> + <source>Mail Forward</source> + <translation>Faire suivre l'e-mail</translation> + </message> + <message> + <source>Pictures</source> + <translation>Images</translation> + </message> + <message> + <source>Music</source> + <translation>Musique</translation> + </message> + <message> + <source>Battery</source> + <translation>Batterie</translation> + </message> + <message> + <source>Bluetooth</source> + <translation>Bluetooth</translation> + </message> + <message> + <source>Wireless</source> + <translation>Sans fil</translation> + </message> + <message> + <source>Ultra Wide Band</source> + <translation>Bande ultralarge</translation> + </message> + <message> + <source>Audio Forward</source> + <translation>Audio avant</translation> + </message> + <message> + <source>Audio Repeat</source> + <translation>Audio répéter</translation> + </message> + <message> + <source>Audio Random Play</source> + <translation>Audio lecture aléatoire</translation> + </message> + <message> + <source>Subtitle</source> + <translation>Sous-titre</translation> + </message> + <message> + <source>Audio Cycle Track</source> + <translation>Audio répéter la piste</translation> + </message> + <message> + <source>Time</source> + <translation>Heure</translation> + </message> + <message> + <source>View</source> + <translation>Affichage</translation> + </message> + <message> + <source>Top Menu</source> + <translation>Haut du menu</translation> + </message> + <message> + <source>Suspend</source> + <translation>Suspendre</translation> + </message> + <message> + <source>Hibernate</source> + <translation>Hiberner</translation> + </message> +</context> +<context> + <name>QSlider</name> + <message> + <source>Page left</source> + <translation>Page précédente</translation> + </message> + <message> + <source>Page up</source> + <translation>Page précédente</translation> + </message> + <message> + <source>Position</source> + <translation>Position</translation> + </message> + <message> + <source>Page right</source> + <translation>Page suivante</translation> + </message> + <message> + <source>Page down</source> + <translation>Page suivante</translation> + </message> +</context> +<context> + <name>QSocks5SocketEngine</name> + <message> + <source>Connection to proxy refused</source> + <translation>Connexion au proxy refusée</translation> + </message> + <message> + <source>Connection to proxy closed prematurely</source> + <translation>connexion au proxy fermée prématurément</translation> + </message> + <message> + <source>Proxy host not found</source> + <translation>Hôte proxy introuvable</translation> + </message> + <message> + <source>Connection to proxy timed out</source> + <translation>Connexion au proxy expirée</translation> + </message> + <message> + <source>Proxy authentication failed</source> + <translation>L'authentification proxy a échoué</translation> + </message> + <message> + <source>Proxy authentication failed: %1</source> + <translation>L'authentification proxy a échoué : %1</translation> + </message> + <message> + <source>SOCKS version 5 protocol error</source> + <translation>Erreur de protocole SOCKS version 5</translation> + </message> + <message> + <source>General SOCKSv5 server failure</source> + <translation>Erreur générale du serveur SOCKSv5</translation> + </message> + <message> + <source>Connection not allowed by SOCKSv5 server</source> + <translation>Connexion refusée par le serveur SOCKSv5</translation> + </message> + <message> + <source>TTL expired</source> + <translation>TTL expiré</translation> + </message> + <message> + <source>SOCKSv5 command not supported</source> + <translation>Commande SOCKSv5 non supportée</translation> + </message> + <message> + <source>Address type not supported</source> + <translation>Type d'adresse non supporté</translation> + </message> + <message> + <source>Unknown SOCKSv5 proxy error code 0x%1</source> + <translation>Erreur proxy SOCKSv5 inconnue : 0x%1</translation> + </message> + <message> + <source>Socks5 timeout error connecting to socks server</source> + <translation type="obsolete">Erreur d'expiration socks5 lors de l'établissement d'une connexion au serveur socks</translation> + </message> + <message> + <source>Network operation timed out</source> + <translation>L'opération réseau a expiré</translation> + </message> +</context> +<context> + <name>QSoftKeyManager</name> + <message> + <source>Ok</source> + <translation>OK</translation> + </message> + <message> + <source>Select</source> + <translation>Sélectionner</translation> + </message> + <message> + <source>Done</source> + <translation>Terminer</translation> + </message> + <message> + <source>Options</source> + <translation>Options</translation> + </message> + <message> + <source>Cancel</source> + <translation>Annuler</translation> </message> <message> - <location line="+5"/> - <source>No file selected</source> - <comment>text to display in file button used in HTML forms when no file is selected</comment> - <translation>Pas de fichier sélectionné</translation> + <source>Exit</source> + <translation>Quitter</translation> </message> +</context> +<context> + <name>QSpinBox</name> <message> - <location line="+5"/> - <source>Open in New Window</source> - <comment>Open in New Window context menu item</comment> - <translation>Ouvrir dans une Nouvelle Fenêtre</translation> + <source>More</source> + <translation>Plus</translation> </message> <message> - <location line="+5"/> - <source>Save Link...</source> - <comment>Download Linked File context menu item</comment> - <translation>Enregistrer le lien...</translation> + <source>Less</source> + <translation>Moins</translation> </message> +</context> +<context> + <name>QSql</name> <message> - <location line="+5"/> - <source>Copy Link</source> - <comment>Copy Link context menu item</comment> - <translation>Copier le lien</translation> + <source>Delete</source> + <translation>Supprimer</translation> </message> <message> - <location line="+5"/> - <source>Open Image</source> - <comment>Open Image in New Window context menu item</comment> - <translation>Ouvrir l'image</translation> + <source>Delete this record?</source> + <translation>Supprimer cet enregistrement ?</translation> </message> <message> - <location line="+5"/> - <source>Save Image</source> - <comment>Download Image context menu item</comment> - <translation>Enregistrer l'image</translation> + <source>Yes</source> + <translation>Oui</translation> </message> <message> - <location line="+5"/> - <source>Copy Image</source> - <comment>Copy Link context menu item</comment> - <translation>Copier l'image</translation> + <source>No</source> + <translation>Non</translation> </message> <message> - <location line="+5"/> - <source>Open Frame</source> - <comment>Open Frame in New Window context menu item</comment> - <translation>Ouvrir le cadre</translation> + <source>Insert</source> + <translation>Insérer</translation> </message> <message> - <location line="+5"/> - <source>Copy</source> - <comment>Copy context menu item</comment> - <translation>Copier</translation> + <source>Update</source> + <translation>Actualiser</translation> </message> <message> - <location line="+5"/> - <source>Go Back</source> - <comment>Back context menu item</comment> - <translation>Précédent</translation> + <source>Save edits?</source> + <translation>Enregistrer les modifications ?</translation> </message> <message> - <location line="+5"/> - <source>Go Forward</source> - <comment>Forward context menu item</comment> - <translation>Suivant</translation> + <source>Cancel</source> + <translation>Annuler</translation> </message> <message> - <location line="+5"/> - <source>Stop</source> - <comment>Stop context menu item</comment> - <translation>Stop</translation> + <source>Confirm</source> + <translation>Confirmer</translation> </message> <message> - <location line="+5"/> - <source>Reload</source> - <comment>Reload context menu item</comment> - <translation>Recharger</translation> + <source>Cancel your edits?</source> + <translation>Annuler vos modifications ?</translation> </message> +</context> +<context> + <name>QSslSocket</name> <message> - <location line="+5"/> - <source>Cut</source> - <comment>Cut context menu item</comment> - <translation>Couper</translation> + <source>Unable to write data: %1</source> + <translation>Impossible d'écrire les données : %1</translation> </message> <message> - <location line="+5"/> - <source>Paste</source> - <comment>Paste context menu item</comment> - <translation>Coller</translation> + <source>Error while reading: %1</source> + <translation>Erreur lors de la lecture : %1</translation> </message> <message> - <location line="+5"/> - <source>No Guesses Found</source> - <comment>No Guesses Found context menu item</comment> - <translation>Pas de candidat trouvés</translation> + <source>Error during SSL handshake: %1</source> + <translation>Erreur lors de la poignée de main SSL : %1</translation> </message> <message> - <location line="+5"/> - <source>Ignore</source> - <comment>Ignore Spelling context menu item</comment> - <translation>Ignorer</translation> + <source>Error creating SSL context (%1)</source> + <translation>Erreur lors de la création du contexte SSL (%1)</translation> </message> <message> - <location line="+5"/> - <source>Add To Dictionary</source> - <comment>Learn Spelling context menu item</comment> - <translation>Ajouter au dictionnaire</translation> + <source>Invalid or empty cipher list (%1)</source> + <translation>La list de chiffrements est invalide ou vide (%1)</translation> </message> <message> - <location line="+5"/> - <source>Search The Web</source> - <comment>Search The Web context menu item</comment> - <translation>Chercher sur le Web</translation> + <source>Error creating SSL session, %1</source> + <translation>Erreur lors de la création de la session SSL, %1</translation> </message> <message> - <location line="+5"/> - <source>Look Up In Dictionary</source> - <comment>Look Up in Dictionary context menu item</comment> - <translation>Chercher dans le dictionnaire</translation> + <source>Error creating SSL session: %1</source> + <translation>Erreur lors de la création de la session SSL : %1</translation> </message> <message> - <location line="+5"/> - <source>Open Link</source> - <comment>Open Link context menu item</comment> - <translation>Ouvrir le lien</translation> + <source>Cannot provide a certificate with no key, %1</source> + <translation>Impossible de fournir un certificat sans clé, %1</translation> </message> <message> - <location line="+5"/> - <source>Ignore</source> - <comment>Ignore Grammar context menu item</comment> - <translation>Ignorer</translation> + <source>Error loading local certificate, %1</source> + <translation>Erreur lors du chargement du certificat local, %1</translation> </message> <message> - <location line="+5"/> - <source>Spelling</source> - <comment>Spelling and Grammar context sub-menu item</comment> - <translation>Orthographe</translation> + <source>Error loading private key, %1</source> + <translation>Erreur lors du chargement de la clé privée, %1</translation> </message> <message> - <location line="+5"/> - <source>Show Spelling and Grammar</source> - <comment>menu item title</comment> - <translation>Afficher Orthographe et Grammaire</translation> + <source>Private key do not certificate public key, %1</source> + <translation type="obsolete">La clé privée ne certifie pas la clé publique, %1</translation> </message> <message> - <location line="+1"/> - <source>Hide Spelling and Grammar</source> - <comment>menu item title</comment> - <translation>Cacher Orthographe et Grammaire</translation> + <source>Private key does not certificate public key, %1</source> + <translation type="obsolete">La clé privée ne certifie pas la clé publique, %1</translation> </message> <message> - <location line="+5"/> - <source>Check Spelling</source> - <comment>Check spelling context menu item</comment> - <translation>Vérifier l'orthographe</translation> + <source>Unable to decrypt data: %1</source> + <translation>Impossible de décrypter les données: %1</translation> </message> <message> - <location line="+5"/> - <source>Check Spelling While Typing</source> - <comment>Check spelling while typing context menu item</comment> - <translation>Vérifier l'orthographe pendant la saisie</translation> + <source>Private key does not certify public key, %1</source> + <translation>La clé privée ne certifie pas la clé publique, %1</translation> </message> <message> - <location line="+5"/> - <source>Check Grammar With Spelling</source> - <comment>Check grammar with spelling context menu item</comment> - <translation>Vérifier la grammaire en même temps que l'orthographe</translation> + <source>No error</source> + <translation>Aucune erreur</translation> </message> <message> - <location line="+5"/> - <source>Fonts</source> - <comment>Font context sub-menu item</comment> - <translation>Polices</translation> + <source>The issuer certificate could not be found</source> + <translation>Le certificat de l'émetteur est introuvable</translation> </message> <message> - <location line="+5"/> - <source>Bold</source> - <comment>Bold context menu item</comment> - <translation>Gras</translation> + <source>The certificate signature could not be decrypted</source> + <translation>La signature du certificat n'a pas pu être vérifiée</translation> </message> <message> - <location line="+5"/> - <source>Italic</source> - <comment>Italic context menu item</comment> - <translation>Italique</translation> + <source>The public key in the certificate could not be read</source> + <translation>La clé publique du certificat n'a pas pu être lue</translation> </message> <message> - <location line="+5"/> - <source>Underline</source> - <comment>Underline context menu item</comment> - <translation>Souligné</translation> + <source>The signature of the certificate is invalid</source> + <translation>La signature du certificat n'est pas valide</translation> </message> <message> - <location line="+5"/> - <source>Outline</source> - <comment>Outline context menu item</comment> - <translation>Contour</translation> + <source>The certificate is not yet valid</source> + <translation>Le certificat n'est pas encore valide</translation> </message> <message> - <location line="+5"/> - <source>Direction</source> - <comment>Writing direction context sub-menu item</comment> - <translation></translation> + <source>The certificate has expired</source> + <translation>Le certificat a expiré</translation> </message> <message> - <location line="+5"/> - <source>Text Direction</source> - <comment>Text direction context sub-menu item</comment> - <translation>Orientation du texte</translation> + <source>The certificate's notBefore field contains an invalid time</source> + <translation>Le champ pasAvant du certificat inclut une heure non valide</translation> </message> <message> - <location line="+5"/> - <source>Default</source> - <comment>Default writing direction context menu item</comment> - <translation>Défaut</translation> + <source>The certificate's notAfter field contains an invalid time</source> + <translation>Le champ pasAprès du certificat inclut une heure non valide</translation> </message> <message> - <location line="+5"/> - <source>LTR</source> - <comment>Left to Right context menu item</comment> - <translation>De la gauche vers la droite</translation> + <source>The certificate is self-signed, and untrusted</source> + <translation>Le certificat n'est pas sécurisé car auto-signé</translation> </message> <message> - <location line="+5"/> - <source>RTL</source> - <comment>Right to Left context menu item</comment> - <translation>De la droite vers la gauche</translation> + <source>The root certificate of the certificate chain is self-signed, and untrusted</source> + <translation>Le certificat racine de la chaîne de certificats n'est pas sécurisé car signé automatiquement</translation> </message> <message> - <location line="+5"/> - <source>Inspect</source> - <comment>Inspect Element context menu item</comment> - <translation>Inspecter</translation> + <source>The issuer certificate of a locally looked up certificate could not be found</source> + <translation>Le certificat de l'émetteur d'un certificat converti localement est introuvable</translation> </message> <message> - <location line="+5"/> - <source>No recent searches</source> - <comment>Label for only item in menu that appears when clicking on the search field image, when no searches have been performed</comment> - <translation>Pas de recherche récente</translation> + <source>No certificates could be verified</source> + <translation>Aucun certificat n'a pu être vérifié</translation> </message> <message> - <location line="+5"/> - <source>Recent searches</source> - <comment>label for first item in the menu that appears when clicking on the search field image, used as embedded menu title</comment> - <translation>Recherches récentes</translation> + <source>One of the CA certificates is invalid</source> + <translation>L'un des certificats CA n'est pas valide</translation> </message> <message> - <location line="+5"/> - <source>Clear recent searches</source> - <comment>menu item in Recent Searches menu that empties menu's contents</comment> - <translation>Effacer les recherches récentes</translation> + <source>The basicConstraints path length parameter has been exceeded</source> + <translation>Le paramètre de longueur du chemin basicConstraints a été dépassé</translation> </message> <message> - <location line="+75"/> - <source>Unknown</source> - <comment>Unknown filesize FTP directory listing item</comment> - <translation>Inconnu</translation> + <source>The supplied certificate is unsuitable for this purpose</source> + <translation>Le certificat fourni ne convient pas pour cet objectif</translation> </message> <message> - <location line="+5"/> - <source>%1 (%2x%3 pixels)</source> - <comment>Title string for images</comment> - <translation>%1 (%2x%3 pixels)</translation> + <source>The root CA certificate is not trusted for this purpose</source> + <translation>Le certificat CA racine n'est pas sécurisé pour cet objectif</translation> + </message> + <message> + <source>The root CA certificate is marked to reject the specified purpose</source> + <translation>Le certificat CA racine est marqué pour rejeter l'objectif spécifié</translation> + </message> + <message> + <source>The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate</source> + <translation>Le certificat de l'émetteur candidat actuel a été rejeté car le nom de son sujet ne correspondait pas au nom de l'émetteur du certificat actuel</translation> + </message> + <message> + <source>The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate</source> + <translation>Le certificat de l'émetteur candidat actuel a été rejeté car le nom de son sujet et son numéro de série étaient présents et ne correspondaient pas à l'identifiant de la clé d'autorité du certificat actuel</translation> + </message> + <message> + <source>The peer did not present any certificate</source> + <translation>Le poste ne contient aucun certificat</translation> + </message> + <message> + <source>The host name did not match any of the valid hosts for this certificate</source> + <translation>Le nom d'hôte ne correspondait à aucun des hôtes valides pour ce certificat</translation> + </message> + <message> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> + </message> +</context> +<context> + <name>QStateMachine</name> + <message> + <source>Missing initial state in compound state '%1'</source> + <translation>État initial manquant dans l'état composé '%1'</translation> </message> <message> - <source>Web Inspector - %2</source> - <translation>Inspecteur Web - %2</translation> + <source>Missing default state in history state '%1'</source> + <translation>État par défaut manquant dans l'état de l'historique '%1'</translation> </message> <message> - <source>Bad HTTP request</source> - <translation>Requête HTTP erronée</translation> + <source>No common ancestor for targets and source of transition from state '%1'</source> + <translation>Aucun ancêtre commun pour les cibles et la source de transition de l'état '%1'</translation> </message> <message> - <location line="-291"/> - <source>This is a searchable index. Enter search keywords: </source> - <comment>text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'</comment> - <translation>Ceci est un index. Veuillez saisir les mots-clé :</translation> + <source>Unknown error</source> + <translation>Erreur inconnue</translation> </message> +</context> +<context> + <name>QSystemSemaphore</name> <message> - <source>Scroll here</source> - <translation>Défiler jusqu'ici</translation> + <source>%1: out of resources</source> + <translation>%1: plus de ressources disponibles</translation> </message> <message> - <source>Left edge</source> - <translation>À gauche</translation> + <source>%1: permission denied</source> + <translation>%1: permission refusée</translation> </message> <message> - <source>Top</source> - <translation>Haut</translation> + <source>%1: already exists</source> + <translation>%1 : existe déjà</translation> </message> <message> - <source>Right edge</source> - <translation>À droite</translation> + <source>%1: does not exist</source> + <translation>%1 : n'existe pas</translation> </message> <message> - <source>Bottom</source> - <translation>En bas</translation> + <source>%1: unknown error %2</source> + <translation>%1: erreur inconnue %2</translation> </message> +</context> +<context> + <name>QTDSDriver</name> <message> - <source>Page left</source> - <translation>Page gauche</translation> + <source>Unable to open connection</source> + <translation>Impossible d'ouvrir la connexion</translation> </message> <message> - <source>Page up</source> - <translation>Page haut</translation> + <source>Unable to use database</source> + <translation>Impossible d'utiliser la base de données</translation> </message> +</context> +<context> + <name>QTabBar</name> <message> - <source>Page right</source> - <translation>Page droite</translation> + <source>Scroll Left</source> + <translation>Défiler vers la gauche</translation> </message> <message> - <source>Page down</source> - <translation>Page bas</translation> + <source>Scroll Right</source> + <translation>Défiler vers la droite</translation> </message> +</context> +<context> + <name>QTcpServer</name> <message> - <source>Scroll left</source> - <translation>Défiler vers la gauche</translation> + <source>Socket operation unsupported</source> + <translation type="obsolete">Operation socket non supportée</translation> </message> <message> - <source>Scroll up</source> - <translation>Défiler vers le haut</translation> + <source>Operation on socket is not supported</source> + <translation>Opération sur le socket non supportée</translation> </message> +</context> +<context> + <name>QTextControl</name> <message> - <source>Scroll right</source> - <translation>Défiler vers la droite</translation> + <source>&Undo</source> + <translation>&Annuler</translation> </message> <message> - <source>Scroll down</source> - <translation>Défiler vers le bas</translation> + <source>&Redo</source> + <translation>&Rétablir</translation> </message> - <message numerus="yes"> - <location filename="../src/3rdparty/webkit/WebCore/platform/qt/FileChooserQt.cpp" line="+45"/> - <source>%n file(s)</source> - <comment>number of chosen file</comment> - <translation> - <numerusform>%n fichier</numerusform> - <numerusform>%n fichiers</numerusform> - </translation> + <message> + <source>Cu&t</source> + <translation>Co&uper</translation> </message> <message> - <source>JavaScript Alert - %1</source> - <translation>Alerte JavaScript - %1</translation> + <source>&Copy</source> + <translation>Cop&ier</translation> </message> <message> - <source>JavaScript Confirm - %1</source> - <translation>Confirmation JavaScript - %1</translation> + <source>Copy &Link Location</source> + <translation>Copier l'adresse du &lien</translation> </message> <message> - <source>JavaScript Prompt - %1</source> - <translation>Invite JavaScript - %1</translation> + <source>&Paste</source> + <translation>Co&ller</translation> </message> <message> - <source>Move the cursor to the next character</source> - <translation>Déplacer le curseur au caractère suivant</translation> + <source>Delete</source> + <translation>Supprimer</translation> </message> <message> - <source>Move the cursor to the previous character</source> - <translation>Déplacer le curseur au caractère précédent</translation> + <source>Select All</source> + <translation>Tout sélectionner</translation> </message> +</context> +<context> + <name>QToolButton</name> <message> - <source>Move the cursor to the next word</source> - <translation>Déplacer le curseur au mot suivant</translation> + <source>Press</source> + <translation>Appuyer</translation> </message> <message> - <source>Move the cursor to the previous word</source> - <translation>Déplacer le curseur au mot précédent</translation> + <source>Open</source> + <translation>Ouvrir</translation> </message> +</context> +<context> + <name>QUdpSocket</name> <message> - <source>Move the cursor to the next line</source> - <translation>Déplacer le curseur à la ligne suivante</translation> + <source>This platform does not support IPv6</source> + <translation>Cette plateforme ne supporte pas IPv6</translation> </message> +</context> +<context> + <name>QUndoGroup</name> <message> - <source>Move the cursor to the previous line</source> - <translation>Déplacer le curseur à la ligne précédente</translation> + <source>Undo</source> + <translation>Annuler</translation> </message> <message> - <source>Move the cursor to the start of the line</source> - <translation>Déplacer le curseur en début de ligne</translation> + <source>Redo</source> + <translation>Rétablir</translation> </message> +</context> +<context> + <name>QUndoModel</name> <message> - <source>Move the cursor to the end of the line</source> - <translation>Déplacer le curseur en fin de ligne</translation> + <source><empty></source> + <translation><vide></translation> </message> +</context> +<context> + <name>QUndoStack</name> <message> - <source>Move the cursor to the start of the block</source> - <translation>Déplacer le curseur au début du paragraphe</translation> + <source>Undo</source> + <translation>Annuler</translation> </message> <message> - <source>Move the cursor to the end of the block</source> - <translation>Déplacer le curseur à la fin du paragraphe</translation> + <source>Redo</source> + <translation>Rétablir</translation> </message> +</context> +<context> + <name>QUnicodeControlCharacterMenu</name> <message> - <source>Move the cursor to the start of the document</source> - <translation>Déplacer le curseur en début de document</translation> + <source>LRM Left-to-right mark</source> + <translation>LRM Left-to-right mark</translation> </message> <message> - <source>Move the cursor to the end of the document</source> - <translation>Déplacer le curseur en fin de document</translation> + <source>RLM Right-to-left mark</source> + <translation>RLM Right-to-left mark</translation> </message> <message> - <source>Select all</source> - <translation>Tout sélectionner</translation> + <source>ZWJ Zero width joiner</source> + <translation>ZWJ Zero width joiner</translation> </message> <message> - <source>Select to the next character</source> - <translation>Sélectionner jusqu'au caractère suivant</translation> + <source>ZWNJ Zero width non-joiner</source> + <translation>ZWNJ Zero width non-joiner</translation> </message> <message> - <source>Select to the previous character</source> - <translation>Sélectionner jusqu'au caractère précédent</translation> + <source>ZWSP Zero width space</source> + <translation>ZWSP Zero width space</translation> </message> <message> - <source>Select to the next word</source> - <translation>Sélectionner jusqu'au mot suivant</translation> + <source>LRE Start of left-to-right embedding</source> + <translation>LRE Start of left-to-right embedding</translation> </message> <message> - <source>Select to the previous word</source> - <translation>Sélectionner jusqu'au mot précédent</translation> + <source>RLE Start of right-to-left embedding</source> + <translation>RLE Start of right-to-left embedding</translation> </message> <message> - <source>Select to the next line</source> - <translation>Sélectionner jusqu'à la ligne suivante</translation> + <source>LRO Start of left-to-right override</source> + <translation>LRO Start of left-to-right override</translation> </message> <message> - <source>Select to the previous line</source> - <translation>Sélectionner jusqu'à la ligne précédente</translation> + <source>RLO Start of right-to-left override</source> + <translation>RLO Start of right-to-left override</translation> </message> <message> - <source>Select to the start of the line</source> - <translation>Sélectionner jusqu'en début de ligne</translation> + <source>PDF Pop directional formatting</source> + <translation>PDF Pop directional formatting</translation> </message> <message> - <source>Select to the end of the line</source> - <translation>Sélectionner jusqu'en fin de ligne</translation> + <source>Insert Unicode control character</source> + <translation>Insérer caractère de contrôle Unicode</translation> </message> +</context> +<context> + <name>QWebFrame</name> <message> - <source>Select to the start of the block</source> - <translation>Sélectionner jusqu'au début du paragraphe</translation> + <source>Request cancelled</source> + <translation>Requête annulée</translation> </message> <message> - <source>Select to the end of the block</source> - <translation>Sélectionner jusqu'à la fin du paragraphe</translation> + <source>Request blocked</source> + <translation>Requête bloquée</translation> </message> <message> - <source>Select to the start of the document</source> - <translation>Sélectionner jusqu'au début du document</translation> + <source>Cannot show URL</source> + <translation>Impossible d'afficher l'URL</translation> </message> <message> - <source>Select to the end of the document</source> - <translation>Sélectionner jusqu'à la fin du document</translation> + <source>Frame load interruped by policy change</source> + <translation type="obsolete">Chargement de la frame interrompu par un changement de configuration</translation> </message> <message> - <source>Delete to the start of the word</source> - <translation>Supprimer jusqu'au début du mot</translation> + <source>Cannot show mimetype</source> + <translation>Impossible d'afficher le mimetype</translation> </message> <message> - <source>Delete to the end of the word</source> - <translation>Supprimer jusqu'à la fin du mot</translation> + <source>File does not exist</source> + <translation>Le fichier n'existe pas</translation> </message> <message> - <source>Insert a new paragraph</source> - <translation>Insérer un nouveau paragraphe</translation> + <source>Frame load interrupted by policy change</source> + <translation>Chargement du cadre interrompue par le changement de stratégie</translation> </message> +</context> +<context> + <name>QWebPage</name> <message> - <source>Insert a new line</source> - <translation>Insérer une nouvelle ligne</translation> + <source>Submit</source> + <comment>default label for Submit buttons in forms on web pages</comment> + <translation>Soumettre</translation> </message> <message> <source>Submit</source> + <comment>Submit (input element) alt text for <input> elements with no alt, title, or value</comment> <translation>Soumettre</translation> </message> <message> <source>Reset</source> + <comment>default label for Reset buttons in forms on web pages</comment> <translation>Réinitialiser</translation> </message> <message> + <source>Searchable Index</source> + <comment>text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'</comment> + <translation type="obsolete">Index recherchable</translation> + </message> + <message> <source>Choose File</source> + <comment>title for file button used in HTML forms</comment> <translation>Choisir le fichier</translation> </message> <message> <source>No file selected</source> + <comment>text to display in file button used in HTML forms when no file is selected</comment> <translation>Pas de fichier sélectionné</translation> </message> <message> <source>Open in New Window</source> + <comment>Open in New Window context menu item</comment> <translation>Ouvrir dans une Nouvelle Fenêtre</translation> </message> <message> <source>Save Link...</source> - <translation>Enregistrer la cible du lien...</translation> + <comment>Download Linked File context menu item</comment> + <translation>Enregistrer le lien...</translation> </message> <message> <source>Copy Link</source> + <comment>Copy Link context menu item</comment> <translation>Copier le lien</translation> </message> <message> <source>Open Image</source> + <comment>Open Image in New Window context menu item</comment> <translation>Ouvrir l'image</translation> </message> <message> <source>Save Image</source> + <comment>Download Image context menu item</comment> <translation>Enregistrer l'image</translation> </message> <message> <source>Copy Image</source> + <comment>Copy Link context menu item</comment> <translation>Copier l'image</translation> </message> <message> <source>Open Frame</source> + <comment>Open Frame in New Window context menu item</comment> <translation>Ouvrir le cadre</translation> </message> <message> <source>Copy</source> + <comment>Copy context menu item</comment> <translation>Copier</translation> </message> <message> <source>Go Back</source> + <comment>Back context menu item</comment> <translation>Précédent</translation> </message> <message> <source>Go Forward</source> + <comment>Forward context menu item</comment> <translation>Suivant</translation> </message> <message> <source>Stop</source> - <translation>Stop</translation> + <comment>Stop context menu item</comment> + <translation>Arrêter</translation> </message> <message> <source>Reload</source> + <comment>Reload context menu item</comment> <translation>Recharger</translation> </message> <message> <source>Cut</source> + <comment>Cut context menu item</comment> <translation>Couper</translation> </message> <message> <source>Paste</source> + <comment>Paste context menu item</comment> <translation>Coller</translation> </message> <message> <source>No Guesses Found</source> + <comment>No Guesses Found context menu item</comment> <translation>Pas de candidat trouvés</translation> </message> <message> <source>Ignore</source> + <comment>Ignore Spelling context menu item</comment> <translation>Ignorer</translation> </message> <message> <source>Add To Dictionary</source> + <comment>Learn Spelling context menu item</comment> <translation>Ajouter au dictionnaire</translation> </message> <message> <source>Search The Web</source> + <comment>Search The Web context menu item</comment> <translation>Chercher sur le Web</translation> </message> <message> <source>Look Up In Dictionary</source> + <comment>Look Up in Dictionary context menu item</comment> <translation>Chercher dans le dictionnaire</translation> </message> <message> <source>Open Link</source> + <comment>Open Link context menu item</comment> <translation>Ouvrir le lien</translation> </message> <message> + <source>Ignore</source> + <comment>Ignore Grammar context menu item</comment> + <translation>Ignorer</translation> + </message> + <message> <source>Spelling</source> + <comment>Spelling and Grammar context sub-menu item</comment> <translation>Orthographe</translation> </message> <message> <source>Show Spelling and Grammar</source> + <comment>menu item title</comment> <translation>Afficher Orthographe et Grammaire</translation> </message> <message> <source>Hide Spelling and Grammar</source> + <comment>menu item title</comment> <translation>Cacher Orthographe et Grammaire</translation> </message> <message> <source>Check Spelling</source> + <comment>Check spelling context menu item</comment> <translation>Vérifier l'orthographe</translation> </message> <message> <source>Check Spelling While Typing</source> + <comment>Check spelling while typing context menu item</comment> <translation>Vérifier l'orthographe pendant la saisie</translation> </message> <message> <source>Check Grammar With Spelling</source> + <comment>Check grammar with spelling context menu item</comment> <translation>Vérifier la grammaire en même temps que l'orthographe</translation> </message> <message> <source>Fonts</source> + <comment>Font context sub-menu item</comment> <translation>Polices</translation> </message> <message> <source>Bold</source> + <comment>Bold context menu item</comment> <translation>Gras</translation> </message> <message> <source>Italic</source> + <comment>Italic context menu item</comment> <translation>Italique</translation> </message> <message> <source>Underline</source> + <comment>Underline context menu item</comment> <translation>Souligné</translation> </message> <message> <source>Outline</source> + <comment>Outline context menu item</comment> <translation>Contour</translation> </message> <message> <source>Direction</source> - <translation>Direction</translation> + <comment>Writing direction context sub-menu item</comment> + <translation></translation> </message> <message> <source>Text Direction</source> + <comment>Text direction context sub-menu item</comment> <translation>Orientation du texte</translation> </message> <message> <source>Default</source> - <translation>Défaut</translation> + <comment>Default writing direction context menu item</comment> + <translation>Par défaut</translation> </message> <message> <source>Left to Right</source> + <comment>Left to Right context menu item</comment> <translation>Gauche à droite</translation> </message> <message> <source>Right to Left</source> + <comment>Right to Left context menu item</comment> <translation>Droite à gauche</translation> </message> <message> <source>Loading...</source> + <comment>Media controller status message when the media is loading</comment> <translation>Chargement...</translation> </message> <message> <source>Live Broadcast</source> + <comment>Media controller status message when watching a live broadcast</comment> <translation>Diffusion en direct</translation> </message> <message> <source>Audio Element</source> + <comment>Media controller element</comment> <translation>Élément audio</translation> </message> <message> <source>Video Element</source> + <comment>Media controller element</comment> <translation>Élément vidéo</translation> </message> <message> <source>Mute Button</source> + <comment>Media controller element</comment> <translation>Bouton de désactivation du son</translation> </message> <message> <source>Unmute Button</source> + <comment>Media controller element</comment> <translation>Bouton de réactivation du son</translation> </message> <message> <source>Play Button</source> + <comment>Media controller element</comment> <translation>Bouton de lecture</translation> </message> <message> <source>Pause Button</source> + <comment>Media controller element</comment> <translation>Bouton de pause</translation> </message> <message> <source>Slider</source> + <comment>Media controller element</comment> <translation>Barre de défilement</translation> </message> <message> <source>Slider Thumb</source> + <comment>Media controller element</comment> <translation>Curseur de la barre de défilement</translation> </message> <message> <source>Rewind Button</source> + <comment>Media controller element</comment> <translation>Bouton de retour en arrière</translation> </message> <message> <source>Return to Real-time Button</source> + <comment>Media controller element</comment> <translation>Bouton de retour au temps réel</translation> </message> <message> <source>Elapsed Time</source> + <comment>Media controller element</comment> <translation>Temps écoulé</translation> </message> <message> <source>Remaining Time</source> + <comment>Media controller element</comment> <translation>Durée restante</translation> </message> <message> <source>Status Display</source> + <comment>Media controller element</comment> <translation>Affichage de l'état</translation> </message> <message> <source>Fullscreen Button</source> + <comment>Media controller element</comment> <translation>Bouton de plein écran</translation> </message> <message> <source>Seek Forward Button</source> + <comment>Media controller element</comment> <translation>Bouton de recherche avant</translation> </message> <message> <source>Seek Back Button</source> + <comment>Media controller element</comment> <translation>Bouton de recherche arrière</translation> </message> <message> <source>Audio element playback controls and status display</source> + <comment>Media controller element</comment> <translation>Commandes de lecture et affichage de l'état de l'élément audio</translation> </message> <message> <source>Video element playback controls and status display</source> + <comment>Media controller element</comment> <translation>Commandes de lecture et affichage de l'état de l'élément vidéo</translation> </message> <message> <source>Mute audio tracks</source> + <comment>Media controller element</comment> <translation>Couper le son des pistes audio</translation> </message> <message> <source>Unmute audio tracks</source> + <comment>Media controller element</comment> <translation>Réactiver le son des pistes audio</translation> </message> <message> <source>Begin playback</source> + <comment>Media controller element</comment> <translation>Commencer la lecture</translation> </message> <message> <source>Pause playback</source> + <comment>Media controller element</comment> <translation>Pause lecture</translation> </message> <message> <source>Movie time scrubber</source> - <translation>Épurateur de la durée du film</translation> + <comment>Media controller element</comment> + <translation>Balayeur de durée du film</translation> </message> <message> <source>Movie time scrubber thumb</source> - <translation>Case de défilement de l'épurateur de la durée du film</translation> + <comment>Media controller element</comment> + <translation>Case de défilement du balayeur de la durée du film</translation> </message> <message> <source>Rewind movie</source> + <comment>Media controller element</comment> <translation>Rembobiner le film</translation> </message> <message> <source>Return streaming movie to real-time</source> + <comment>Media controller element</comment> <translation>Ramener le film en streaming en temps réel</translation> </message> <message> <source>Current movie time</source> - <translation>Durée du film actuel</translation> + <comment>Media controller element</comment> + <translation>Durée du film en cours</translation> </message> <message> <source>Remaining movie time</source> + <comment>Media controller element</comment> <translation>Durée de film restante</translation> </message> <message> <source>Current movie status</source> + <comment>Media controller element</comment> <translation>État du film actuel</translation> </message> <message> <source>Play movie in full-screen mode</source> + <comment>Media controller element</comment> <translation>Regarder le film en mode plein écran</translation> </message> <message> <source>Seek quickly back</source> + <comment>Media controller element</comment> <translation>Recherche rapide arrière</translation> </message> <message> <source>Seek quickly forward</source> + <comment>Media controller element</comment> <translation>Recherche rapide avant</translation> </message> <message> <source>Indefinite time</source> + <comment>Media time description</comment> <translation>Durée indéfinie</translation> </message> <message> <source>%1 days %2 hours %3 minutes %4 seconds</source> + <comment>Media time description</comment> <translation>%1 jours %2 heures %3 minutes %4 secondes</translation> </message> <message> <source>%1 hours %2 minutes %3 seconds</source> + <comment>Media time description</comment> <translation>%1 heures %2 minutes %3 secondes</translation> </message> <message> <source>%1 minutes %2 seconds</source> + <comment>Media time description</comment> <translation>%1 minutes %2 secondes</translation> </message> <message> <source>%1 seconds</source> + <comment>Media time description</comment> <translation>%1 secondes</translation> </message> <message> + <source>LTR</source> + <comment>Left to Right context menu item</comment> + <translation type="obsolete">De la gauche vers la droite</translation> + </message> + <message> + <source>RTL</source> + <comment>Right to Left context menu item</comment> + <translation type="obsolete">De la droite vers la gauche</translation> + </message> + <message> <source>Inspect</source> + <comment>Inspect Element context menu item</comment> <translation>Inspecter</translation> </message> <message> <source>No recent searches</source> + <comment>Label for only item in menu that appears when clicking on the search field image, when no searches have been performed</comment> <translation>Pas de recherche récente</translation> </message> <message> <source>Recent searches</source> + <comment>label for first item in the menu that appears when clicking on the search field image, used as embedded menu title</comment> <translation>Recherches récentes</translation> </message> <message> <source>Clear recent searches</source> + <comment>menu item in Recent Searches menu that empties menu's contents</comment> <translation>Effacer les recherches récentes</translation> </message> <message> + <source>Missing Plug-in</source> + <comment>Label text to be used when a plug-in is missing</comment> + <translation>Plug-in manquant</translation> + </message> + <message> <source>Unknown</source> + <comment>Unknown filesize FTP directory listing item</comment> <translation>Inconnu</translation> </message> <message> <source>%1 (%2x%3 pixels)</source> + <comment>Title string for images</comment> <translation>%1 (%2x%3 pixels)</translation> </message> <message> - <source>This is a searchable index. Enter search keywords: </source> - <translation>Ceci est un index. Veuillez saisir les mots-clé :</translation> - </message> - <message numerus="yes"> - <source>%n file(s)</source> - <translation> - <numerusform></numerusform> - </translation> - </message> - <message> - <source>JavaScript Problem - %1</source> - <translation>Problème de JavaScript - %1</translation> - </message> - <message> - <source>The script on this page appears to have a problem. Do you want to stop the script?</source> - <translation>Le script de cette page semble avoir un problème. Souhaitez-vous arrêter le script?</translation> - </message> - <message> - <source>Paste and Match Style</source> - <translation>Coller et suivre le style</translation> - </message> - <message> - <source>Remove formatting</source> - <translation>Retirer la mise en forme</translation> - </message> - <message> - <source>Strikethrough</source> - <translation>Barré</translation> - </message> - <message> - <source>Subscript</source> - <translation>Indice</translation> + <source>Web Inspector - %2</source> + <translation>Inspecteur Web - %2</translation> </message> <message> - <source>Superscript</source> - <translation>Exposant</translation> + <source>Redirection limit reached</source> + <translation>Limite de redirection atteinte</translation> </message> <message> - <source>Insert Bulleted List</source> - <translation>Insérer une liste à puces</translation> + <source>Bad HTTP request</source> + <translation>Requête HTTP erronée</translation> </message> <message> - <source>Insert Numbered List</source> - <translation>Insérer une liste numérotée</translation> + <source>This is a searchable index. Enter search keywords: </source> + <comment>text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'</comment> + <translation>Ceci est un index. Veuillez saisir les mots-clé :</translation> </message> <message> - <source>Indent</source> - <translation>Retrait</translation> + <source>Scroll here</source> + <translation>Défiler jusqu'ici</translation> </message> <message> - <source>Outdent</source> - <translation>Retrait négatif</translation> + <source>Left edge</source> + <translation>À gauche</translation> </message> <message> - <source>Center</source> - <translation>Centré</translation> + <source>Top</source> + <translation>Haut</translation> </message> <message> - <source>Justify</source> - <translation>Justifié</translation> + <source>Right edge</source> + <translation>À droite</translation> </message> <message> - <source>Align Left</source> - <translation>Aligner à gauche</translation> + <source>Bottom</source> + <translation>En bas</translation> </message> <message> - <source>Align Right</source> - <translation>Aligner à droite</translation> + <source>Page left</source> + <translation>Page gauche</translation> </message> -</context> -<context> - <name>QWhatsThisAction</name> <message> - <source>What's This?</source> - <translation>Qu'est-ce que c'est ?</translation> + <source>Page up</source> + <translation>Page haut</translation> </message> -</context> -<context> - <name>QWidget</name> <message> - <source>*</source> - <translation></translation> + <source>Page right</source> + <translation>Page droite</translation> </message> -</context> -<context> - <name>QWizard</name> <message> - <source>Go Back</source> - <translation>Précédent</translation> + <source>Page down</source> + <translation>Page bas</translation> </message> <message> - <source>Continue</source> - <translation>Continuer</translation> + <source>Scroll left</source> + <translation>Défiler vers la gauche</translation> </message> <message> - <source>Commit</source> - <translatorcomment>si il s'agit de commit au même sens que git... (en même temps se marier en cliquant... ?!!?!)</translatorcomment> - <translation>Soumettre</translation> + <source>Scroll up</source> + <translation>Défiler vers le haut</translation> </message> <message> - <source>Done</source> - <translation>Terminer</translation> + <source>Scroll right</source> + <translation>Défiler vers la droite</translation> </message> <message> - <source>Quit</source> - <translation type="obsolete">Quitter</translation> + <source>Scroll down</source> + <translation>Défiler vers le bas</translation> </message> - <message> - <source>Help</source> - <translation>Aide</translation> + <message numerus="yes"> + <source>%n file(s)</source> + <comment>number of chosen file</comment> + <translation> + <numerusform>%n fichier</numerusform> + <numerusform>%n fichiers</numerusform> + </translation> </message> <message> - <source>< &Back</source> - <translation>< &Précédent</translation> + <source>JavaScript Alert - %1</source> + <translation>Alerte JavaScript - %1</translation> </message> <message> - <source>&Finish</source> - <translation>&Terminer</translation> + <source>JavaScript Confirm - %1</source> + <translation>Confirmation JavaScript - %1</translation> </message> <message> - <source>Cancel</source> - <translation>Annuler</translation> + <source>JavaScript Prompt - %1</source> + <translation>Invite JavaScript - %1</translation> </message> <message> - <source>&Help</source> - <translation>&Aide</translation> + <source>Move the cursor to the next character</source> + <translation>Déplacer le curseur au caractère suivant</translation> </message> <message> - <source>&Next</source> - <translation>&Suivant ></translation> + <source>Move the cursor to the previous character</source> + <translation>Déplacer le curseur au caractère précédent</translation> </message> <message> - <source>&Next ></source> - <translation>&Suivant ></translation> + <source>Move the cursor to the next word</source> + <translation>Déplacer le curseur au mot suivant</translation> </message> -</context> -<context> - <name>QWorkspace</name> <message> - <source>&Restore</source> - <translation>&Restaurer</translation> + <source>Move the cursor to the previous word</source> + <translation>Déplacer le curseur au mot précédent</translation> </message> <message> - <source>&Move</source> - <translation>&Déplacer</translation> + <source>Move the cursor to the next line</source> + <translation>Déplacer le curseur à la ligne suivante</translation> </message> <message> - <source>&Size</source> - <translation>&Taille</translation> + <source>Move the cursor to the previous line</source> + <translation>Déplacer le curseur à la ligne précédente</translation> </message> <message> - <source>Mi&nimize</source> - <translation>Réd&uire</translation> + <source>Move the cursor to the start of the line</source> + <translation>Déplacer le curseur en début de ligne</translation> </message> <message> - <source>Ma&ximize</source> - <translation>Ma&ximiser</translation> + <source>Move the cursor to the end of the line</source> + <translation>Déplacer le curseur en fin de ligne</translation> </message> <message> - <source>&Close</source> - <translation>&Fermer</translation> + <source>Move the cursor to the start of the block</source> + <translation>Déplacer le curseur au début du paragraphe</translation> </message> <message> - <source>Stay on &Top</source> - <translation>Rester au &premier plan</translation> + <source>Move the cursor to the end of the block</source> + <translation>Déplacer le curseur à la fin du paragraphe</translation> </message> <message> - <source>Minimize</source> - <translation>Réduire</translation> + <source>Move the cursor to the start of the document</source> + <translation>Déplacer le curseur en début de document</translation> </message> <message> - <source>Restore Down</source> - <translation>Restaurer en bas</translation> + <source>Move the cursor to the end of the document</source> + <translation>Déplacer le curseur en fin de document</translation> </message> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Select all</source> + <translation>Tout sélectionner</translation> </message> <message> - <source>Sh&ade</source> - <translation>Enrou&ler</translation> + <source>Select to the next character</source> + <translation>Sélectionner jusqu'au caractère suivant</translation> </message> <message> - <source>%1 - [%2]</source> - <translation>%1 - [%2]</translation> + <source>Select to the previous character</source> + <translation>Sélectionner jusqu'au caractère précédent</translation> </message> <message> - <source>&Unshade</source> - <translation>Dér&ouler</translation> + <source>Select to the next word</source> + <translation>Sélectionner jusqu'au mot suivant</translation> </message> -</context> -<context> - <name>QXml</name> <message> - <source>no error occurred</source> - <translation>aucune erreur ne s'est produite</translation> + <source>Select to the previous word</source> + <translation>Sélectionner jusqu'au mot précédent</translation> </message> <message> - <source>error triggered by consumer</source> - <translation type="unfinished"></translation> + <source>Select to the next line</source> + <translation>Sélectionner jusqu'à la ligne suivante</translation> </message> <message> - <source>unexpected end of file</source> - <translation type="unfinished"></translation> + <source>Select to the previous line</source> + <translation>Sélectionner jusqu'à la ligne précédente</translation> </message> <message> - <source>more than one document type definition</source> - <translation type="unfinished"></translation> + <source>Select to the start of the line</source> + <translation>Sélectionner jusqu'en début de ligne</translation> </message> <message> - <source>error occurred while parsing element</source> - <translation type="unfinished"></translation> + <source>Select to the end of the line</source> + <translation>Sélectionner jusqu'en fin de ligne</translation> </message> <message> - <source>tag mismatch</source> - <translation type="unfinished"></translation> + <source>Select to the start of the block</source> + <translation>Sélectionner jusqu'au début du paragraphe</translation> </message> <message> - <source>error occurred while parsing content</source> - <translation type="unfinished"></translation> + <source>Select to the end of the block</source> + <translation>Sélectionner jusqu'à la fin du paragraphe</translation> </message> <message> - <source>unexpected character</source> - <translation type="unfinished"></translation> + <source>Select to the start of the document</source> + <translation>Sélectionner jusqu'au début du document</translation> </message> <message> - <source>invalid name for processing instruction</source> - <translation type="unfinished"></translation> + <source>Select to the end of the document</source> + <translation>Sélectionner jusqu'à la fin du document</translation> </message> <message> - <source>version expected while reading the XML declaration</source> - <translation type="unfinished"></translation> + <source>Delete to the start of the word</source> + <translation>Supprimer jusqu'au début du mot</translation> </message> <message> - <source>wrong value for standalone declaration</source> - <translation type="unfinished"></translation> + <source>Delete to the end of the word</source> + <translation>Supprimer jusqu'à la fin du mot</translation> </message> <message> - <source>error occurred while parsing document type definition</source> - <translation type="unfinished"></translation> + <source>Insert a new paragraph</source> + <translation>Insérer un nouveau paragraphe</translation> </message> <message> - <source>letter is expected</source> - <translation type="unfinished"></translation> + <source>Insert a new line</source> + <translation>Insérer une nouvelle ligne</translation> </message> <message> - <source>error occurred while parsing comment</source> - <translation type="unfinished"></translation> + <source>Submit</source> + <translation type="obsolete">Soumettre</translation> </message> <message> - <source>error occurred while parsing reference</source> - <translation type="unfinished"></translation> + <source>Reset</source> + <translation type="obsolete">Réinitialiser</translation> </message> <message> - <source>internal general entity reference not allowed in DTD</source> - <translation type="unfinished"></translation> + <source>Choose File</source> + <translation type="obsolete">Choisir le fichier</translation> </message> <message> - <source>external parsed general entity reference not allowed in attribute value</source> - <translation type="unfinished"></translation> + <source>No file selected</source> + <translation type="obsolete">Pas de fichier sélectionné</translation> </message> <message> - <source>external parsed general entity reference not allowed in DTD</source> - <translation type="unfinished"></translation> + <source>Open in New Window</source> + <translation type="obsolete">Ouvrir dans une Nouvelle Fenêtre</translation> </message> <message> - <source>unparsed entity reference in wrong context</source> - <translation type="unfinished"></translation> + <source>Save Link...</source> + <translation type="obsolete">Enregistrer la cible du lien...</translation> </message> <message> - <source>recursive entities</source> - <translation type="unfinished"></translation> + <source>Copy Link</source> + <translation type="obsolete">Copier le lien</translation> </message> <message> - <source>error in the text declaration of an external entity</source> - <translation type="unfinished"></translation> + <source>Open Image</source> + <translation type="obsolete">Ouvrir l'image</translation> </message> <message> - <source>encoding declaration or standalone declaration expected while reading the XML declaration</source> - <translation type="unfinished"></translation> + <source>Save Image</source> + <translation type="obsolete">Enregistrer l'image</translation> </message> <message> - <source>standalone declaration expected while reading the XML declaration</source> - <translation type="unfinished"></translation> + <source>Copy Image</source> + <translation type="obsolete">Copier l'image</translation> </message> -</context> -<context> - <name>QXmlStream</name> <message> - <source>Extra content at end of document.</source> - <translation type="unfinished"></translation> + <source>Open Frame</source> + <translation type="obsolete">Ouvrir le cadre</translation> </message> <message> - <source>Invalid entity value.</source> - <translation type="unfinished"></translation> + <source>Copy</source> + <translation type="obsolete">Copier</translation> </message> <message> - <source>Invalid XML character.</source> - <translation type="unfinished"></translation> + <source>Go Back</source> + <translation type="obsolete">Précédent</translation> </message> <message> - <source>Sequence ']]>' not allowed in content.</source> - <translation type="unfinished"></translation> + <source>Go Forward</source> + <translation type="obsolete">Suivant</translation> </message> <message> - <source>Namespace prefix '%1' not declared</source> - <translation type="unfinished"></translation> + <source>Stop</source> + <translation type="obsolete">Stop</translation> </message> <message> - <source>Attribute redefined.</source> - <translation type="unfinished"></translation> + <source>Reload</source> + <translation type="obsolete">Recharger</translation> </message> <message> - <source>Unexpected character '%1' in public id literal.</source> - <translation type="unfinished"></translation> + <source>Cut</source> + <translation type="obsolete">Couper</translation> </message> <message> - <source>Invalid XML version string.</source> - <translation type="unfinished"></translation> + <source>Paste</source> + <translation type="obsolete">Coller</translation> </message> <message> - <source>Unsupported XML version.</source> - <translation type="unfinished"></translation> + <source>No Guesses Found</source> + <translation type="obsolete">Pas de candidat trouvés</translation> </message> <message> - <source>%1 is an invalid encoding name.</source> - <translation type="unfinished"></translation> + <source>Ignore</source> + <translation type="obsolete">Ignorer</translation> </message> <message> - <source>Encoding %1 is unsupported</source> - <translation type="unfinished"></translation> + <source>Add To Dictionary</source> + <translation type="obsolete">Ajouter au dictionnaire</translation> </message> <message> - <source>Invalid XML encoding name.</source> - <translation type="obsolete">Encodage XML invalide.</translation> + <source>Search The Web</source> + <translation type="obsolete">Chercher sur le Web</translation> </message> <message> - <source>Standalone accepts only yes or no.</source> - <translation type="unfinished"></translation> + <source>Look Up In Dictionary</source> + <translation type="obsolete">Chercher dans le dictionnaire</translation> </message> <message> - <source>Invalid attribute in XML declaration.</source> - <translation type="unfinished"></translation> + <source>Open Link</source> + <translation type="obsolete">Ouvrir le lien</translation> </message> <message> - <source>Premature end of document.</source> - <translation type="unfinished"></translation> + <source>Spelling</source> + <translation type="obsolete">Orthographe</translation> </message> <message> - <source>Invalid document.</source> - <translation type="unfinished"></translation> + <source>Show Spelling and Grammar</source> + <translation type="obsolete">Afficher Orthographe et Grammaire</translation> </message> <message> - <source>Expected </source> - <translation type="unfinished"></translation> + <source>Hide Spelling and Grammar</source> + <translation type="obsolete">Cacher Orthographe et Grammaire</translation> </message> <message> - <source>, but got '</source> - <translation type="unfinished"></translation> + <source>Check Spelling</source> + <translation type="obsolete">Vérifier l'orthographe</translation> </message> <message> - <source>Unexpected '</source> - <translation type="unfinished"></translation> + <source>Check Spelling While Typing</source> + <translation type="obsolete">Vérifier l'orthographe pendant la saisie</translation> </message> <message> - <source>Expected character data.</source> - <translation type="unfinished"></translation> + <source>Check Grammar With Spelling</source> + <translation type="obsolete">Vérifier la grammaire en même temps que l'orthographe</translation> </message> <message> - <source>Recursive entity detected.</source> - <translation type="unfinished"></translation> + <source>Fonts</source> + <translation type="obsolete">Polices</translation> </message> <message> - <source>Start tag expected.</source> - <translation type="unfinished"></translation> + <source>Bold</source> + <translation type="obsolete">Gras</translation> </message> <message> - <source>XML declaration not at start of document.</source> - <translation type="unfinished"></translation> + <source>Italic</source> + <translation type="obsolete">Italique</translation> </message> <message> - <source>NDATA in parameter entity declaration.</source> - <translation type="unfinished"></translation> + <source>Underline</source> + <translation type="obsolete">Souligné</translation> </message> <message> - <source>%1 is an invalid processing instruction name.</source> - <translation type="unfinished"></translation> + <source>Outline</source> + <translation type="obsolete">Contour</translation> </message> <message> - <source>Invalid processing instruction name.</source> - <translation type="unfinished"></translation> + <source>Direction</source> + <translation type="obsolete">Direction</translation> </message> <message> - <source>Illegal namespace declaration.</source> - <translation type="unfinished"></translation> + <source>Text Direction</source> + <translation type="obsolete">Orientation du texte</translation> </message> <message> - <source>Invalid XML name.</source> - <translation type="unfinished"></translation> + <source>Default</source> + <translation type="obsolete">Défaut</translation> </message> <message> - <source>Opening and ending tag mismatch.</source> - <translation type="unfinished"></translation> + <source>Left to Right</source> + <translation type="obsolete">Gauche à droite</translation> </message> <message> - <source>Reference to unparsed entity '%1'.</source> - <translation type="unfinished"></translation> + <source>Right to Left</source> + <translation type="obsolete">Droite à gauche</translation> </message> <message> - <source>Entity '%1' not declared.</source> - <translation type="unfinished"></translation> + <source>Loading...</source> + <translation type="obsolete">Chargement...</translation> </message> <message> - <source>Reference to external entity '%1' in attribute value.</source> - <translation type="unfinished"></translation> + <source>Live Broadcast</source> + <translation type="obsolete">Diffusion en direct</translation> </message> <message> - <source>Invalid character reference.</source> - <translation type="unfinished"></translation> + <source>Audio Element</source> + <translation type="obsolete">Élément audio</translation> </message> <message> - <source>Encountered incorrectly encoded content.</source> - <translation type="unfinished"></translation> + <source>Video Element</source> + <translation type="obsolete">Élément vidéo</translation> </message> <message> - <source>The standalone pseudo attribute must appear after the encoding.</source> - <translation type="unfinished"></translation> + <source>Mute Button</source> + <translation type="obsolete">Bouton de désactivation du son</translation> </message> <message> - <source>%1 is an invalid PUBLIC identifier.</source> - <translation type="unfinished"></translation> + <source>Unmute Button</source> + <translation type="obsolete">Bouton de réactivation du son</translation> </message> -</context> -<context> - <name>QtXmlPatterns</name> <message> - <location filename="../src/xmlpatterns/acceltree/qacceltreebuilder.cpp" line="+205"/> - <source>An %1-attribute with value %2 has already been declared.</source> - <translation>Un attribute %1 avec la valeur %2 est déjà déclaré.</translation> + <source>Play Button</source> + <translation type="obsolete">Bouton de lecture</translation> </message> <message> - <location line="+13"/> - <source>An %1-attribute must have a valid %2 as value, which %3 isn't.</source> - <translation>Un attribute %1 doit avoir un %2 valide, %3 ne l'a pas.</translation> + <source>Pause Button</source> + <translation type="obsolete">Bouton de pause</translation> </message> <message> - <source>Network timeout.</source> - <translation>Le réseau ne répond pas.</translation> + <source>Slider</source> + <translation type="obsolete">Barre de défilement</translation> </message> <message> - <source>Element %1 can't be serialized because it appears outside the document element.</source> - <translation>L'élément %1 ne peut pas être sérialisé parce qu'il est hors de l'élément document.</translation> + <source>Slider Thumb</source> + <translation type="obsolete">Curseur de la barre de défilement</translation> </message> <message> - <source>Attribute element %1 can't be serialized because it appears at the top level.</source> - <translation type="obsolete">L'élément attribute %1 ne peut pas être sérialisé parce qu'il apparaît comme racine.</translation> + <source>Rewind Button</source> + <translation type="obsolete">Bouton de retour en arrière</translation> </message> <message> - <source>Year %1 is invalid because it begins with %2.</source> - <translation>L'année %1 est invalide parce qu'elle commence par %2.</translation> + <source>Return to Real-time Button</source> + <translation type="obsolete">Bouton de retour au temps réel</translation> </message> <message> - <source>Day %1 is outside the range %2..%3.</source> - <translation>Le jour %1 est hors de l'intervalle %2..%3.</translation> + <source>Elapsed Time</source> + <translation type="obsolete">Temps écoulé</translation> </message> <message> - <source>Month %1 is outside the range %2..%3.</source> - <translation>Le mois %1 est hors de l'intervalle %2..%3.</translation> + <source>Remaining Time</source> + <translation type="obsolete">Durée restante</translation> </message> <message> - <source>Overflow: Can't represent date %1.</source> - <translation>Overflow: ne peut pas représenter la date %1.</translation> + <source>Status Display</source> + <translation type="obsolete">Affichage de l'état</translation> </message> <message> - <source>Day %1 is invalid for month %2.</source> - <translation>Jour %1 est invalide pour le mois %2.</translation> + <source>Fullscreen Button</source> + <translation type="obsolete">Bouton de plein écran</translation> </message> <message> - <source>Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; </source> - <translation>L'heure 24:%1:%2.%3 est invalide. L'heure est 24 mais les minutes, seconndes et millisecondes ne sont pas à 0;</translation> + <source>Seek Forward Button</source> + <translation type="obsolete">Bouton de recherche avant</translation> </message> <message> - <source>Time %1:%2:%3.%4 is invalid.</source> - <translation>L'heure %1:%2:%3.%4 est invalide.</translation> + <source>Seek Back Button</source> + <translation type="obsolete">Bouton de recherche arrière</translation> </message> <message> - <source>Overflow: Date can't be represented.</source> - <translation>Overflow : la date ne peut pas être représentée.</translation> + <source>Audio element playback controls and status display</source> + <translation type="obsolete">Commandes de lecture et affichage de l'état de l'élément audio</translation> </message> <message> - <source>At least one component must be present.</source> - <translation>Au moins un composant doit être présent.</translation> + <source>Video element playback controls and status display</source> + <translation type="obsolete">Commandes de lecture et affichage de l'état de l'élément vidéo</translation> </message> <message> - <source>At least one time component must appear after the %1-delimiter.</source> - <translation>Au moins un composant doit apparaître après le délimiteur %1.</translation> + <source>Mute audio tracks</source> + <translation type="obsolete">Couper le son des pistes audio</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qabstractfloatmathematician.cpp" line="+64"/> - <source>No operand in an integer division, %1, can be %2.</source> - <translation>Pas d'opérande dans une division entière, %1, peut être %2.</translation> + <source>Unmute audio tracks</source> + <translation type="obsolete">Réactiver le son des pistes audio</translation> </message> <message> - <location line="+7"/> - <source>The first operand in an integer division, %1, cannot be infinity (%2).</source> - <translation>Le premier opérande dans une division entière, %1, ne peut être infini (%2).</translation> + <source>Begin playback</source> + <translation type="obsolete">Commencer la lecture</translation> </message> <message> - <location line="+6"/> - <source>The second operand in a division, %1, cannot be zero (%2).</source> - <translation>Le second opérande dans une division, %1, ne peut être nul (%2).</translation> + <source>Pause playback</source> + <translation type="obsolete">Pause lecture</translation> </message> <message> - <source>%1 is not a valid value of type %2.</source> - <translation>%1 n'est pas une valeur valide du type %2.</translation> + <source>Movie time scrubber</source> + <translation type="obsolete">Épurateur de la durée du film</translation> </message> <message> - <source>When casting to %1 from %2, the source value cannot be %3.</source> - <translation>En castant de %2 vers %1, la valeur source ne peut pas être %3.</translation> + <source>Movie time scrubber thumb</source> + <translation type="obsolete">Case de défilement de l'épurateur de la durée du film</translation> </message> <message> - <source>Integer division (%1) by zero (%2) is undefined.</source> - <translation>Division entière (%1) par zéro (%2) indéfinie.</translation> + <source>Rewind movie</source> + <translation type="obsolete">Rembobiner le film</translation> </message> <message> - <source>Division (%1) by zero (%2) is undefined.</source> - <translation>Division (%1) par zéro (%2) indéfinie.</translation> + <source>Return streaming movie to real-time</source> + <translation type="obsolete">Ramener le film en streaming en temps réel</translation> </message> <message> - <source>Modulus division (%1) by zero (%2) is undefined.</source> - <translation>Module division (%1) par zéro (%2) indéfinie.</translation> + <source>Current movie time</source> + <translation type="obsolete">Durée du film actuel</translation> </message> <message> - <source>Dividing a value of type %1 by %2 (not-a-number) is not allowed.</source> - <translation>Diviser une valeur du type %1 par %2 (not-a-number) est interdit.</translation> + <source>Remaining movie time</source> + <translation type="obsolete">Durée de film restante</translation> </message> <message> - <source>Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed.</source> - <translation>Diviser une valeur de type %1 par %2 ou %3 (plus ou moins zéro) est interdit.</translation> + <source>Current movie status</source> + <translation type="obsolete">État du film actuel</translation> </message> <message> - <source>Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed.</source> - <translation>La multiplication d'une valeur du type %1 par %2 ou %3 (plus ou moins infini) est interdite.</translation> + <source>Play movie in full-screen mode</source> + <translation type="obsolete">Regarder le film en mode plein écran</translation> </message> <message> - <source>A value of type %1 cannot have an Effective Boolean Value.</source> - <translation>Une valeur de type %1 ne peut pas avoir une Effective Boolean Value.</translation> + <source>Seek quickly back</source> + <translation type="obsolete">Recherche rapide arrière</translation> </message> <message> - <source>Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values.</source> - <translation>Effective Boolean Value ne peut être calculée pour une séquence contenant deux ou plus valeurs atomiques.</translation> + <source>Seek quickly forward</source> + <translation type="obsolete">Recherche rapide avant</translation> </message> <message> - <source>Value %1 of type %2 exceeds maximum (%3).</source> - <translation>La valeur %1 de type %2 excède le maximum (%3).</translation> + <source>Indefinite time</source> + <translation type="obsolete">Durée indéfinie</translation> </message> <message> - <source>Value %1 of type %2 is below minimum (%3).</source> - <translation>La valeur %1 de type %2 est inférieur au minimum (%3).</translation> + <source>%1 days %2 hours %3 minutes %4 seconds</source> + <translation type="obsolete">%1 jours %2 heures %3 minutes %4 secondes</translation> </message> <message> - <source>A value of type %1 must contain an even number of digits. The value %2 does not.</source> - <translation>Une valeur de type %1 doit contenir un nombre pair de chiffre. La valeur %2 n'est pas conforme.</translation> + <source>%1 hours %2 minutes %3 seconds</source> + <translation type="obsolete">%1 heures %2 minutes %3 secondes</translation> </message> <message> - <source>%1 is not valid as a value of type %2.</source> - <translation>%1 n'est pas une valeur valide de type %2.</translation> + <source>%1 minutes %2 seconds</source> + <translation type="obsolete">%1 minutes %2 secondes</translation> </message> <message> - <source>Operator %1 cannot be used on type %2.</source> - <translation>L'opérateur %1 ne peut pas être utilisé pour le type %2.</translation> + <source>%1 seconds</source> + <translation type="obsolete">%1 secondes</translation> </message> <message> - <source>Operator %1 cannot be used on atomic values of type %2 and %3.</source> - <translation>L'opérateur %1 ne peut pas être utilisé pour des valeurs atomiques de type %2 ou %3.</translation> + <source>Inspect</source> + <translation type="obsolete">Inspecter</translation> </message> <message> - <source>The namespace URI in the name for a computed attribute cannot be %1.</source> - <translation>L'URI de namespace dans le nom d'un attribut calculé ne peut pas être %1.</translation> + <source>No recent searches</source> + <translation type="obsolete">Pas de recherche récente</translation> </message> <message> - <source>The name for a computed attribute cannot have the namespace URI %1 with the local name %2.</source> - <translation>Le nom d'un attribut calculé ne peut pas avoir l'URI de namespace %1 avec le nom local %2.</translation> + <source>Recent searches</source> + <translation type="obsolete">Recherches récentes</translation> </message> <message> - <source>Type error in cast, expected %1, received %2.</source> - <translation>Erreur de type lors du cast, attendu %1 mais reçu %2.</translation> + <source>Clear recent searches</source> + <translation type="obsolete">Effacer les recherches récentes</translation> </message> <message> - <source>When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed.</source> - <translation>En castant vers %1 ou des types dérivés, la valeur source doit être du même type ou une chaîne. Le type %2 n'est pas autorisé.</translation> + <source>Unknown</source> + <translation type="obsolete">Inconnu</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qcastingplatform.cpp" line="+134"/> - <source>No casting is possible with %1 as the target type.</source> - <translation>Aucun cast n'est possible avec %1 comme type de destination.</translation> + <source>%1 (%2x%3 pixels)</source> + <translation type="obsolete">%1 (%2x%3 pixels)</translation> </message> <message> - <location line="+15"/> - <source>It is not possible to cast from %1 to %2.</source> - <translation>Il est impossible de caster de %1 en %2.</translation> + <source>This is a searchable index. Enter search keywords: </source> + <translation type="obsolete">Ceci est un index. Veuillez saisir les mots-clé :</translation> </message> <message> - <location line="+27"/> - <source>Casting to %1 is not possible because it is an abstract type, and can therefore never be instantiated.</source> - <translation>Caster vers %1 est impossible parce que c'est un type abstrait qui ne peut donc être instancié.</translation> + <source>JavaScript Problem - %1</source> + <translation>Problème de JavaScript - %1</translation> </message> <message> - <location line="+23"/> - <source>It's not possible to cast the value %1 of type %2 to %3</source> - <translation>I lest impossible de caster la valeur %1 de type %2 en %3</translation> + <source>The script on this page appears to have a problem. Do you want to stop the script?</source> + <translation>Le script de cette page semble avoir un problème. Souhaitez-vous arrêter le script?</translation> </message> <message> - <location line="+8"/> - <source>Failure when casting from %1 to %2: %3</source> - <translation>Echec en castant de %1 ver %2 : %3</translation> + <source>Paste and Match Style</source> + <translation>Coller et suivre le style</translation> </message> <message> - <source>A comment cannot contain %1</source> - <translation>Un commentaire ne peut pas contenir %1</translation> + <source>Remove formatting</source> + <translation>Retirer la mise en forme</translation> </message> <message> - <source>A comment cannot end with a %1.</source> - <translation>Un commentaire ne peut pas finir par %1.</translation> + <source>Strikethrough</source> + <translation>Barré</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qcomparisonplatform.cpp" line="+167"/> - <source>No comparisons can be done involving the type %1.</source> - <translation>Aucune comparaison ne peut être faite avec le type %1.</translation> + <source>Subscript</source> + <translation>Indice</translation> </message> <message> - <location line="+14"/> - <source>Operator %1 is not available between atomic values of type %2 and %3.</source> - <translation>L'opérateur %1 n'est pas disponible entre valeurs atomiques de type %2 et %3.</translation> + <source>Superscript</source> + <translation>Exposant</translation> </message> <message> - <source>An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place.</source> - <translation>Un noeuds attribut ne peut être un fils d'un noeuds document. C'est pourquoi l'attribut %1 est mal placé.</translation> + <source>Insert Bulleted List</source> + <translation>Insérer une liste à puces</translation> </message> <message> - <source>A library module cannot be evaluated directly. It must be imported from a main module.</source> - <translation>Un module de bibliothèque ne peut pas être évalué directement. Il doit être importé d'un module principal.</translation> + <source>Insert Numbered List</source> + <translation>Insérer une liste numérotée</translation> </message> <message> - <source>No template by name %1 exists.</source> - <translation>Aucun template nommé %1 n'existe.</translation> + <source>Indent</source> + <translation>Retrait</translation> </message> <message> - <source>A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type.</source> - <translation>Une valeur de type %1 ne peut être un prédicat. Un prédicat doit être de type numérique ou un Effective Boolean Value.</translation> + <source>Outdent</source> + <translation>Retrait négatif</translation> </message> <message> - <source>A positional predicate must evaluate to a single numeric value.</source> - <translation>Un prédicat de position doit être évalué en une unique valeur numérique.</translation> + <source>Center</source> + <translation>Centré</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qncnameconstructor_p.h" line="+113"/> - <source>The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid.</source> - <translation>Le nom de destination dans une instruction de traitement ne peut être %1. %2 est invalide.</translation> + <source>Justify</source> + <translation>Justifié</translation> </message> <message> - <source>%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3.</source> - <translation>%1 n'est pas un nom de destination valide dans une instruction de traitement. Ce doit être une valeur %2, par ex. %3.</translation> + <source>Align Left</source> + <translation>Aligner à gauche</translation> </message> <message> - <source>The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two.</source> - <translation>La dernière étape dans un chemin doit contenir soit des noeuds soit des valeurs atomiques. Cela ne peut pas être un mélange des deux.</translation> + <source>Align Right</source> + <translation>Aligner à droite</translation> </message> +</context> +<context> + <name>QWhatsThisAction</name> <message> - <source>The data of a processing instruction cannot contain the string %1</source> - <translation>Les données d'une instruction de traitement ne peut contenir la chaîne %1</translation> + <source>What's This?</source> + <translation>Qu'est-ce que c'est ?</translation> </message> +</context> +<context> + <name>QWidget</name> <message> - <source>No namespace binding exists for the prefix %1</source> - <translation>Aucun lien de namespace n'existe pour le préfixe %1</translation> + <source>*</source> + <translation></translation> </message> +</context> +<context> + <name>QWizard</name> <message> - <source>No namespace binding exists for the prefix %1 in %2</source> - <translation>Aucun lien de namespace n'existe pour le préfixe %1 dans %2</translation> + <source>Go Back</source> + <translation>Précédent</translation> </message> <message> - <source>%1 is an invalid %2</source> - <translation>%1 est un ivalide %2</translation> + <source>Continue</source> + <translation>Continuer</translation> </message> - <message numerus="yes"> - <source>%1 takes at most %n argument(s). %2 is therefore invalid.</source> - <translation> - <numerusform>%1 prend au maximum %n argument. %2 est donc invalide.</numerusform> - <numerusform>%1 prend au maximum %n arguments. %2 est donc invalide.</numerusform> - </translation> + <message> + <source>Commit</source> + <translatorcomment>si il s'agit de commit au même sens que git... (en même temps se marier en cliquant... ?!!?!)</translatorcomment> + <translation>Soumettre</translation> </message> - <message numerus="yes"> - <source>%1 requires at least %n argument(s). %2 is therefore invalid.</source> - <translation> - <numerusform>%1 requiert au moins %n argument. %2 est donc invalide.</numerusform> - <numerusform>%1 requiert au moins %n arguments. %2 est donc invalide.</numerusform> - </translation> + <message> + <source>Done</source> + <translation>Terminer</translation> </message> <message> - <source>The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration.</source> - <translation>Le premier argument de %1 ne peut être du type %2. Il doit être de type numérique, xs:yearMonthDuration ou xs:dayTimeDuration.</translation> + <source>Quit</source> + <translation type="obsolete">Quitter</translation> </message> <message> - <source>The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5.</source> - <translation>Le premier argument de %1 ne peut être du type %2. Il doit être de type %3, %4 ou %5.</translation> + <source>Help</source> + <translation>Aide</translation> </message> <message> - <source>The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5.</source> - <translation>Le deuxième argument de %1 ne peut être du type %2. Il doit être de type %3, %4 ou %5.</translation> + <source>< &Back</source> + <translation>< &Précédent</translation> </message> <message> - <source>%1 is not a valid XML 1.0 character.</source> - <translation>%1 n'est pas un caractère XML 1.0 valide.</translation> + <source>&Finish</source> + <translation>&Terminer</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qcomparingaggregator.cpp" line="+197"/> - <source>The first argument to %1 cannot be of type %2.</source> - <translation>Le premier argument de %1 ne peut être du type %2.</translation> + <source>Cancel</source> + <translation>Annuler</translation> </message> <message> - <source>If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same.</source> - <translation>Si les deux valeurs ont des décalages de zone, elle doivent avoir le même. %1 et %2 sont différents.</translation> + <source>&Help</source> + <translation>&Aide</translation> </message> <message> - <source>%1 was called.</source> - <translation>%1 a été appelé.</translation> + <source>&Next</source> + <translation>&Suivant ></translation> </message> <message> - <source>%1 must be followed by %2 or %3, not at the end of the replacement string.</source> - <translation>%1 doit être suivi par %2 ou %3, et non à la fin de la chaîne de remplacement.</translation> + <source>&Next ></source> + <translation>&Suivant ></translation> </message> +</context> +<context> + <name>QWorkspace</name> <message> - <source>In the replacement string, %1 must be followed by at least one digit when not escaped.</source> - <translation>Dans la chaîne de remplacement, %1 doit être suivi par au moins un chiffre s'il n'est pas échappé.</translation> + <source>&Restore</source> + <translation>&Restaurer</translation> </message> <message> - <source>In the replacement string, %1 can only be used to escape itself or %2, not %3</source> - <translation>Dans la chaîne de remplacement, %1 peut seulement être utilisé pour échapper lui-même ou %2 mais pas %3</translation> + <source>&Move</source> + <translation>&Déplacer</translation> </message> <message> - <source>%1 matches newline characters</source> - <translation>%1 correspond à des caractères de saut de ligne</translation> + <source>&Size</source> + <translation>&Taille</translation> </message> <message> - <source>%1 and %2 match the start and end of a line.</source> - <translation>%1 et %2 correspondent au début et à la fin d'une ligne.</translation> + <source>Mi&nimize</source> + <translation>Réd&uire</translation> </message> <message> - <source>Matches are case insensitive</source> - <translation>Les correspondances ne sont pas sensibles à la casse</translation> + <source>Ma&ximize</source> + <translation>Ma&ximiser</translation> </message> <message> - <source>Whitespace characters are removed, except when they appear in character classes</source> - <translation>Les blancs sont supprimés excepté quand ils apparaissent dans les classes de caractère</translation> + <source>&Close</source> + <translation>&Fermer</translation> </message> <message> - <source>%1 is an invalid regular expression pattern: %2</source> - <translation>%1 est un modèle d'expression régulière invalide: %2</translation> + <source>Stay on &Top</source> + <translation>Rester au &premier plan</translation> </message> <message> - <source>%1 is an invalid flag for regular expressions. Valid flags are:</source> - <translation>%1 est un flag invalide pour des expressions régulières. Les flags valides sont :</translation> + <source>Minimize</source> + <translation>Réduire</translation> </message> <message> - <source>If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified.</source> - <translation>Si le premier argument est une sequence vide ou un chaîne vide (sans namespace), un préfixe ne peut être spécifié. Le préfixe %1 a été spécifié.</translation> + <source>Restore Down</source> + <translation>Restaurer en bas</translation> </message> <message> - <source>It will not be possible to retrieve %1.</source> - <translation>Il sera impossible de récupérer %1.</translation> + <source>Close</source> + <translation>Fermer</translation> </message> <message> - <source>The root node of the second argument to function %1 must be a document node. %2 is not a document node.</source> - <translation>Le noeuds racine du deuxième argument à la fonction %1 doit être un noeuds document. %2 n'est pas un document.</translation> + <source>Sh&ade</source> + <translation>Enrou&ler</translation> </message> <message> - <source>The default collection is undefined</source> - <translation>I'l n'y a pas de collection par défaut</translation> + <source>%1 - [%2]</source> + <translation>%1 - [%2]</translation> </message> <message> - <source>%1 cannot be retrieved</source> - <translation>%1 ne peut pas être récupéré</translation> + <source>&Unshade</source> + <translation>Dér&ouler</translation> </message> +</context> +<context> + <name>QXml</name> <message> - <source>The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization).</source> - <translation>Le forme de normalisation %1 n'est pas supportée. Les formes supportées sont %2, %3, %4 et %5, et aucun, ie. une chaîne vide (pas de normalisation).</translation> + <source>no error occurred</source> + <translation>aucune erreur ne s'est produite</translation> </message> <message> - <source>A zone offset must be in the range %1..%2 inclusive. %3 is out of range.</source> - <translation>Un décalage de zone doit être dans l'intervalle %1..%2 inclus. %3 est hors de l'intervalle.</translation> + <source>error triggered by consumer</source> + <translation type="unfinished">Erreur déclenchée par le consommateur</translation> </message> <message> - <source>%1 is not an whole number of minutes.</source> - <translation type="obsolete">%1 n'est pas un nombre complet de minutes.</translation> + <source>unexpected end of file</source> + <translation type="unfinished">Fin de fichier inattendue</translation> </message> <message> - <source>Required cardinality is %1; got cardinality %2.</source> - <translation>La cardinalité requise est %1; reçu %2.</translation> + <source>more than one document type definition</source> + <translation type="unfinished">plus d'une définition de type de docuement</translation> </message> <message> - <source>The item %1 did not match the required type %2.</source> - <translation>L'item %1 ne correspond pas au type requis %2.</translation> + <source>error occurred while parsing element</source> + <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique de l'élement</translation> </message> <message> - <source>%1 is an unknown schema type.</source> - <translation>%1 est un type de schema inconnu.</translation> + <source>tag mismatch</source> + <translation type="unfinished">tag incongru</translation> </message> <message> - <source>Only one %1 declaration can occur in the query prolog.</source> - <translation>Seulement une déclaration %1 peut intervenir lors du prologue de la requête.</translation> + <source>error occurred while parsing content</source> + <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique du contenu</translation> </message> <message> - <source>The initialization of variable %1 depends on itself</source> - <translation>L'initialisation de la variable %1 dépend d'elle-même</translation> + <source>unexpected character</source> + <translation type="unfinished">caractère inattendu</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qquerytransformparser.cpp" line="+912"/> - <source>No variable by name %1 exists</source> - <translation>Aucun variable nommée %1 existe</translation> + <source>invalid name for processing instruction</source> + <translation type="unfinished">nom d'instruction invalide</translation> </message> <message> - <source>The variable %1 is unused</source> - <translation>La variable %1 est inutilisée</translation> + <source>version expected while reading the XML declaration</source> + <translation type="unfinished">Une version est attendue dans la déclaration XML</translation> </message> <message> - <source>Version %1 is not supported. The supported XQuery version is 1.0.</source> - <translation>La version %1 n'est pas supportée. La version de XQuery supportée est 1.0.</translation> + <source>wrong value for standalone declaration</source> + <translation type="unfinished">Valeur incorrecte pour une déclaration autonome</translation> </message> <message> - <source>The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2.</source> - <translation>L'encodage %1 est invalide. Il doit contenir uniquement des caractères latins, sans blanc et doit être conforme à l'expression régulière %2.</translation> + <source>error occurred while parsing document type definition</source> + <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique de la définition du type de document</translation> </message> <message> - <source>No function with signature %1 is available</source> - <translation>Aucune fonction avec la signature %1 n'est disponible</translation> + <source>letter is expected</source> + <translation type="unfinished">une lettre est attendue</translation> </message> <message> - <source>A default namespace declaration must occur before function, variable, and option declarations.</source> - <translation>Un déclaration de namespace par défaut doit être placée avant toute fonction, variable ou declaration d'option.</translation> + <source>error occurred while parsing comment</source> + <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique du commentaire</translation> </message> <message> - <source>Namespace declarations must occur before function, variable, and option declarations.</source> - <translation>Les declarations de namespace doivent être placées avant tout fonction, variable ou déclaration d'option.</translation> + <source>error occurred while parsing reference</source> + <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique d'une référence</translation> </message> <message> - <source>Module imports must occur before function, variable, and option declarations.</source> - <translation>Les imports de module doivent être placés avant tout fonction, variable ou déclaration d'option.</translation> + <source>internal general entity reference not allowed in DTD</source> + <translation type="unfinished"></translation> </message> <message> - <source>It is not possible to redeclare prefix %1.</source> - <translation>Il est impossible de redéclarer le préfixe %1.</translation> + <source>external parsed general entity reference not allowed in attribute value</source> + <translation type="unfinished"></translation> </message> <message> - <source>Only the prefix %1 can be declared to bind the namespace %2. By default, it is already bound to the prefix %1.</source> - <translation type="obsolete">Seul le préfixe %1 peut être déclaré pour lié le namespace %2. Par défaut, il est déjà lié au préfixe %1.</translation> + <source>external parsed general entity reference not allowed in DTD</source> + <translation type="unfinished"></translation> </message> <message> - <source>Prefix %1 is already declared in the prolog.</source> - <translation>Le préfixe %1 est déjà déclaré dans le prologue.</translation> + <source>unparsed entity reference in wrong context</source> + <translation type="unfinished"></translation> </message> <message> - <source>The name of an option must have a prefix. There is no default namespace for options.</source> - <translation>Le nom d'une option doit avoir un préfixe. Il n'y a pas de namespace par défaut pour les options.</translation> + <source>recursive entities</source> + <translation type="unfinished"></translation> </message> <message> - <source>The Schema Import feature is not supported, and therefore %1 declarations cannot occur.</source> - <translation>La fonctionnalité "Schema Import" n'est pas supportée et les déclarations %1 ne peuvent donc intervenir.</translation> + <source>error in the text declaration of an external entity</source> + <translation type="unfinished"></translation> </message> <message> - <source>The target namespace of a %1 cannot be empty.</source> - <translation>Le namespace cible d'un %1 ne peut être vide.</translation> + <source>encoding declaration or standalone declaration expected while reading the XML declaration</source> + <translation type="unfinished"></translation> </message> <message> - <source>The module import feature is not supported</source> - <translation>La fonctionnalité "module import" n'est pas supportée</translation> + <source>standalone declaration expected while reading the XML declaration</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QXmlPatternistCLI</name> <message> - <source>A variable by name %1 has already been declared in the prolog.</source> - <translation type="obsolete">Une variable du nom %1 a déjà été déclarée dans le prologue.</translation> + <source>Warning in %1, at line %2, column %3: %4</source> + <translation>Avertissement dans %1, à la ligne %2, colonne %3: %4</translation> </message> <message> - <location line="+3572"/> - <source>No value is available for the external variable by name %1.</source> - <translation>Aucune valeur n'est disponible pour la variable externe %1.</translation> + <source>Warning in %1: %2</source> + <translation>Avertissement dans %1: %2</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 type="obsolete">Le namespace d'une fonction définie par l'utilisateur ne peut être vide (essayez le préfixe prédéfini %1 qui existe pour ce genre de cas)</translation> + <source>Unknown location</source> + <translation>Lieu inconnu</translation> </message> <message> - <location line="-4154"/> - <source>A construct was encountered which only is allowed in XQuery.</source> - <translation>Construct n'est autorisé que dans XQuery.</translation> + <source>Error %1 in %2, at line %3, column %4: %5</source> + <translation>Erreur %1 dans %2, à la ligne %3, colonne %4: %5</translation> </message> <message> - <location line="+118"/> - <source>A template by name %1 has already been declared.</source> - <translation>Un template nommé %1 a déjà été déclaré.</translation> + <source>Error %1 in %2: %3</source> + <translation>Erreur %1 dans %2: %3</translation> </message> +</context> +<context> + <name>QXmlStream</name> <message> - <source>The keyword %1 cannot occur with any other mode name.</source> - <translation>Le mot-clé %1 ne peut pas apparaître avec un autre nom de mode.</translation> + <source>Extra content at end of document.</source> + <translation type="unfinished"></translation> </message> <message> - <location line="+3610"/> - <source>The value of attribute %1 must of type %2, which %3 isn't.</source> - <translation>La valeur de l'attribut %1 doit être du type %2, %3 n'en est pas.</translation> + <source>Invalid entity value.</source> + <translation type="unfinished"></translation> </message> <message> - <location line="+75"/> - <source>The prefix %1 can not be bound. By default, it is already bound to the namespace %2.</source> - <translation>Le préfixe %1 ne peut être lié. Par défault, il est déjà lié au namespace %2.</translation> + <source>Invalid XML character.</source> + <translation type="unfinished"></translation> </message> <message> - <location line="+312"/> - <source>A variable by name %1 has already been declared.</source> - <translation>Une variable nommée %1 a déjà été déclarée.</translation> + <source>Sequence ']]>' not allowed in content.</source> + <translation type="unfinished"></translation> </message> <message> - <source>A stylesheet function must have a prefixed name.</source> - <translation>Une fonction de feuille de style doit avoir un nom préfixé.</translation> + <source>Namespace prefix '%1' not declared</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> - <translation>Le namespace d'une fonction utilisateur ne peut pas être vide (essayez le préfixe prédéfini %1 qui existe pour ce genre de cas)</translation> + <source>Attribute redefined.</source> + <translation type="unfinished"></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>Le namespace %1 est réservé; c'est pourquoi les fonctions définies par l'utilisateur ne peuvent l'utiliser. Essayez le préfixe prédéfini %2 qui existe pour ces cas.</translation> + <source>Unexpected character '%1' in public id literal.</source> + <translation type="unfinished"></translation> </message> <message> - <source>The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2</source> - <translation>Le namespace d'une fonction utilisateur dans un module de bibliothèque doit être équivalent au namespace du module. En d'autres mots, il devrait être %1 au lieu de %2</translation> + <source>Invalid XML version string.</source> + <translation type="unfinished"></translation> </message> <message> - <source>A function already exists with the signature %1.</source> - <translation>Une fonction avec la signature %1 existe déjà.</translation> + <source>Unsupported XML version.</source> + <translation type="unfinished"></translation> </message> <message> - <source>No external functions are supported. All supported functions can be used directly, without first declaring them as external</source> - <translation>Les fonctions externes ne sont pas supportées. Toutes les fonctions supportées peuvent êter utilisées directement sans les déclarer préalablement comme externes</translation> + <source>%1 is an invalid encoding name.</source> + <translation type="unfinished"></translation> </message> <message> - <location line="+259"/> - <source>An argument by name %1 has already been declared. Every argument name must be unique.</source> - <translation>Un argument nommé %1 a déjà été déclaré. Chaque nom d'argument doit être unique.</translation> + <source>Encoding %1 is unsupported</source> + <translation type="unfinished"></translation> </message> <message> - <source>When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal.</source> - <translation>Quand la fonction %1 est utilisée pour vérifier la correspondance dans un pattern, l'argument doit être une référence de variable ou une chaîne de caractères.</translation> + <source>Invalid XML encoding name.</source> + <translation type="obsolete">Encodage XML invalide.</translation> </message> <message> - <source>In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching.</source> - <translation>Dans un pattern XSL-T, le premier argument à la fonction %1 doit être une chaîne de caractères quand utilisé pour correspondance.</translation> + <source>Standalone accepts only yes or no.</source> + <translation type="unfinished"></translation> </message> <message> - <source>In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching.</source> - <translation>Dans un pattern XSL-T, le premier argument à la fonction %1 doit être un litéral ou une référence de variable.</translation> + <source>Invalid attribute in XML declaration.</source> + <translation type="unfinished"></translation> </message> <message> - <source>In an XSL-T pattern, function %1 cannot have a third argument.</source> - <translation>Dans un pattern XSL-T, la fonction %1 ne peut pas avoir de 3e argument.</translation> + <source>Premature end of document.</source> + <translation type="unfinished"></translation> </message> <message> - <source>In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching.</source> - <translation>Dans un pattern XSL-T, seules les fonctions %1 et %2 (pas %3) peuvent être utilisées pour le matching.</translation> + <source>Invalid document.</source> + <translation type="unfinished"></translation> </message> <message> - <source>In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can.</source> - <translation>Dans un pattern XSL-T, l'axe %1 ne peut pas être utilisé, seulement %2 ou %3 le peuvent.</translation> + <source>Expected </source> + <translation type="unfinished"></translation> </message> <message> - <source>%1 is an invalid template mode name.</source> - <translation>%1 est un nom de mode de template invalide.</translation> + <source>, but got '</source> + <translation type="unfinished"></translation> </message> <message> - <source>The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide.</source> - <translation>Le nom d'une variable liée dans un expression for doit être different de la variable positionnelle. Les deux variables appelées %1 sont en conflit.</translation> + <source>Unexpected '</source> + <translation type="unfinished"></translation> </message> <message> - <source>The Schema Validation Feature is not supported. Hence, %1-expressions may not be used.</source> - <translation>La fonctionnalité "Schema Validation" n'est pas supportée. Les expressions %1 ne seront pas utilisées.</translation> + <source>Expected character data.</source> + <translation type="unfinished"></translation> </message> <message> - <source>None of the pragma expressions are supported. Therefore, a fallback expression must be present</source> - <translation>Aucune des expressions pragma n'est supportée. Une expression par défault doit être présente</translation> + <source>Recursive entity detected.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Each name of a template parameter must be unique; %1 is duplicated.</source> - <translation>Chaque nom d'un paramètre ede template doit être unique; %1 est dupliqué.</translation> + <source>Start tag expected.</source> + <translation type="unfinished"></translation> </message> <message> - <source>The %1-axis is unsupported in XQuery</source> - <translation>L'axe %1 n'est pas supporté dans XQuery</translation> + <source>XML declaration not at start of document.</source> + <translation type="unfinished"></translation> </message> <message> - <source>%1 is not a valid name for a processing-instruction.</source> - <translation>%1 n'est pas un nom valide pour une instruction de traitement.</translation> + <source>NDATA in parameter entity declaration.</source> + <translation type="unfinished"></translation> </message> <message> - <source>%1 is not a valid numeric literal.</source> - <translation>%1 n'est pas une valeur numérique valide.</translation> + <source>%1 is an invalid processing instruction name.</source> + <translation type="unfinished"></translation> </message> <message> - <location line="+1935"/> - <source>No function by name %1 is available.</source> - <translation>La fonction %1 n'est pas disponible.</translation> + <source>Invalid processing instruction name.</source> + <translation type="unfinished"></translation> </message> <message> - <source>The namespace URI cannot be the empty string when binding to a prefix, %1.</source> - <translation>L'URI de namespace ne peut être une chaîne vide quand on le lie à un préfixe, %1.</translation> + <source>Illegal namespace declaration.</source> + <translation type="unfinished"></translation> </message> <message> - <source>%1 is an invalid namespace URI.</source> - <translation>%1 est un URI de namespace invalide.</translation> + <source>Invalid XML name.</source> + <translation type="unfinished"></translation> </message> <message> - <source>It is not possible to bind to the prefix %1</source> - <translation>Il est impossible de se lier au préfixe %1</translation> + <source>Opening and ending tag mismatch.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared).</source> - <translation>Le namespace %1 peut seulement être lié à %2 (et doit être pré-déclaré).</translation> + <source>Reference to unparsed entity '%1'.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared).</source> - <translation>Le préfixe %1 peut seulement être lié à %2 (et doit être prédéclaré).</translation> + <source>Entity '%1' not declared.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Two namespace declaration attributes have the same name: %1.</source> - <translation>Deux attributs de déclarations de namespace ont le même nom : %1.</translation> + <source>Reference to external entity '%1' in attribute value.</source> + <translation type="unfinished"></translation> </message> <message> - <source>The namespace URI must be a constant and cannot use enclosed expressions.</source> - <translation>L'URI de namespace doit être une constante et ne peut contenir d'expressions.</translation> + <source>Invalid character reference.</source> + <translation type="unfinished"></translation> </message> <message> - <location line="+250"/> - <source>An attribute by name %1 has already appeared on this element.</source> - <translation>Un attribute nommé %1 existe déjà pour cet élément.</translation> + <source>Encountered incorrectly encoded content.</source> + <translation type="unfinished"></translation> </message> <message> - <source>A direct element constructor is not well-formed. %1 is ended with %2.</source> - <translation>Un constructeur direct d'élément est mal-formé. %1 est terminé par %2.</translation> + <source>The standalone pseudo attribute must appear after the encoding.</source> + <translation type="unfinished"></translation> </message> <message> - <source>The name %1 does not refer to any schema type.</source> - <translation>Le nom %1 ne se réfère à aucun type de schema.</translation> + <source>%1 is an invalid PUBLIC identifier.</source> + <translation type="unfinished"></translation> </message> +</context> +<context> + <name>QtXmlPatterns</name> <message> - <source>%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works.</source> - <translation>%1 est une type complexe. Caster vers des types complexes n'est pas possible. Cependant, caster vers des types atomiques comme %2 marche.</translation> + <source>An %1-attribute with value %2 has already been declared.</source> + <translation type="obsolete">Un attribute %1 avec la valeur %2 est déjà déclaré.</translation> </message> <message> - <source>%1 is not an atomic type. Casting is only possible to atomic types.</source> - <translation>%1 n'est pas un type atomique. Il est uniquement possible de caster vers des types atomiques.</translation> + <source>An %1-attribute must have a valid %2 as value, which %3 isn't.</source> + <translation type="obsolete">Un attribute %1 doit avoir un %2 valide, %3 ne l'a pas.</translation> </message> <message> - <source>%1 is not a valid name for a processing-instruction. Therefore this name test will never match.</source> - <translation type="obsolete">%1 n'est pas un nom valide pour une instruction de traitement. C'est pourquoi ce test de nom ne réussira jamais.</translation> + <source>Network timeout.</source> + <translation>Le réseau ne répond pas.</translation> </message> <message> - <source>%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported.</source> - <translation>%1 n'est pas dans les déclaration d'attribut in-scope. La fonctionnalité d'inport de schéma n'est pas supportée.</translation> + <source>Element %1 can't be serialized because it appears outside the document element.</source> + <translation>L'élément %1 ne peut pas être sérialisé parce qu'il est hors de l'élément document.</translation> </message> <message> - <source>The name of an extension expression must be in a namespace.</source> - <translation>Le nom d'une expression d'extension doit être dans un namespace.</translation> + <source>Attribute element %1 can't be serialized because it appears at the top level.</source> + <translation type="obsolete">L'élément attribute %1 ne peut pas être sérialisé parce qu'il apparaît comme racine.</translation> </message> <message> - <source>empty</source> - <translation>vide</translation> + <source>Year %1 is invalid because it begins with %2.</source> + <translation>L'année %1 est invalide parce qu'elle commence par %2.</translation> </message> <message> - <source>zero or one</source> - <translation>zéro ou un</translation> + <source>Day %1 is outside the range %2..%3.</source> + <translation>Le jour %1 est hors de l'intervalle %2..%3.</translation> </message> <message> - <source>exactly one</source> - <translation>exactement un</translation> + <source>Month %1 is outside the range %2..%3.</source> + <translation>Le mois %1 est hors de l'intervalle %2..%3.</translation> </message> <message> - <source>one or more</source> - <translation>un ou plus</translation> + <source>Overflow: Can't represent date %1.</source> + <translation>Overflow: ne peut pas représenter la date %1.</translation> </message> <message> - <source>zero or more</source> - <translation>zéro ou plus</translation> + <source>Day %1 is invalid for month %2.</source> + <translation>Jour %1 est invalide pour le mois %2.</translation> </message> <message> - <source>Required type is %1, but %2 was found.</source> - <translation>Le type requis est %1, mais %2 a été reçu.</translation> + <source>Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; </source> + <translation>L'heure 24:%1:%2.%3 est invalide. L'heure est 24 mais les minutes, seconndes et millisecondes ne sont pas à 0;</translation> </message> <message> - <source>Promoting %1 to %2 may cause loss of precision.</source> - <translation>La Promotion de %1 vers %2 peut causer un perte de précision.</translation> + <source>Time %1:%2:%3.%4 is invalid.</source> + <translation>L'heure %1:%2:%3.%4 est invalide.</translation> </message> <message> - <source>The focus is undefined.</source> - <translation>Le focus est indéfini.</translation> + <source>Overflow: Date can't be represented.</source> + <translation>Overflow : la date ne peut pas être représentée.</translation> </message> <message> - <source>It's not possible to add attributes after any other kind of node.</source> - <translation>Il est impossible d'ajouter des attributs après un autre type de noeuds.</translation> + <source>At least one component must be present.</source> + <translation>Au moins un composant doit être présent.</translation> </message> <message> - <source>An attribute by name %1 has already been created.</source> - <translation>Un attribute de nom %1 a déjà été créé.</translation> + <source>At least one time component must appear after the %1-delimiter.</source> + <translation>Au moins un composant doit apparaître après le délimiteur %1.</translation> </message> <message> - <source>Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported.</source> - <translation>Seule le Unicode CodepointCollation est supporté (%1), %2 n'est pas supporté.</translation> + <source>No operand in an integer division, %1, can be %2.</source> + <translation type="obsolete">Pas d'opérande dans une division entière, %1, peut être %2.</translation> </message> <message> - <source>%1 is not a whole number of minutes.</source> - <translation>%1 n'est pas un nombre entier de minutes.</translation> + <source>The first operand in an integer division, %1, cannot be infinity (%2).</source> + <translation type="obsolete">Le premier opérande dans une division entière, %1, ne peut être infini (%2).</translation> </message> <message> - <source>Attribute %1 can't be serialized because it appears at the top level.</source> - <translation>L'attribut %1 ne peut pas être sérialisé car il apparaît à la racine.</translation> + <source>The second operand in a division, %1, cannot be zero (%2).</source> + <translation type="obsolete">Le second opérande dans une division, %1, ne peut être nul (%2).</translation> </message> <message> - <source>%1 is an unsupported encoding.</source> - <translation>%1 est un encodage non supporté.</translation> + <source>%1 is not a valid value of type %2.</source> + <translation>%1 n'est pas une valeur valide du type %2.</translation> </message> <message> - <source>%1 contains octets which are disallowed in the requested encoding %2.</source> - <translation>%1 contient 'octets', qui n'est pas autorisé pour l'encodage %2.</translation> + <source>When casting to %1 from %2, the source value cannot be %3.</source> + <translation>En castant de %2 vers %1, la valeur source ne peut pas être %3.</translation> </message> <message> - <source>The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character.</source> - <translation>Le codepoint %1 dans %2 et utilisant l'encodage %3 est un caractère XML invalide.</translation> + <source>Integer division (%1) by zero (%2) is undefined.</source> + <translation>Division entière (%1) par zéro (%2) indéfinie.</translation> </message> <message> - <source>Ambiguous rule match.</source> - <translation>Corresonpdance aux règles ambigüe.</translation> + <source>Division (%1) by zero (%2) is undefined.</source> + <translation>Division (%1) par zéro (%2) indéfinie.</translation> </message> <message> - <source>In a namespace constructor, the value for a namespace value cannot be an empty string.</source> - <translation type="obsolete">Dans un cosntructeur de namespace, la valeur pour un namespace ne peut pas être une chaîne vide.</translation> + <source>Modulus division (%1) by zero (%2) is undefined.</source> + <translation>Module division (%1) par zéro (%2) indéfinie.</translation> </message> <message> - <source>In a namespace constructor, the value for a namespace cannot be an empty string.</source> - <translation>Dans un constructeur d'espace de noms, la valeur pour un espace de noms ne peut pas être une chaîne vide.</translation> + <source>Dividing a value of type %1 by %2 (not-a-number) is not allowed.</source> + <translation>Diviser une valeur du type %1 par %2 (not-a-number) est interdit.</translation> </message> <message> - <source>The prefix must be a valid %1, which %2 is not.</source> - <translation>Le préfixe doit être un valide %1; %2 n'e l'est pas.</translation> + <source>Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed.</source> + <translation>Diviser une valeur de type %1 par %2 ou %3 (plus ou moins zéro) est interdit.</translation> </message> <message> - <source>The prefix %1 cannot be bound.</source> - <translation>Le préfixe %1 ne peut être lié.</translation> + <source>Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed.</source> + <translation>La multiplication d'une valeur du type %1 par %2 ou %3 (plus ou moins infini) est interdite.</translation> </message> <message> - <source>Only the prefix %1 can be bound to %2 and vice versa.</source> - <translation>Seul le préfixe %1 peut être lié à %2, et vice versa.</translation> + <source>A value of type %1 cannot have an Effective Boolean Value.</source> + <translation>Une valeur de type %1 ne peut pas avoir une valeur booléene effective.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qevaluationcache.cpp" line="+117"/> - <source>Circularity detected</source> - <translation>Circularité détectée</translation> + <source>Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values.</source> + <translation>Effective Boolean Value ne peut être calculée pour une séquence contenant deux ou plus valeurs atomiques.</translation> </message> <message> - <source>The parameter %1 is required, but no corresponding %2 is supplied.</source> - <translation>Le paramètre %1 est requis, mais aucun %2 correspondant n'est fourni.</translation> + <source>Value %1 of type %2 exceeds maximum (%3).</source> + <translation>La valeur %1 de type %2 excède le maximum (%3).</translation> </message> <message> - <source>The parameter %1 is passed, but no corresponding %2 exists.</source> - <translation>Le paramètre %1 est passé mais aucun %2 correspondant n'existe.</translation> + <source>Value %1 of type %2 is below minimum (%3).</source> + <translation>La valeur %1 de type %2 est inférieur au minimum (%3).</translation> </message> <message> - <source>The URI cannot have a fragment</source> - <translation>L'URI ne peut pas avoir de fragments</translation> + <source>A value of type %1 must contain an even number of digits. The value %2 does not.</source> + <translation>Une valeur de type %1 doit contenir un nombre pair de chiffre. La valeur %2 n'est pas conforme.</translation> </message> <message> - <source>Element %1 is not allowed at this location.</source> - <translation>L'élément %1 n'est pas autorisé à cet emplacement.</translation> + <source>%1 is not valid as a value of type %2.</source> + <translation>%1 n'est pas une valeur valide de type %2.</translation> </message> <message> - <source>Text nodes are not allowed at this location.</source> - <translation>Les noeuds de texte ne sont pas autorisés à cet emplacement.</translation> + <source>Operator %1 cannot be used on type %2.</source> + <translation>L'opérateur %1 ne peut pas être utilisé pour le type %2.</translation> </message> <message> - <source>Parse error: %1</source> - <translation>Erreur: %1</translation> + <source>Operator %1 cannot be used on atomic values of type %2 and %3.</source> + <translation>L'opérateur %1 ne peut pas être utilisé pour des valeurs atomiques de type %2 ou %3.</translation> </message> <message> - <source>The value of the XSL-T version attribute must be a value of type %1, which %2 isn't.</source> - <translation>La valeur de l'attribut de version XSL-T doit être du type %1, et non %2.</translation> + <source>The namespace URI in the name for a computed attribute cannot be %1.</source> + <translation>L'URI de namespace dans le nom d'un attribut calculé ne peut pas être %1.</translation> </message> <message> - <source>Running an XSL-T 1.0 stylesheet with a 2.0 processor.</source> - <translation>Lancement d'une feuille de style XSL-T 1.0 avec un processeur 2.0.</translation> + <source>The name for a computed attribute cannot have the namespace URI %1 with the local name %2.</source> + <translation>Le nom d'un attribut calculé ne peut pas avoir l'URI de namespace %1 avec le nom local %2.</translation> </message> <message> - <source>Unknown XSL-T attribute %1.</source> - <translation>Attribut XSL-T inconnu : %1.</translation> + <source>Type error in cast, expected %1, received %2.</source> + <translation>Erreur de type lors du cast, attendu %1 mais reçu %2.</translation> </message> <message> - <source>Attribute %1 and %2 are mutually exclusive.</source> - <translation>Les attributs %1 et %2 sont mutuellement exclusifs.</translation> + <source>When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed.</source> + <translation>En castant vers %1 ou des types dérivés, la valeur source doit être du même type ou une chaîne. Le type %2 n'est pas autorisé.</translation> </message> <message> - <source>In a simplified stylesheet module, attribute %1 must be present.</source> - <translation>Dans un module de feuille de style simplifié, l'attribut %1 doit être présent.</translation> + <source>No casting is possible with %1 as the target type.</source> + <translation type="obsolete">Aucun cast n'est possible avec %1 comme type de destination.</translation> </message> <message> - <source>If element %1 has no attribute %2, it cannot have attribute %3 or %4.</source> - <translation>Si l'élément %1 n'a pas d'attribut %2, il ne peut pas avoir d'attribut %3 ou %4.</translation> + <source>It is not possible to cast from %1 to %2.</source> + <translation type="obsolete">Il est impossible de caster de %1 en %2.</translation> </message> <message> - <source>Element %1 must have at least one of the attributes %2 or %3.</source> - <translation>L'élement %1 doit avoir au moins un des attributs %2 ou %3.</translation> + <source>Casting to %1 is not possible because it is an abstract type, and can therefore never be instantiated.</source> + <translation type="obsolete">Caster vers %1 est impossible parce que c'est un type abstrait qui ne peut donc être instancié.</translation> </message> <message> - <source>At least one mode must be specified in the %1-attribute on element %2.</source> - <translation>Au moins un mode doit être spécifié dans l'attribut %1 sur l'élément %2.</translation> + <source>It's not possible to cast the value %1 of type %2 to %3</source> + <translation type="obsolete">I lest impossible de caster la valeur %1 de type %2 en %3</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qmaintainingreader.cpp" line="+183"/> - <source>Attribute %1 cannot appear on the element %2. Only the standard attributes can appear.</source> - <translation>L'attribut %1 ne peut pas apparaître sur l'élément %2. Seuls les attributs standard le peuvent.</translation> + <source>Failure when casting from %1 to %2: %3</source> + <translation type="obsolete">Echec en castant de %1 ver %2 : %3</translation> </message> <message> - <location line="+6"/> - <source>Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes.</source> - <translation>L'attribut %1 ne peut pas apparaître sur l'élément %2. Seul %3 est autorisé, ainsi que les attributs standard.</translation> + <source>A comment cannot contain %1</source> + <translation>Un commentaire ne peut pas contenir %1</translation> </message> <message> - <location line="+8"/> - <source>Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes.</source> - <translation>L'attribut %1 ne peut pas apparaître sur l'élément %2. Seuls %3, %4 et les attributs standard le sont.</translation> + <source>A comment cannot end with a %1.</source> + <translation>Un commentaire ne peut pas finir par %1.</translation> </message> <message> - <location line="+9"/> - <source>Attribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes.</source> - <translation>L'attribut %1 ne peut pas apparaître sur l'élément %2. Seul %3 et les attributs standard le sont.</translation> + <source>No comparisons can be done involving the type %1.</source> + <translation type="obsolete">Aucune comparaison ne peut être faite avec le type %1.</translation> </message> <message> - <location line="+13"/> - <source>XSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is.</source> - <translation>Les attributs XSL-T sur des éléments XSL-T doivent être dans le namespace null, et pas dans %1.</translation> + <source>Operator %1 is not available between atomic values of type %2 and %3.</source> + <translation type="obsolete">L'opérateur %1 n'est pas disponible entre valeurs atomiques de type %2 et %3.</translation> </message> <message> - <location line="+12"/> - <source>The attribute %1 must appear on element %2.</source> - <translation>L'attribut %1 doit apparaître sur l'élément %2.</translation> + <source>An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place.</source> + <translation>Un noeuds attribut ne peut être un fils d'un noeuds document. C'est pourquoi l'attribut %1 est mal placé.</translation> </message> <message> - <location line="+8"/> - <source>The element with local name %1 does not exist in XSL-T.</source> - <translation>L'élément avec le nom local %1 n'existe pas dans XSL-T.</translation> + <source>A library module cannot be evaluated directly. It must be imported from a main module.</source> + <translation>Un module de bibliothèque ne peut pas être évalué directement. Il doit être importé d'un module principal.</translation> </message> <message> - <source>Element %1 must come last.</source> - <translation>L'élément %1 doit être le dernier.</translation> + <source>No template by name %1 exists.</source> + <translation>Aucun template nommé %1 n'existe.</translation> </message> <message> - <source>At least one %1-element must occur before %2.</source> - <translation>Au moins un élément %1 doit être placé avant %2.</translation> + <source>A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type.</source> + <translation>Une valeur de type %1 ne peut être un prédicat. Un prédicat doit être de type numérique ou un Effective Boolean Value.</translation> </message> <message> - <source>Only one %1-element can appear.</source> - <translation>Seulement un élément %1 peut apparaître.</translation> + <source>A positional predicate must evaluate to a single numeric value.</source> + <translation>Un prédicat de position doit être évalué en une unique valeur numérique.</translation> </message> <message> - <source>At least one %1-element must occur inside %2.</source> - <translation>Au moins un élément %1 doit apparaître dans %2.</translation> + <source>The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid.</source> + <translation type="obsolete">Le nom de destination dans une instruction de traitement ne peut être %1. %2 est invalide.</translation> </message> <message> - <source>When attribute %1 is present on %2, a sequence constructor cannot be used.</source> - <translation>Quand l'attribut %1 est présent sur %2, un constructeur de séquence ne peut pas être utilisé.</translation> + <source>%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3.</source> + <translation>%1 n'est pas un nom de destination valide dans une instruction de traitement. Ce doit être une valeur %2, par ex. %3.</translation> </message> <message> - <source>Element %1 must have either a %2-attribute or a sequence constructor.</source> - <translation>L'élément %1 doit avoir un attribut %2 ou un constructeur de séquence.</translation> + <source>The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two.</source> + <translation>La dernière étape dans un chemin doit contenir soit des noeuds soit des valeurs atomiques. Cela ne peut pas être un mélange des deux.</translation> </message> <message> - <source>When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor.</source> - <translation>Quand un paramètre est requis, un valeur par défault ne peut pas être fournie par un attribute %1 ou un constructeur de séquence.</translation> + <source>The data of a processing instruction cannot contain the string %1</source> + <translation>Les données d'une instruction de traitement ne peut contenir la chaîne %1</translation> </message> <message> - <source>Element %1 cannot have children.</source> - <translation>L'élément %1 ne peut pas avoir de fils.</translation> + <source>No namespace binding exists for the prefix %1</source> + <translation>Aucun lien de namespace n'existe pour le préfixe %1</translation> </message> <message> - <source>Element %1 cannot have a sequence constructor.</source> - <translation>L'élément %1 ne peut pas avoir un constructuer de séquence.</translation> + <source>No namespace binding exists for the prefix %1 in %2</source> + <translation>Aucun lien de namespace n'existe pour le préfixe %1 dans %2</translation> </message> <message> - <source>The attribute %1 cannot appear on %2, when it is a child of %3.</source> - <translation>L'attribut %1 ne peut pas apparaître sur %2 quand il est fils de %3.</translation> + <source>%1 is an invalid %2</source> + <translation>%1 est un ivalide %2</translation> </message> - <message> - <source>A parameter in a function cannot be declared to be a tunnel.</source> - <translation>Un paramètre de fonction ne peut pas être déclaré comme un tunnel.</translation> + <message numerus="yes"> + <source>%1 takes at most %n argument(s). %2 is therefore invalid.</source> + <translation> + <numerusform>%1 prend au maximum %n argument. %2 est donc invalide.</numerusform> + <numerusform>%1 prend au maximum %n arguments. %2 est donc invalide.</numerusform> + </translation> + </message> + <message numerus="yes"> + <source>%1 requires at least %n argument(s). %2 is therefore invalid.</source> + <translation> + <numerusform>%1 requiert au moins %n argument. %2 est donc invalide.</numerusform> + <numerusform>%1 requiert au moins %n arguments. %2 est donc invalide.</numerusform> + </translation> </message> <message> - <source>This processor is not Schema-aware and therefore %1 cannot be used.</source> - <translation>Ce processeur ne comprend pas les Schemas. C'est pourquoi %1 ne peut pas être utilisé.</translation> + <source>The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration.</source> + <translation>Le premier argument de %1 ne peut être du type %2. Il doit être de type numérique, xs:yearMonthDuration ou xs:dayTimeDuration.</translation> </message> <message> - <source>Top level stylesheet elements must be in a non-null namespace, which %1 isn't.</source> - <translation>Les élément d'une feuille de style de haut niveau doivent être dans un namespace non nul; %1 ne l'est pas.</translation> + <source>The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5.</source> + <translation>Le premier argument de %1 ne peut être du type %2. Il doit être de type %3, %4 ou %5.</translation> </message> <message> - <source>The value for attribute %1 on element %2 must either be %3 or %4, not %5.</source> - <translation>La valeur de l'attribut %1 de l'élement %2 doit être %3 ou %4, et pas %5.</translation> + <source>The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5.</source> + <translation>Le deuxième argument de %1 ne peut être du type %2. Il doit être de type %3, %4 ou %5.</translation> </message> <message> - <source>Attribute %1 cannot have the value %2.</source> - <translation>L'attribut %1 ne peut avoir la valeur %2.</translation> + <source>%1 is not a valid XML 1.0 character.</source> + <translation>%1 n'est pas un caractère XML 1.0 valide.</translation> </message> <message> - <source>The attribute %1 can only appear on the first %2 element.</source> - <translation>L'attribute %1 peut seulement apparaître sur le premier élément %2.</translation> + <source>The first argument to %1 cannot be of type %2.</source> + <translation type="obsolete">Le premier argument de %1 ne peut être du type %2.</translation> </message> <message> - <source>At least one %1 element must appear as child of %2.</source> - <translation>Au moins un élément %1 doit apparaître comme fils de %2.</translation> + <source>If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same.</source> + <translation>Si les deux valeurs ont des décalages de zone, elle doivent avoir le même. %1 et %2 sont différents.</translation> </message> <message> - <source>A template with name %1 has already been declared.</source> - <translation>Un template nommé %1 a déjà été déclaré.</translation> + <source>%1 was called.</source> + <translation>%1 a été appelé.</translation> </message> <message> - <source>The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid.</source> - <translation>Le nom de destination dans une instruction de traitement ne peut être %1. %2 est invalide.</translation> + <source>%1 must be followed by %2 or %3, not at the end of the replacement string.</source> + <translation>%1 doit être suivi par %2 ou %3, et non à la fin de la chaîne de remplacement.</translation> </message> <message> - <source>No variable with name %1 exists</source> - <translation>Aucune variable nommée %1 n'existe</translation> + <source>In the replacement string, %1 must be followed by at least one digit when not escaped.</source> + <translation>Dans la chaîne de remplacement, %1 doit être suivi par au moins un chiffre s'il n'est pas échappé.</translation> </message> <message> - <source>The value of attribute %1 must be of type %2, which %3 isn't.</source> - <translation>La valeur de l'attribut %1 doit être du type %2, %3 n'en est pas.</translation> + <source>In the replacement string, %1 can only be used to escape itself or %2, not %3</source> + <translation>Dans la chaîne de remplacement, %1 peut seulement être utilisé pour échapper lui-même ou %2 mais pas %3</translation> </message> <message> - <source>The prefix %1 cannot be bound. By default, it is already bound to the namespace %2.</source> - <translation>Le préfixe %1 ne peut être lié. Par défault, il est déjà lié au namespace %2.</translation> + <source>%1 matches newline characters</source> + <translation>%1 correspond à des caractères de saut de ligne</translation> </message> <message> - <source>A variable with name %1 has already been declared.</source> - <translation>Une variable nommée %1 a déjà été déclarée.</translation> + <source>%1 and %2 match the start and end of a line.</source> + <translation>%1 et %2 correspondent au début et à la fin d'une ligne.</translation> </message> <message> - <source>No value is available for the external variable with name %1.</source> - <translation>Aucune valeur n'est disponible pour la variable externe %1.</translation> + <source>Matches are case insensitive</source> + <translation>Les correspondances ne sont pas sensibles à la casse</translation> </message> <message> - <source>An argument with name %1 has already been declared. Every argument name must be unique.</source> - <translation>Un argument nommé %1 a déjà été déclaré. Chaque nom d'argument doit être unique.</translation> + <source>Whitespace characters are removed, except when they appear in character classes</source> + <translation>Les blancs sont supprimés excepté quand ils apparaissent dans les classes de caractère</translation> + </message> + <message> + <source>%1 is an invalid regular expression pattern: %2</source> + <translation>%1 est un modèle d'expression régulière invalide: %2</translation> </message> <message> - <source>No function with name %1 is available.</source> - <translation>Aucune fonction nommée %1 n'est disponible.</translation> + <source>%1 is an invalid flag for regular expressions. Valid flags are:</source> + <translation>%1 est un flag invalide pour des expressions régulières. Les flags valides sont :</translation> </message> <message> - <source>W3C XML Schema identity constraint selector</source> - <translation type="unfinished"></translation> + <source>If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified.</source> + <translation>Si le premier argument est une sequence vide ou un chaîne vide (sans namespace), un préfixe ne peut être spécifié. Le préfixe %1 a été spécifié.</translation> </message> <message> - <source>W3C XML Schema identity constraint field</source> - <translation type="unfinished"></translation> + <source>It will not be possible to retrieve %1.</source> + <translation>Il sera impossible de récupérer %1.</translation> </message> <message> - <source>A construct was encountered which is disallowed in the current language(%1).</source> - <translation type="unfinished"></translation> + <source>The root node of the second argument to function %1 must be a document node. %2 is not a document node.</source> + <translation>Le noeuds racine du deuxième argument à la fonction %1 doit être un noeuds document. %2 n'est pas un document.</translation> </message> <message> - <source>An attribute with name %1 has already appeared on this element.</source> - <translation>Un attribute nommé %1 existe déjà pour cet élément.</translation> + <source>The default collection is undefined</source> + <translation>I'l n'y a pas de collection par défaut</translation> </message> <message> - <source>%1 has inheritance loop in its base type %2.</source> - <translation type="unfinished"></translation> + <source>%1 cannot be retrieved</source> + <translation>%1 ne peut pas être récupéré</translation> </message> <message> - <source>Circular inheritance of base type %1.</source> - <translation type="unfinished"></translation> + <source>The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization).</source> + <translation>Le forme de normalisation %1 n'est pas supportée. Les formes supportées sont %2, %3, %4 et %5, et aucun, ie. une chaîne vide (pas de normalisation).</translation> </message> <message> - <source>Circular inheritance of union %1.</source> - <translation type="unfinished"></translation> + <source>A zone offset must be in the range %1..%2 inclusive. %3 is out of range.</source> + <translation>Un décalage de zone doit être dans l'intervalle %1..%2 inclus. %3 est hors de l'intervalle.</translation> </message> <message> - <source>%1 is not allowed to derive from %2 by restriction as the latter defines it as final.</source> - <translation type="unfinished"></translation> + <source>%1 is not an whole number of minutes.</source> + <translation type="obsolete">%1 n'est pas un nombre complet de minutes.</translation> </message> <message> - <source>%1 is not allowed to derive from %2 by extension as the latter defines it as final.</source> - <translation type="unfinished"></translation> + <source>Required cardinality is %1; got cardinality %2.</source> + <translation>La cardinalité requise est %1; reçu %2.</translation> </message> <message> - <source>Base type of simple type %1 cannot be complex type %2.</source> - <translation type="unfinished"></translation> + <source>The item %1 did not match the required type %2.</source> + <translation>L'item %1 ne correspond pas au type requis %2.</translation> </message> <message> - <source>Simple type %1 cannot have direct base type %2.</source> - <translation type="unfinished"></translation> + <source>%1 is an unknown schema type.</source> + <translation>%1 est un type de schema inconnu.</translation> </message> <message> - <source>Simple type %1 is not allowed to have base type %2.</source> - <translation type="unfinished"></translation> + <source>Only one %1 declaration can occur in the query prolog.</source> + <translation>Seulement une déclaration %1 peut intervenir lors du prologue de la requête.</translation> </message> <message> - <source>Simple type %1 can only have simple atomic type as base type.</source> - <translation type="unfinished"></translation> + <source>The initialization of variable %1 depends on itself</source> + <translation>L'initialisation de la variable %1 dépend d'elle-même</translation> </message> <message> - <source>Simple type %1 cannot derive from %2 as the latter defines restriction as final.</source> - <translation type="unfinished"></translation> + <source>No variable by name %1 exists</source> + <translation type="obsolete">Aucun variable nommée %1 existe</translation> </message> <message> - <source>Variety of item type of %1 must be either atomic or union.</source> - <translation type="unfinished"></translation> + <source>The variable %1 is unused</source> + <translation>La variable %1 est inutilisée</translation> </message> <message> - <source>Variety of member types of %1 must be atomic.</source> - <translation type="unfinished"></translation> + <source>Version %1 is not supported. The supported XQuery version is 1.0.</source> + <translation>La version %1 n'est pas supportée. La version de XQuery supportée est 1.0.</translation> </message> <message> - <source>%1 is not allowed to derive from %2 by list as the latter defines it as final.</source> - <translation type="unfinished"></translation> + <source>The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2.</source> + <translation>L'encodage %1 est invalide. Il doit contenir uniquement des caractères latins, sans blanc et doit être conforme à l'expression régulière %2.</translation> </message> <message> - <source>Simple type %1 is only allowed to have %2 facet.</source> - <translation type="unfinished"></translation> + <source>No function with signature %1 is available</source> + <translation>Aucune fonction avec la signature %1 n'est disponible</translation> </message> <message> - <source>Base type of simple type %1 must have variety of type list.</source> - <translation type="unfinished"></translation> + <source>A default namespace declaration must occur before function, variable, and option declarations.</source> + <translation>Un déclaration de namespace par défaut doit être placée avant toute fonction, variable ou declaration d'option.</translation> </message> <message> - <source>Base type of simple type %1 has defined derivation by restriction as final.</source> - <translation type="unfinished"></translation> + <source>Namespace declarations must occur before function, variable, and option declarations.</source> + <translation>Les declarations de namespace doivent être placées avant tout fonction, variable ou déclaration d'option.</translation> </message> <message> - <source>Item type of base type does not match item type of %1.</source> - <translation type="unfinished"></translation> + <source>Module imports must occur before function, variable, and option declarations.</source> + <translation>Les imports de module doivent être placés avant tout fonction, variable ou déclaration d'option.</translation> </message> <message> - <source>Simple type %1 contains not allowed facet type %2.</source> - <translation type="unfinished"></translation> + <source>It is not possible to redeclare prefix %1.</source> + <translation>Il est impossible de redéclarer le préfixe %1.</translation> </message> <message> - <source>%1 is not allowed to derive from %2 by union as the latter defines it as final.</source> - <translation type="unfinished"></translation> + <source>Only the prefix %1 can be declared to bind the namespace %2. By default, it is already bound to the prefix %1.</source> + <translation type="obsolete">Seul le préfixe %1 peut être déclaré pour lié le namespace %2. Par défaut, il est déjà lié au préfixe %1.</translation> </message> <message> - <source>%1 is not allowed to have any facets.</source> - <translation type="unfinished"></translation> + <source>Prefix %1 is already declared in the prolog.</source> + <translation>Le préfixe %1 est déjà déclaré dans le prologue.</translation> </message> <message> - <source>Base type %1 of simple type %2 must have variety of union.</source> - <translation type="unfinished"></translation> + <source>The name of an option must have a prefix. There is no default namespace for options.</source> + <translation>Le nom d'une option doit avoir un préfixe. Il n'y a pas de namespace par défaut pour les options.</translation> </message> <message> - <source>Base type %1 of simple type %2 is not allowed to have restriction in %3 attribute.</source> - <translation type="unfinished"></translation> + <source>The Schema Import feature is not supported, and therefore %1 declarations cannot occur.</source> + <translation>La fonctionnalité "Schema Import" n'est pas supportée et les déclarations %1 ne peuvent donc intervenir.</translation> </message> <message> - <source>Member type %1 cannot be derived from member type %2 of %3's base type %4.</source> - <translation type="unfinished"></translation> + <source>The target namespace of a %1 cannot be empty.</source> + <translation>Le namespace cible d'un %1 ne peut être vide.</translation> </message> <message> - <source>Derivation method of %1 must be extension because the base type %2 is a simple type.</source> - <translation type="unfinished"></translation> + <source>The module import feature is not supported</source> + <translation>La fonctionnalité "module import" n'est pas supportée</translation> </message> <message> - <source>Complex type %1 has duplicated element %2 in its content model.</source> - <translation type="unfinished"></translation> + <source>A variable by name %1 has already been declared in the prolog.</source> + <translation type="obsolete">Une variable du nom %1 a déjà été déclarée dans le prologue.</translation> </message> <message> - <source>Complex type %1 has non-deterministic content.</source> - <translation type="unfinished"></translation> + <source>No value is available for the external variable by name %1.</source> + <translation type="obsolete">Aucune valeur n'est disponible pour la variable externe %1.</translation> </message> <message> - <source>Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3.</source> - <translation type="unfinished"></translation> + <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="obsolete">Le namespace d'une fonction définie par l'utilisateur ne peut être vide (essayez le préfixe prédéfini %1 qui existe pour ce genre de cas)</translation> </message> <message> - <source>Content model of complex type %1 is not a valid extension of content model of %2.</source> - <translation type="unfinished"></translation> + <source>A construct was encountered which only is allowed in XQuery.</source> + <translation type="obsolete">Construct n'est autorisé que dans XQuery.</translation> </message> <message> - <source>Complex type %1 must have simple content.</source> - <translation type="unfinished"></translation> + <source>A template by name %1 has already been declared.</source> + <translation type="obsolete">Un template nommé %1 a déjà été déclaré.</translation> </message> <message> - <source>Complex type %1 must have the same simple type as its base class %2.</source> - <translation type="unfinished"></translation> + <source>The keyword %1 cannot occur with any other mode name.</source> + <translation>Le mot-clé %1 ne peut pas apparaître avec un autre nom de mode.</translation> </message> <message> - <source>Complex type %1 cannot be derived from base type %2%3.</source> - <translation type="unfinished"></translation> + <source>The value of attribute %1 must of type %2, which %3 isn't.</source> + <translation type="obsolete">La valeur de l'attribut %1 doit être du type %2, %3 n'en est pas.</translation> </message> <message> - <source>Attributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3.</source> - <translation type="unfinished"></translation> + <source>The prefix %1 can not be bound. By default, it is already bound to the namespace %2.</source> + <translation type="obsolete">Le préfixe %1 ne peut être lié. Par défault, il est déjà lié au namespace %2.</translation> </message> <message> - <source>Complex type %1 with simple content cannot be derived from complex base type %2.</source> - <translation type="unfinished"></translation> + <source>A variable by name %1 has already been declared.</source> + <translation type="obsolete">Une variable nommée %1 a déjà été déclarée.</translation> </message> <message> - <source>Item type of simple type %1 cannot be a complex type.</source> - <translation type="unfinished"></translation> + <source>A stylesheet function must have a prefixed name.</source> + <translation>Une fonction de feuille de style doit avoir un nom préfixé.</translation> </message> <message> - <source>Member type of simple type %1 cannot be a complex type.</source> - <translation type="unfinished"></translation> + <source>The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this)</source> + <translation>Le namespace d'une fonction utilisateur ne peut pas être vide (essayez le préfixe prédéfini %1 qui existe pour ce genre de cas)</translation> </message> <message> - <source>%1 is not allowed to have a member type with the same name as itself.</source> - <translation type="unfinished"></translation> + <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>Le namespace %1 est réservé; c'est pourquoi les fonctions définies par l'utilisateur ne peuvent l'utiliser. Essayez le préfixe prédéfini %2 qui existe pour ces cas.</translation> </message> <message> - <source>%1 facet collides with %2 facet.</source> - <translation type="unfinished"></translation> + <source>The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2</source> + <translation>Le namespace d'une fonction utilisateur dans un module de bibliothèque doit être équivalent au namespace du module. En d'autres mots, il devrait être %1 au lieu de %2</translation> </message> <message> - <source>%1 facet must have the same value as %2 facet of base type.</source> - <translation type="unfinished"></translation> + <source>A function already exists with the signature %1.</source> + <translation>Une fonction avec la signature %1 existe déjà.</translation> </message> <message> - <source>%1 facet must be equal or greater than %2 facet of base type.</source> - <translation type="unfinished"></translation> + <source>No external functions are supported. All supported functions can be used directly, without first declaring them as external</source> + <translation>Les fonctions externes ne sont pas supportées. Toutes les fonctions supportées peuvent êter utilisées directement sans les déclarer préalablement comme externes</translation> </message> <message> - <source>%1 facet must be less than or equal to %2 facet of base type.</source> - <translation type="unfinished"></translation> + <source>An argument by name %1 has already been declared. Every argument name must be unique.</source> + <translation type="obsolete">Un argument nommé %1 a déjà été déclaré. Chaque nom d'argument doit être unique.</translation> </message> <message> - <source>%1 facet contains invalid regular expression</source> - <translation type="unfinished"></translation> + <source>When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal.</source> + <translation>Quand la fonction %1 est utilisée pour vérifier la correspondance dans un pattern, l'argument doit être une référence de variable ou une chaîne de caractères.</translation> </message> <message> - <source>Unknown notation %1 used in %2 facet.</source> - <translation type="unfinished"></translation> + <source>In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching.</source> + <translation>Dans un pattern XSL-T, le premier argument à la fonction %1 doit être une chaîne de caractères quand utilisé pour correspondance.</translation> </message> <message> - <source>%1 facet contains invalid value %2: %3.</source> - <translation type="unfinished"></translation> + <source>In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching.</source> + <translation>Dans un pattern XSL-T, le premier argument à la fonction %1 doit être un litéral ou une référence de variable.</translation> </message> <message> - <source>%1 facet cannot be %2 or %3 if %4 facet of base type is %5.</source> - <translation type="unfinished"></translation> + <source>In an XSL-T pattern, function %1 cannot have a third argument.</source> + <translation>Dans un pattern XSL-T, la fonction %1 ne peut pas avoir de 3e argument.</translation> </message> <message> - <source>%1 facet cannot be %2 if %3 facet of base type is %4.</source> - <translation type="unfinished"></translation> + <source>In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching.</source> + <translation>Dans un pattern XSL-T, seules les fonctions %1 et %2 (pas %3) peuvent être utilisées pour le matching.</translation> </message> <message> - <source>%1 facet must be less than or equal to %2 facet.</source> - <translation type="unfinished"></translation> + <source>In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can.</source> + <translation>Dans un pattern XSL-T, l'axe %1 ne peut pas être utilisé, seulement %2 ou %3 le peuvent.</translation> </message> <message> - <source>%1 facet must be less than %2 facet of base type.</source> - <translation type="unfinished"></translation> + <source>%1 is an invalid template mode name.</source> + <translation>%1 est un nom de mode de template invalide.</translation> </message> <message> - <source>%1 facet and %2 facet cannot appear together.</source> - <translation type="unfinished"></translation> + <source>The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide.</source> + <translation>Le nom d'une variable liée dans un expression for doit être different de la variable positionnelle. Les deux variables appelées %1 sont en conflit.</translation> </message> <message> - <source>%1 facet must be greater than %2 facet of base type.</source> - <translation type="unfinished"></translation> + <source>The Schema Validation Feature is not supported. Hence, %1-expressions may not be used.</source> + <translation>La fonctionnalité "Schema Validation" n'est pas supportée. Les expressions %1 ne seront pas utilisées.</translation> </message> <message> - <source>%1 facet must be less than %2 facet.</source> - <translation type="unfinished"></translation> + <source>None of the pragma expressions are supported. Therefore, a fallback expression must be present</source> + <translation>Aucune des expressions pragma n'est supportée. Une expression par défault doit être présente</translation> </message> <message> - <source>%1 facet must be greater than or equal to %2 facet of base type.</source> - <translation type="unfinished"></translation> + <source>Each name of a template parameter must be unique; %1 is duplicated.</source> + <translation>Chaque nom d'un paramètre ede template doit être unique; %1 est dupliqué.</translation> </message> <message> - <source>Simple type contains not allowed facet %1.</source> - <translation type="unfinished"></translation> + <source>The %1-axis is unsupported in XQuery</source> + <translation>L'axe %1 n'est pas supporté dans XQuery</translation> </message> <message> - <source>%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list.</source> - <translation type="unfinished"></translation> + <source>%1 is not a valid name for a processing-instruction.</source> + <translation>%1 n'est pas un nom valide pour une instruction de traitement.</translation> </message> <message> - <source>Only %1 and %2 facets are allowed when derived by union.</source> - <translation type="unfinished"></translation> + <source>%1 is not a valid numeric literal.</source> + <translation>%1 n'est pas une valeur numérique valide.</translation> </message> <message> - <source>%1 contains %2 facet with invalid data: %3.</source> - <translation type="unfinished"></translation> + <source>No function by name %1 is available.</source> + <translation type="obsolete">La fonction %1 n'est pas disponible.</translation> </message> <message> - <source>Attribute group %1 contains attribute %2 twice.</source> - <translation type="unfinished"></translation> + <source>The namespace URI cannot be the empty string when binding to a prefix, %1.</source> + <translation>L'URI de namespace ne peut être une chaîne vide quand on le lie à un préfixe, %1.</translation> </message> <message> - <source>Attribute group %1 contains two different attributes that both have types derived from %2.</source> - <translation type="unfinished"></translation> + <source>%1 is an invalid namespace URI.</source> + <translation>%1 est un URI de namespace invalide.</translation> </message> <message> - <source>Attribute group %1 contains attribute %2 that has value constraint but type that inherits from %3.</source> - <translation type="unfinished"></translation> + <source>It is not possible to bind to the prefix %1</source> + <translation>Il est impossible de se lier au préfixe %1</translation> </message> <message> - <source>Complex type %1 contains attribute %2 twice.</source> - <translation type="unfinished"></translation> + <source>Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared).</source> + <translation>Le namespace %1 peut seulement être lié à %2 (et doit être pré-déclaré).</translation> </message> <message> - <source>Complex type %1 contains two different attributes that both have types derived from %2.</source> - <translation type="unfinished"></translation> + <source>Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared).</source> + <translation>Le préfixe %1 peut seulement être lié à %2 (et doit être prédéclaré).</translation> </message> <message> - <source>Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3.</source> - <translation type="unfinished"></translation> + <source>Two namespace declaration attributes have the same name: %1.</source> + <translation>Deux attributs de déclarations de namespace ont le même nom : %1.</translation> </message> <message> - <source>Element %1 is not allowed to have a value constraint if its base type is complex.</source> - <translation type="unfinished"></translation> + <source>The namespace URI must be a constant and cannot use enclosed expressions.</source> + <translation>L'URI de namespace doit être une constante et ne peut contenir d'expressions.</translation> </message> <message> - <source>Element %1 is not allowed to have a value constraint if its type is derived from %2.</source> - <translation type="unfinished"></translation> + <source>An attribute by name %1 has already appeared on this element.</source> + <translation type="obsolete">Un attribute nommé %1 existe déjà pour cet élément.</translation> </message> <message> - <source>Value constraint of element %1 is not of elements type: %2.</source> - <translation type="unfinished"></translation> + <source>A direct element constructor is not well-formed. %1 is ended with %2.</source> + <translation>Un constructeur direct d'élément est mal-formé. %1 est terminé par %2.</translation> </message> <message> - <source>Element %1 is not allowed to have substitution group affiliation as it is no global element.</source> - <translation type="unfinished"></translation> + <source>The name %1 does not refer to any schema type.</source> + <translation>Le nom %1 ne se réfère à aucun type de schema.</translation> </message> <message> - <source>Type of element %1 cannot be derived from type of substitution group affiliation.</source> - <translation type="unfinished"></translation> + <source>%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works.</source> + <translation>%1 est une type complexe. Caster vers des types complexes n'est pas possible. Cependant, caster vers des types atomiques comme %2 marche.</translation> </message> <message> - <source>Value constraint of attribute %1 is not of attributes type: %2.</source> - <translation type="unfinished"></translation> + <source>%1 is not an atomic type. Casting is only possible to atomic types.</source> + <translation>%1 n'est pas un type atomique. Il est uniquement possible de caster vers des types atomiques.</translation> </message> <message> - <source>Attribute %1 has value constraint but has type derived from %2.</source> - <translation type="unfinished"></translation> + <source>%1 is not a valid name for a processing-instruction. Therefore this name test will never match.</source> + <translation type="obsolete">%1 n'est pas un nom valide pour une instruction de traitement. C'est pourquoi ce test de nom ne réussira jamais.</translation> </message> <message> - <source>%1 attribute in derived complex type must be %2 like in base type.</source> - <translation type="unfinished"></translation> + <source>%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported.</source> + <translation>%1 n'est pas dans les déclaration d'attribut in-scope. La fonctionnalité d'inport de schéma n'est pas supportée.</translation> </message> <message> - <source>Attribute %1 in derived complex type must have %2 value constraint like in base type.</source> - <translation type="unfinished"></translation> + <source>The name of an extension expression must be in a namespace.</source> + <translation>Le nom d'une expression d'extension doit être dans un namespace.</translation> </message> <message> - <source>Attribute %1 in derived complex type must have the same %2 value constraint like in base type.</source> - <translation type="unfinished"></translation> + <source>empty</source> + <translation>vide</translation> </message> <message> - <source>Attribute %1 in derived complex type must have %2 value constraint.</source> - <translation type="unfinished"></translation> + <source>zero or one</source> + <translation>zéro ou un</translation> </message> <message> - <source>processContent of base wildcard must be weaker than derived wildcard.</source> - <translation type="unfinished"></translation> + <source>exactly one</source> + <translation>exactement un</translation> </message> <message> - <source>Element %1 exists twice with different types.</source> - <translation type="unfinished"></translation> + <source>one or more</source> + <translation>un ou plus</translation> </message> <message> - <source>Particle contains non-deterministic wildcards.</source> - <translation type="unfinished"></translation> + <source>zero or more</source> + <translation>zéro ou plus</translation> </message> <message> - <source>Base attribute %1 is required but derived attribute is not.</source> - <translation type="unfinished"></translation> + <source>Required type is %1, but %2 was found.</source> + <translation>Le type requis est %1, mais %2 a été reçu.</translation> </message> <message> - <source>Type of derived attribute %1 cannot be validly derived from type of base attribute.</source> - <translation type="unfinished"></translation> + <source>Promoting %1 to %2 may cause loss of precision.</source> + <translation>La Promotion de %1 vers %2 peut causer un perte de précision.</translation> </message> <message> - <source>Value constraint of derived attribute %1 does not match value constraint of base attribute.</source> - <translation type="unfinished"></translation> + <source>The focus is undefined.</source> + <translation>Le focus est indéfini.</translation> </message> <message> - <source>Derived attribute %1 does not exist in the base definition.</source> - <translation type="unfinished"></translation> + <source>It's not possible to add attributes after any other kind of node.</source> + <translation>Il est impossible d'ajouter des attributs après un autre type de noeuds.</translation> </message> <message> - <source>Derived attribute %1 does not match the wildcard in the base definition.</source> - <translation type="unfinished"></translation> + <source>An attribute by name %1 has already been created.</source> + <translation>Un attribute de nom %1 a déjà été créé.</translation> </message> <message> - <source>Base attribute %1 is required but missing in derived definition.</source> - <translation type="unfinished"></translation> + <source>Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported.</source> + <translation>Seule le Unicode CodepointCollation est supporté (%1), %2 n'est pas supporté.</translation> </message> <message> - <source>Derived definition contains an %1 element that does not exists in the base definition</source> - <translation type="unfinished"></translation> + <source>%1 is not a whole number of minutes.</source> + <translation>%1 n'est pas un nombre entier de minutes.</translation> </message> <message> - <source>Derived wildcard is not a subset of the base wildcard.</source> - <translation type="unfinished"></translation> + <source>Attribute %1 can't be serialized because it appears at the top level.</source> + <translation>L'attribut %1 ne peut pas être sérialisé car il apparaît à la racine.</translation> </message> <message> - <source>%1 of derived wildcard is not a valid restriction of %2 of base wildcard</source> - <translation type="unfinished"></translation> + <source>%1 is an unsupported encoding.</source> + <translation>%1 est un encodage non supporté.</translation> </message> <message> - <source>Attribute %1 from base type is missing in derived type.</source> - <translation type="unfinished"></translation> + <source>%1 contains octets which are disallowed in the requested encoding %2.</source> + <translation>%1 contient 'octets', qui n'est pas autorisé pour l'encodage %2.</translation> </message> <message> - <source>Type of derived attribute %1 differs from type of base attribute.</source> - <translation type="unfinished"></translation> + <source>The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character.</source> + <translation>Le codepoint %1 dans %2 et utilisant l'encodage %3 est un caractère XML invalide.</translation> </message> <message> - <source>Base definition contains an %1 element that is missing in the derived definition</source> - <translation type="unfinished"></translation> + <source>Ambiguous rule match.</source> + <translation>Corresonpdance aux règles ambigüe.</translation> </message> <message> - <source>%1 references unknown %2 or %3 element %4.</source> - <translation type="unfinished"></translation> + <source>In a namespace constructor, the value for a namespace value cannot be an empty string.</source> + <translation type="obsolete">Dans un cosntructeur de namespace, la valeur pour un namespace ne peut pas être une chaîne vide.</translation> </message> <message> - <source>%1 references identity constraint %2 that is no %3 or %4 element.</source> - <translation type="unfinished"></translation> + <source>In a namespace constructor, the value for a namespace cannot be an empty string.</source> + <translation>Dans un constructeur d'espace de noms, la valeur pour un espace de noms ne peut pas être une chaîne vide.</translation> </message> <message> - <source>%1 has a different number of fields from the identity constraint %2 that it references.</source> - <translation type="unfinished"></translation> + <source>The prefix must be a valid %1, which %2 is not.</source> + <translation>Le préfixe doit être un valide %1; %2 n'e l'est pas.</translation> </message> <message> - <source>Base type %1 of %2 element cannot be resolved.</source> - <translation type="unfinished"></translation> + <source>The prefix %1 cannot be bound.</source> + <translation>Le préfixe %1 ne peut être lié.</translation> </message> <message> - <source>Item type %1 of %2 element cannot be resolved.</source> - <translation type="unfinished"></translation> + <source>Only the prefix %1 can be bound to %2 and vice versa.</source> + <translation>Seul le préfixe %1 peut être lié à %2, et vice versa.</translation> </message> <message> - <source>Member type %1 of %2 element cannot be resolved.</source> - <translation type="unfinished"></translation> + <source>Circularity detected</source> + <translation type="obsolete">Circularité détectée</translation> </message> <message> - <source>Type %1 of %2 element cannot be resolved.</source> - <translation type="unfinished"></translation> + <source>The parameter %1 is required, but no corresponding %2 is supplied.</source> + <translation>Le paramètre %1 est requis, mais aucun %2 correspondant n'est fourni.</translation> </message> <message> - <source>Base type %1 of complex type cannot be resolved.</source> - <translation type="unfinished"></translation> + <source>The parameter %1 is passed, but no corresponding %2 exists.</source> + <translation>Le paramètre %1 est passé mais aucun %2 correspondant n'existe.</translation> </message> <message> - <source>%1 cannot have complex base type that has a %2.</source> - <translation type="unfinished"></translation> + <source>The URI cannot have a fragment</source> + <translation>L'URI ne peut pas avoir de fragments</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 type="unfinished"></translation> + <source>Element %1 is not allowed at this location.</source> + <translation>L'élément %1 n'est pas autorisé à cet emplacement.</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> - <translation type="unfinished"></translation> + <source>Text nodes are not allowed at this location.</source> + <translation>Les noeuds de texte ne sont pas autorisés à cet emplacement.</translation> </message> <message> - <source>Type of %1 element must be a simple type, %2 is not.</source> - <translation type="unfinished"></translation> + <source>Parse error: %1</source> + <translation>Erreur: %1</translation> </message> <message> - <source>Substitution group %1 of %2 element cannot be resolved.</source> - <translation type="unfinished"></translation> + <source>The value of the XSL-T version attribute must be a value of type %1, which %2 isn't.</source> + <translation>La valeur de l'attribut de version XSL-T doit être du type %1, et non %2.</translation> </message> <message> - <source>Substitution group %1 has circular definition.</source> - <translation type="unfinished"></translation> + <source>Running an XSL-T 1.0 stylesheet with a 2.0 processor.</source> + <translation>Lancement d'une feuille de style XSL-T 1.0 avec un processeur 2.0.</translation> </message> <message> - <source>Duplicated element names %1 in %2 element.</source> - <translation type="unfinished"></translation> + <source>Unknown XSL-T attribute %1.</source> + <translation>Attribut XSL-T inconnu : %1.</translation> </message> <message> - <source>Reference %1 of %2 element cannot be resolved.</source> - <translation type="unfinished"></translation> + <source>Attribute %1 and %2 are mutually exclusive.</source> + <translation>Les attributs %1 et %2 sont mutuellement exclusifs.</translation> </message> <message> - <source>Circular group reference for %1.</source> - <translation type="unfinished"></translation> + <source>In a simplified stylesheet module, attribute %1 must be present.</source> + <translation>Dans un module de feuille de style simplifié, l'attribut %1 doit être présent.</translation> </message> <message> - <source>%1 element is not allowed in this scope</source> - <translation type="unfinished"></translation> + <source>If element %1 has no attribute %2, it cannot have attribute %3 or %4.</source> + <translation>Si l'élément %1 n'a pas d'attribut %2, il ne peut pas avoir d'attribut %3 ou %4.</translation> </message> <message> - <source>%1 element cannot have %2 attribute with value other than %3.</source> - <translation type="unfinished"></translation> + <source>Element %1 must have at least one of the attributes %2 or %3.</source> + <translation>L'élement %1 doit avoir au moins un des attributs %2 ou %3.</translation> </message> <message> - <source>%1 element cannot have %2 attribute with value other than %3 or %4.</source> - <translation type="unfinished"></translation> + <source>At least one mode must be specified in the %1-attribute on element %2.</source> + <translation>Au moins un mode doit être spécifié dans l'attribut %1 sur l'élément %2.</translation> </message> <message> - <source>%1 or %2 attribute of reference %3 does not match with the attribute declaration %4.</source> - <translation type="unfinished"></translation> + <source>Attribute %1 cannot appear on the element %2. Only the standard attributes can appear.</source> + <translation type="obsolete">L'attribut %1 ne peut pas apparaître sur l'élément %2. Seuls les attributs standard le peuvent.</translation> </message> <message> - <source>Attribute group %1 has circular reference.</source> - <translation type="unfinished"></translation> + <source>Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes.</source> + <translation type="obsolete">L'attribut %1 ne peut pas apparaître sur l'élément %2. Seul %3 est autorisé, ainsi que les attributs standard.</translation> </message> <message> - <source>%1 attribute in %2 must have %3 use like in base type %4.</source> - <translation type="unfinished"></translation> + <source>Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes.</source> + <translation type="obsolete">L'attribut %1 ne peut pas apparaître sur l'élément %2. Seuls %3, %4 et les attributs standard le sont.</translation> </message> <message> - <source>Attribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2.</source> - <translation type="unfinished"></translation> + <source>Attribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes.</source> + <translation type="obsolete">L'attribut %1 ne peut pas apparaître sur l'élément %2. Seul %3 et les attributs standard le sont.</translation> </message> <message> - <source>%1 has attribute wildcard but its base type %2 has not.</source> - <translation type="unfinished"></translation> + <source>XSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is.</source> + <translation type="obsolete">Les attributs XSL-T sur des éléments XSL-T doivent être dans le namespace null, et pas dans %1.</translation> </message> <message> - <source>Union of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible.</source> - <translation type="unfinished"></translation> + <source>The attribute %1 must appear on element %2.</source> + <translation type="obsolete">L'attribut %1 doit apparaître sur l'élément %2.</translation> </message> <message> - <source>Enumeration facet contains invalid content: {%1} is not a value of type %2.</source> - <translation type="unfinished"></translation> + <source>The element with local name %1 does not exist in XSL-T.</source> + <translation type="obsolete">L'élément avec le nom local %1 n'existe pas dans XSL-T.</translation> </message> <message> - <source>Namespace prefix of qualified name %1 is not defined.</source> - <translation type="unfinished"></translation> + <source>Element %1 must come last.</source> + <translation>L'élément %1 doit être le dernier.</translation> </message> <message> - <source>%1 element %2 is not a valid restriction of the %3 element it redefines: %4.</source> - <translation type="unfinished"></translation> + <source>At least one %1-element must occur before %2.</source> + <translation>Au moins un élément %1 doit être placé avant %2.</translation> </message> <message> - <source>Empty particle cannot be derived from non-empty particle.</source> - <translation type="unfinished"></translation> + <source>Only one %1-element can appear.</source> + <translation>Seulement un élément %1 peut apparaître.</translation> </message> <message> - <source>Derived particle is missing element %1.</source> - <translation type="unfinished"></translation> + <source>At least one %1-element must occur inside %2.</source> + <translation>Au moins un élément %1 doit apparaître dans %2.</translation> </message> <message> - <source>Derived element %1 is missing value constraint as defined in base particle.</source> - <translation type="unfinished"></translation> + <source>When attribute %1 is present on %2, a sequence constructor cannot be used.</source> + <translation>Quand l'attribut %1 est présent sur %2, un constructeur de séquence ne peut pas être utilisé.</translation> </message> <message> - <source>Derived element %1 has weaker value constraint than base particle.</source> - <translation type="unfinished"></translation> + <source>Element %1 must have either a %2-attribute or a sequence constructor.</source> + <translation>L'élément %1 doit avoir un attribut %2 ou un constructeur de séquence.</translation> </message> <message> - <source>Fixed value constraint of element %1 differs from value constraint in base particle.</source> - <translation type="unfinished"></translation> + <source>When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor.</source> + <translation>Quand un paramètre est requis, un valeur par défault ne peut pas être fournie par un attribute %1 ou un constructeur de séquence.</translation> </message> <message> - <source>Derived element %1 cannot be nillable as base element is not nillable.</source> - <translation type="unfinished"></translation> + <source>Element %1 cannot have children.</source> + <translation>L'élément %1 ne peut pas avoir de fils.</translation> </message> <message> - <source>Block constraints of derived element %1 must not be more weaker than in the base element.</source> - <translation type="unfinished"></translation> + <source>Element %1 cannot have a sequence constructor.</source> + <translation>L'élément %1 ne peut pas avoir un constructuer de séquence.</translation> </message> <message> - <source>Simple type of derived element %1 cannot be validly derived from base element.</source> - <translation type="unfinished"></translation> + <source>The attribute %1 cannot appear on %2, when it is a child of %3.</source> + <translation>L'attribut %1 ne peut pas apparaître sur %2 quand il est fils de %3.</translation> </message> <message> - <source>Complex type of derived element %1 cannot be validly derived from base element.</source> - <translation type="unfinished"></translation> + <source>A parameter in a function cannot be declared to be a tunnel.</source> + <translation>Un paramètre de fonction ne peut pas être déclaré comme un tunnel.</translation> </message> <message> - <source>Element %1 is missing in derived particle.</source> - <translation type="unfinished"></translation> + <source>This processor is not Schema-aware and therefore %1 cannot be used.</source> + <translation>Ce processeur ne comprend pas les Schemas. C'est pourquoi %1 ne peut pas être utilisé.</translation> </message> <message> - <source>Element %1 does not match namespace constraint of wildcard in base particle.</source> - <translation type="unfinished"></translation> + <source>Top level stylesheet elements must be in a non-null namespace, which %1 isn't.</source> + <translation>Les élément d'une feuille de style de haut niveau doivent être dans un namespace non nul; %1 ne l'est pas.</translation> </message> <message> - <source>Wildcard in derived particle is not a valid subset of wildcard in base particle.</source> - <translation type="unfinished"></translation> + <source>The value for attribute %1 on element %2 must either be %3 or %4, not %5.</source> + <translation>La valeur de l'attribut %1 de l'élement %2 doit être %3 ou %4, et pas %5.</translation> </message> <message> - <source>processContent of wildcard in derived particle is weaker than wildcard in base particle.</source> - <translation type="unfinished"></translation> + <source>Attribute %1 cannot have the value %2.</source> + <translation>L'attribut %1 ne peut avoir la valeur %2.</translation> </message> <message> - <source>Derived particle allows content that is not allowed in the base particle.</source> - <translation type="unfinished"></translation> + <source>The attribute %1 can only appear on the first %2 element.</source> + <translation>L'attribute %1 peut seulement apparaître sur le premier élément %2.</translation> </message> <message> - <source>Can not process unknown element %1, expected elements are: %2.</source> - <translation type="unfinished"></translation> + <source>At least one %1 element must appear as child of %2.</source> + <translation>Au moins un élément %1 doit apparaître comme fils de %2.</translation> </message> <message> - <source>Element %1 is not allowed in this scope, possible elements are: %2.</source> - <translation type="unfinished"></translation> + <source>A template with name %1 has already been declared.</source> + <translation>Un template nommé %1 a déjà été déclaré.</translation> </message> <message> - <source>Child element is missing in that scope, possible child elements are: %1.</source> - <translation type="unfinished"></translation> + <source>The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid.</source> + <translation>Le nom de destination dans une instruction de traitement ne peut être %1. %2 est invalide.</translation> </message> <message> - <source>Document is not a XML schema.</source> - <translation type="unfinished"></translation> + <source>No variable with name %1 exists</source> + <translation>Aucune variable nommée %1 n'existe</translation> </message> <message> - <source>%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4.</source> - <translation type="unfinished"></translation> + <source>The value of attribute %1 must be of type %2, which %3 isn't.</source> + <translation>La valeur de l'attribut %1 doit être du type %2, %3 n'en est pas.</translation> </message> <message> - <source>%1 attribute of %2 element contains invalid content: {%3}.</source> - <translation type="unfinished"></translation> + <source>The prefix %1 cannot be bound. By default, it is already bound to the namespace %2.</source> + <translation>Le préfixe %1 ne peut être lié. Par défault, il est déjà lié au namespace %2.</translation> </message> <message> - <source>Target namespace %1 of included schema is different from the target namespace %2 as defined by the including schema.</source> - <translation type="unfinished"></translation> + <source>A variable with name %1 has already been declared.</source> + <translation>Une variable nommée %1 a déjà été déclarée.</translation> </message> <message> - <source>Target namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema.</source> - <translation type="unfinished"></translation> + <source>No value is available for the external variable with name %1.</source> + <translation>Aucune valeur n'est disponible pour la variable externe %1.</translation> </message> <message> - <source>%1 element is not allowed to have the same %2 attribute value as the target namespace %3.</source> - <translation type="unfinished"></translation> + <source>An argument with name %1 has already been declared. Every argument name must be unique.</source> + <translation>Un argument nommé %1 a déjà été déclaré. Chaque nom d'argument doit être unique.</translation> </message> <message> - <source>%1 element without %2 attribute is not allowed inside schema without target namespace.</source> - <translation type="unfinished"></translation> + <source>No function with name %1 is available.</source> + <translation>Aucune fonction nommée %1 n'est disponible.</translation> </message> <message> - <source>%1 element is not allowed inside %2 element if %3 attribute is present.</source> + <source>W3C XML Schema identity constraint selector</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 element has neither %2 attribute nor %3 child element.</source> + <source>W3C XML Schema identity constraint field</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 element with %2 child element must not have a %3 attribute.</source> + <source>A construct was encountered which is disallowed in the current language(%1).</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 attribute of %2 element must be %3 or %4.</source> - <translation type="unfinished"></translation> + <source>An attribute with name %1 has already appeared on this element.</source> + <translation>Un attribute nommé %1 existe déjà pour cet élément.</translation> </message> <message> - <source>%1 attribute of %2 element must have a value of %3.</source> + <source>%1 has inheritance loop in its base type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 attribute of %2 element must have a value of %3 or %4.</source> + <source>Circular inheritance of base type %1.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 element must not have %2 and %3 attribute together.</source> + <source>Circular inheritance of union %1.</source> <translation type="unfinished"></translation> </message> <message> - <source>Content of %1 attribute of %2 element must not be from namespace %3.</source> + <source>%1 is not allowed to derive from %2 by restriction as the latter defines it as final.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 attribute of %2 element must not be %3.</source> + <source>%1 is not allowed to derive from %2 by extension as the latter defines it as final.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 attribute of %2 element must have the value %3 because the %4 attribute is set.</source> + <source>Base type of simple type %1 cannot be complex type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Specifying use='prohibited' inside an attribute group has no effect.</source> + <source>Simple type %1 cannot have direct base type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 element must have either %2 or %3 attribute.</source> + <source>Simple type %1 is not allowed to have base type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 element must have either %2 attribute or %3 or %4 as child element.</source> + <source>Simple type %1 can only have simple atomic type as base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 element requires either %2 or %3 attribute.</source> + <source>Simple type %1 cannot derive from %2 as the latter defines restriction as final.</source> <translation type="unfinished"></translation> </message> <message> - <source>Text or entity references not allowed inside %1 element</source> + <source>Variety of item type of %1 must be either atomic or union.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 attribute of %2 element must contain %3, %4 or a list of URIs.</source> + <source>Variety of member types of %1 must be atomic.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 element is not allowed in this context.</source> + <source>%1 is not allowed to derive from %2 by list as the latter defines it as final.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 attribute of %2 element has larger value than %3 attribute.</source> + <source>Simple type %1 is only allowed to have %2 facet.</source> <translation type="unfinished"></translation> </message> <message> - <source>Prefix of qualified name %1 is not defined.</source> + <source>Base type of simple type %1 must have variety of type list.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 attribute of %2 element must either contain %3 or the other values.</source> + <source>Base type of simple type %1 has defined derivation by restriction as final.</source> <translation type="unfinished"></translation> </message> <message> - <source>Component with ID %1 has been defined previously.</source> + <source>Item type of base type does not match item type of %1.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 already defined.</source> + <source>Simple type %1 contains not allowed facet type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Attribute %1 already defined.</source> + <source>%1 is not allowed to derive from %2 by union as the latter defines it as final.</source> <translation type="unfinished"></translation> </message> <message> - <source>Type %1 already defined.</source> + <source>%1 is not allowed to have any facets.</source> <translation type="unfinished"></translation> </message> <message> - <source>Attribute group %1 already defined.</source> + <source>Base type %1 of simple type %2 must have variety of union.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element group %1 already defined.</source> + <source>Base type %1 of simple type %2 is not allowed to have restriction in %3 attribute.</source> <translation type="unfinished"></translation> </message> <message> - <source>Notation %1 already defined.</source> + <source>Member type %1 cannot be derived from member type %2 of %3's base type %4.</source> <translation type="unfinished"></translation> </message> <message> - <source>Identity constraint %1 already defined.</source> + <source>Derivation method of %1 must be extension because the base type %2 is a simple type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Duplicated facets in simple type %1.</source> + <source>Complex type %1 has duplicated element %2 in its content model.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 is not valid according to %2.</source> + <source>Complex type %1 has non-deterministic content.</source> <translation type="unfinished"></translation> </message> <message> - <source>String content does not match the length facet.</source> + <source>Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3.</source> <translation type="unfinished"></translation> </message> <message> - <source>String content does not match the minLength facet.</source> + <source>Content model of complex type %1 is not a valid extension of content model of %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>String content does not match the maxLength facet.</source> + <source>Complex type %1 must have simple content.</source> <translation type="unfinished"></translation> </message> <message> - <source>String content does not match pattern facet.</source> + <source>Complex type %1 must have the same simple type as its base class %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>String content is not listed in the enumeration facet.</source> + <source>Complex type %1 cannot be derived from base type %2%3.</source> <translation type="unfinished"></translation> </message> <message> - <source>Signed integer content does not match the maxInclusive facet.</source> + <source>Attributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3.</source> <translation type="unfinished"></translation> </message> <message> - <source>Signed integer content does not match the maxExclusive facet.</source> + <source>Complex type %1 with simple content cannot be derived from complex base type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Signed integer content does not match the minInclusive facet.</source> + <source>Item type of simple type %1 cannot be a complex type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Signed integer content does not match the minExclusive facet.</source> + <source>Member type of simple type %1 cannot be a complex type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Signed integer content is not listed in the enumeration facet.</source> + <source>%1 is not allowed to have a member type with the same name as itself.</source> <translation type="unfinished"></translation> </message> <message> - <source>Signed integer content does not match pattern facet.</source> + <source>%1 facet collides with %2 facet.</source> <translation type="unfinished"></translation> </message> <message> - <source>Signed integer content does not match in the totalDigits facet.</source> + <source>%1 facet must have the same value as %2 facet of base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Unsigned integer content does not match the maxInclusive facet.</source> + <source>%1 facet must be equal or greater than %2 facet of base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Unsigned integer content does not match the maxExclusive facet.</source> + <source>%1 facet must be less than or equal to %2 facet of base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Unsigned integer content does not match the minInclusive facet.</source> + <source>%1 facet contains invalid regular expression</source> <translation type="unfinished"></translation> </message> <message> - <source>Unsigned integer content does not match the minExclusive facet.</source> + <source>Unknown notation %1 used in %2 facet.</source> <translation type="unfinished"></translation> </message> <message> - <source>Unsigned integer content is not listed in the enumeration facet.</source> + <source>%1 facet contains invalid value %2: %3.</source> <translation type="unfinished"></translation> </message> <message> - <source>Unsigned integer content does not match pattern facet.</source> + <source>%1 facet cannot be %2 or %3 if %4 facet of base type is %5.</source> <translation type="unfinished"></translation> </message> <message> - <source>Unsigned integer content does not match in the totalDigits facet.</source> + <source>%1 facet cannot be %2 if %3 facet of base type is %4.</source> <translation type="unfinished"></translation> </message> <message> - <source>Double content does not match the maxInclusive facet.</source> + <source>%1 facet must be less than or equal to %2 facet.</source> <translation type="unfinished"></translation> </message> <message> - <source>Double content does not match the maxExclusive facet.</source> + <source>%1 facet must be less than %2 facet of base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Double content does not match the minInclusive facet.</source> + <source>%1 facet and %2 facet cannot appear together.</source> <translation type="unfinished"></translation> </message> <message> - <source>Double content does not match the minExclusive facet.</source> + <source>%1 facet must be greater than %2 facet of base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Double content is not listed in the enumeration facet.</source> + <source>%1 facet must be less than %2 facet.</source> <translation type="unfinished"></translation> </message> <message> - <source>Double content does not match pattern facet.</source> + <source>%1 facet must be greater than or equal to %2 facet of base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Decimal content does not match in the fractionDigits facet.</source> + <source>Simple type contains not allowed facet %1.</source> <translation type="unfinished"></translation> </message> <message> - <source>Decimal content does not match in the totalDigits facet.</source> + <source>%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list.</source> <translation type="unfinished"></translation> </message> <message> - <source>Date time content does not match the maxInclusive facet.</source> + <source>Only %1 and %2 facets are allowed when derived by union.</source> <translation type="unfinished"></translation> </message> <message> - <source>Date time content does not match the maxExclusive facet.</source> + <source>%1 contains %2 facet with invalid data: %3.</source> <translation type="unfinished"></translation> </message> <message> - <source>Date time content does not match the minInclusive facet.</source> + <source>Attribute group %1 contains attribute %2 twice.</source> <translation type="unfinished"></translation> </message> <message> - <source>Date time content does not match the minExclusive facet.</source> + <source>Attribute group %1 contains two different attributes that both have types derived from %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Date time content is not listed in the enumeration facet.</source> + <source>Attribute group %1 contains attribute %2 that has value constraint but type that inherits from %3.</source> <translation type="unfinished"></translation> </message> <message> - <source>Date time content does not match pattern facet.</source> + <source>Complex type %1 contains attribute %2 twice.</source> <translation type="unfinished"></translation> </message> <message> - <source>Duration content does not match the maxInclusive facet.</source> + <source>Complex type %1 contains two different attributes that both have types derived from %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Duration content does not match the maxExclusive facet.</source> + <source>Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3.</source> <translation type="unfinished"></translation> </message> <message> - <source>Duration content does not match the minInclusive facet.</source> + <source>Element %1 is not allowed to have a value constraint if its base type is complex.</source> <translation type="unfinished"></translation> </message> <message> - <source>Duration content does not match the minExclusive facet.</source> + <source>Element %1 is not allowed to have a value constraint if its type is derived from %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Duration content is not listed in the enumeration facet.</source> + <source>Value constraint of element %1 is not of elements type: %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Duration content does not match pattern facet.</source> + <source>Element %1 is not allowed to have substitution group affiliation as it is no global element.</source> <translation type="unfinished"></translation> </message> <message> - <source>Boolean content does not match pattern facet.</source> + <source>Type of element %1 cannot be derived from type of substitution group affiliation.</source> <translation type="unfinished"></translation> </message> <message> - <source>Binary content does not match the length facet.</source> + <source>Value constraint of attribute %1 is not of attributes type: %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Binary content does not match the minLength facet.</source> + <source>Attribute %1 has value constraint but has type derived from %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Binary content does not match the maxLength facet.</source> + <source>%1 attribute in derived complex type must be %2 like in base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Binary content is not listed in the enumeration facet.</source> + <source>Attribute %1 in derived complex type must have %2 value constraint like in base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>Invalid QName content: %1.</source> + <source>Attribute %1 in derived complex type must have the same %2 value constraint like in base type.</source> <translation type="unfinished"></translation> </message> <message> - <source>QName content is not listed in the enumeration facet.</source> + <source>Attribute %1 in derived complex type must have %2 value constraint.</source> <translation type="unfinished"></translation> </message> <message> - <source>QName content does not match pattern facet.</source> + <source>processContent of base wildcard must be weaker than derived wildcard.</source> <translation type="unfinished"></translation> </message> <message> - <source>Notation content is not listed in the enumeration facet.</source> + <source>Element %1 exists twice with different types.</source> <translation type="unfinished"></translation> </message> <message> - <source>List content does not match length facet.</source> + <source>Particle contains non-deterministic wildcards.</source> <translation type="unfinished"></translation> </message> <message> - <source>List content does not match minLength facet.</source> + <source>Base attribute %1 is required but derived attribute is not.</source> <translation type="unfinished"></translation> </message> <message> - <source>List content does not match maxLength facet.</source> + <source>Type of derived attribute %1 cannot be validly derived from type of base attribute.</source> <translation type="unfinished"></translation> </message> <message> - <source>List content is not listed in the enumeration facet.</source> + <source>Value constraint of derived attribute %1 does not match value constraint of base attribute.</source> <translation type="unfinished"></translation> </message> <message> - <source>List content does not match pattern facet.</source> + <source>Derived attribute %1 does not exist in the base definition.</source> <translation type="unfinished"></translation> </message> <message> - <source>Union content is not listed in the enumeration facet.</source> + <source>Derived attribute %1 does not match the wildcard in the base definition.</source> <translation type="unfinished"></translation> </message> <message> - <source>Union content does not match pattern facet.</source> + <source>Base attribute %1 is required but missing in derived definition.</source> <translation type="unfinished"></translation> </message> <message> - <source>Data of type %1 are not allowed to be empty.</source> + <source>Derived definition contains an %1 element that does not exists in the base definition</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 is missing child element.</source> + <source>Derived wildcard is not a subset of the base wildcard.</source> <translation type="unfinished"></translation> </message> <message> - <source>There is one IDREF value with no corresponding ID: %1.</source> + <source>%1 of derived wildcard is not a valid restriction of %2 of base wildcard</source> <translation type="unfinished"></translation> </message> <message> - <source>Loaded schema file is invalid.</source> + <source>Attribute %1 from base type is missing in derived type.</source> <translation type="unfinished"></translation> </message> <message> - <source>%1 contains invalid data.</source> + <source>Type of derived attribute %1 differs from type of base attribute.</source> <translation type="unfinished"></translation> </message> <message> - <source>xsi:schemaLocation namespace %1 has already appeared earlier in the instance document.</source> + <source>Base definition contains an %1 element that is missing in the derived definition</source> <translation type="unfinished"></translation> </message> <message> - <source>xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute.</source> + <source>%1 references unknown %2 or %3 element %4.</source> <translation type="unfinished"></translation> </message> <message> - <source>No schema defined for validation.</source> + <source>%1 references identity constraint %2 that is no %3 or %4 element.</source> <translation type="unfinished"></translation> </message> <message> - <source>No definition for element %1 available.</source> + <source>%1 has a different number of fields from the identity constraint %2 that it references.</source> <translation type="unfinished"></translation> </message> <message> - <source>Specified type %1 is not known to the schema.</source> + <source>Base type %1 of %2 element cannot be resolved.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 is not defined in this scope.</source> + <source>Item type %1 of %2 element cannot be resolved.</source> <translation type="unfinished"></translation> </message> <message> - <source>Declaration for element %1 does not exist.</source> + <source>Member type %1 of %2 element cannot be resolved.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 contains invalid content.</source> + <source>Type %1 of %2 element cannot be resolved.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 is declared as abstract.</source> + <source>Base type %1 of complex type cannot be resolved.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 is not nillable.</source> + <source>%1 cannot have complex base type that has a %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Attribute %1 contains invalid data: %2</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> - <source>Element contains content although it is nillable.</source> + <source>Complex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model.</source> <translation type="unfinished"></translation> </message> <message> - <source>Fixed value constraint not allowed if element is nillable.</source> + <source>Type of %1 element must be a simple type, %2 is not.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 cannot contain other elements, as it has a fixed content.</source> + <source>Substitution group %1 of %2 element cannot be resolved.</source> <translation type="unfinished"></translation> </message> <message> - <source>Specified type %1 is not validly substitutable with element type %2.</source> + <source>Substitution group %1 has circular definition.</source> <translation type="unfinished"></translation> </message> <message> - <source>Complex type %1 is not allowed to be abstract.</source> + <source>Duplicated element names %1 in %2 element.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 contains not allowed attributes.</source> + <source>Reference %1 of %2 element cannot be resolved.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 contains not allowed child element.</source> + <source>Circular group reference for %1.</source> <translation type="unfinished"></translation> </message> <message> - <source>Content of element %1 does not match its type definition: %2.</source> + <source>%1 element is not allowed in this scope</source> <translation type="unfinished"></translation> </message> <message> - <source>Content of element %1 does not match defined value constraint.</source> + <source>%1 element cannot have %2 attribute with value other than %3.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 contains not allowed child content.</source> + <source>%1 element cannot have %2 attribute with value other than %3 or %4.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 contains not allowed text content.</source> + <source>%1 or %2 attribute of reference %3 does not match with the attribute declaration %4.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 is missing required attribute %2.</source> + <source>Attribute group %1 has circular reference.</source> <translation type="unfinished"></translation> </message> <message> - <source>Attribute %1 does not match the attribute wildcard.</source> + <source>%1 attribute in %2 must have %3 use like in base type %4.</source> <translation type="unfinished"></translation> </message> <message> - <source>Declaration for attribute %1 does not exist.</source> + <source>Attribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 contains two attributes of type %2.</source> + <source>%1 has attribute wildcard but its base type %2 has not.</source> <translation type="unfinished"></translation> </message> <message> - <source>Attribute %1 contains invalid content.</source> + <source>Union of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible.</source> <translation type="unfinished"></translation> </message> <message> - <source>Element %1 contains unknown attribute %2.</source> + <source>Enumeration facet contains invalid content: {%1} is not a value of type %2.</source> <translation type="unfinished"></translation> </message> <message> - <source>Content of attribute %1 does not match its type definition: %2.</source> + <source>Namespace prefix of qualified name %1 is not defined.</source> <translation type="unfinished"></translation> </message> <message> - <source>Content of attribute %1 does not match defined value constraint.</source> + <source>%1 element %2 is not a valid restriction of the %3 element it redefines: %4.</source> <translation type="unfinished"></translation> </message> <message> - <source>Non-unique value found for constraint %1.</source> + <source>Empty particle cannot be derived from non-empty particle.</source> <translation type="unfinished"></translation> </message> <message> - <source>Key constraint %1 contains absent fields.</source> + <source>Derived particle is missing element %1.</source> <translation type="unfinished"></translation> </message> <message> - <source>Key constraint %1 contains references nillable element %2.</source> + <source>Derived element %1 is missing value constraint as defined in base particle.</source> <translation type="unfinished"></translation> </message> <message> - <source>No referenced value found for key reference %1.</source> + <source>Derived element %1 has weaker value constraint than base particle.</source> <translation type="unfinished"></translation> </message> <message> - <source>More than one value found for field %1.</source> + <source>Fixed value constraint of element %1 differs from value constraint in base particle.</source> <translation type="unfinished"></translation> </message> <message> - <source>Field %1 has no simple type.</source> + <source>Derived element %1 cannot be nillable as base element is not nillable.</source> <translation type="unfinished"></translation> </message> <message> - <source>ID value '%1' is not unique.</source> + <source>Block constraints of derived element %1 must not be more weaker than in the base element.</source> <translation type="unfinished"></translation> </message> <message> - <source>'%1' attribute contains invalid QName content: %2.</source> + <source>Simple type of derived element %1 cannot be validly derived from base element.</source> <translation type="unfinished"></translation> </message> -</context> -<context> - <name>VolumeSlider</name> <message> - <location filename="../src/3rdparty/phonon/phonon/volumeslider.cpp" line="+184"/> - <source>Muted</source> - <translation>Muet</translation> + <source>Complex type of derived element %1 cannot be validly derived from base element.</source> + <translation type="unfinished"></translation> </message> <message> - <location line="+5"/> - <location line="+15"/> - <source>Volume: %1%</source> - <translation>Volume : %1%</translation> + <source>Element %1 is missing in derived particle.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>WebCore::PlatformScrollbar</name> <message> - <source>Scroll here</source> - <translation type="obsolete">Défiler jusqu'ici</translation> + <source>Element %1 does not match namespace constraint of wildcard in base particle.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Left edge</source> - <translation type="obsolete">Extrême gauche</translation> + <source>Wildcard in derived particle is not a valid subset of wildcard in base particle.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Top</source> - <translation type="obsolete">En haut</translation> + <source>processContent of wildcard in derived particle is weaker than wildcard in base particle.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Right edge</source> - <translation type="obsolete">Extrême droite</translation> + <source>Derived particle allows content that is not allowed in the base particle.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Bottom</source> - <translation type="obsolete">En bas</translation> + <source>Can not process unknown element %1, expected elements are: %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Page left</source> - <translation type="obsolete">Page précédente</translation> + <source>Element %1 is not allowed in this scope, possible elements are: %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Page up</source> - <translation type="obsolete">Page précédente</translation> + <source>Child element is missing in that scope, possible child elements are: %1.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Page right</source> - <translation type="obsolete">Page suivante</translation> + <source>Document is not a XML schema.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Page down</source> - <translation type="obsolete">Page suivante</translation> + <source>%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Scroll left</source> - <translation type="obsolete">Défiler vers la gauche</translation> + <source>%1 attribute of %2 element contains invalid content: {%3}.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Scroll up</source> - <translation type="obsolete">Défiler vers le haut</translation> + <source>Target namespace %1 of included schema is different from the target namespace %2 as defined by the including schema.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Scroll right</source> - <translation type="obsolete">Défiler vers la droite</translation> + <source>Target namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Scroll down</source> - <translation type="obsolete">Défiler vers le bas</translation> + <source>%1 element is not allowed to have the same %2 attribute value as the target namespace %3.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>FakeReply</name> <message> - <source>Fake error !</source> - <translation>Fausse erreur!</translation> + <source>%1 element without %2 attribute is not allowed inside schema without target namespace.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Invalid URL</source> - <translation>URL non valide</translation> + <source>%1 element is not allowed inside %2 element if %3 attribute is present.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::AudioOutput</name> <message> - <source><html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html></source> - <translation><html>Le périphérique audio <b>%1</b> ne fonctionne pas.<br/>Repli sur <b>%2</b>.</html></translation> + <source>%1 element has neither %2 attribute nor %3 child element.</source> + <translation type="unfinished"></translation> </message> <message> - <source><html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html></source> - <translation><html>Basculement vers le périphérique audio <b>%1</b><br/>qui vient juste d'être disponible et dont le niveau de préférence est plus élevé.</html></translation> + <source>%1 element with %2 child element must not have a %3 attribute.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Revert back to device '%1'</source> - <translation>Revenir au périphérique '%1'</translation> + <source>%1 attribute of %2 element must be %3 or %4.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF</name> <message> - <source>Audio Output</source> - <translation>Sortie audio</translation> + <source>%1 attribute of %2 element must have a value of %3.</source> + <translation type="unfinished"></translation> </message> <message> - <source>The audio output device</source> - <translation>Périphérique audio de sortie</translation> + <source>%1 attribute of %2 element must have a value of %3 or %4.</source> + <translation type="unfinished"></translation> </message> <message> - <source>No error</source> - <translation>Aucune erreur</translation> + <source>%1 element must not have %2 and %3 attribute together.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Not found</source> - <translation>Introuvable</translation> + <source>Content of %1 attribute of %2 element must not be from namespace %3.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Out of memory</source> - <translation>Mémoire insuffisante</translation> + <source>%1 attribute of %2 element must not be %3.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Not supported</source> - <translation>Non supporté</translation> + <source>%1 attribute of %2 element must have the value %3 because the %4 attribute is set.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Overflow</source> - <translation>Dépassement</translation> + <source>Specifying use='prohibited' inside an attribute group has no effect.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Underflow</source> - <translation>Soupassement</translation> + <source>%1 element must have either %2 or %3 attribute.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Already exists</source> - <translation>Existe déjà</translation> + <source>%1 element must have either %2 attribute or %3 or %4 as child element.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Path not found</source> - <translation>Chemin introuvable</translation> + <source>%1 element requires either %2 or %3 attribute.</source> + <translation type="unfinished"></translation> </message> <message> - <source>In use</source> - <translation>Utilisé</translation> + <source>Text or entity references not allowed inside %1 element</source> + <translation type="unfinished"></translation> </message> <message> - <source>Not ready</source> - <translation>Pas prêt</translation> + <source>%1 attribute of %2 element must contain %3, %4 or a list of URIs.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Access denied</source> - <translation>Accès refusé</translation> + <source>%1 element is not allowed in this context.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Could not connect</source> - <translation>Connexion impossible</translation> + <source>%1 attribute of %2 element has larger value than %3 attribute.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Disconnected</source> - <translation>Déconnecté</translation> + <source>Prefix of qualified name %1 is not defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Permission denied</source> - <translation>Autorisation refusée</translation> + <source>%1 attribute of %2 element must either contain %3 or the other values.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Insufficient bandwidth</source> - <translation>Bande passante insuffisante</translation> + <source>Component with ID %1 has been defined previously.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Network unavailable</source> - <translation>Réseau non disponible</translation> + <source>Element %1 already defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Network communication error</source> - <translation>Erreur de communication réseau</translation> + <source>Attribute %1 already defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Streaming not supported</source> - <translation>Streaming non supporté</translation> + <source>Type %1 already defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Server alert</source> - <translation>Alerte serveur</translation> + <source>Attribute group %1 already defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Invalid protocol</source> - <translation>Protocole non valide</translation> + <source>Element group %1 already defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Invalid URL</source> - <translation>URL non valide</translation> + <source>Notation %1 already defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Multicast error</source> - <translation>Erreur multicast</translation> + <source>Identity constraint %1 already defined.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy server error</source> - <translation>Erreur du serveur proxy</translation> + <source>Duplicated facets in simple type %1.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Proxy server not supported</source> - <translation>Serveur proxy non supporté</translation> + <source>%1 is not valid according to %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Audio output error</source> - <translation>Erreur de sortie audio</translation> + <source>String content does not match the length facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Video output error</source> - <translation>Erreur de sortie vidéo</translation> + <source>String content does not match the minLength facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Decoder error</source> - <translation>Erreur du décodeur</translation> + <source>String content does not match the maxLength facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Audio or video components could not be played</source> - <translation>Les composants audio ou vidéo n'ont pas pu être lus</translation> + <source>String content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>DRM error</source> - <translation>Erreur GDN</translation> + <source>String content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Unknown error (%1)</source> - <translation>Erreur inconnue (%1)</translation> + <source>Signed integer content does not match the maxInclusive facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::AbstractMediaPlayer</name> <message> - <source>Not ready to play</source> - <translation>Pas prêt pour lecture</translation> + <source>Signed integer content does not match the maxExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Error opening file</source> - <translation>Erreur lors de l'ouverture du fichier</translation> + <source>Signed integer content does not match the minInclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Error opening URL</source> - <translation>Erreur lors de l'ouverture de l'URL</translation> + <source>Signed integer content does not match the minExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Setting volume failed</source> - <translation>Le réglage du volume a échoué</translation> + <source>Signed integer content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Playback complete</source> - <translation>Lecture terminée</translation> + <source>Signed integer content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::AudioEqualizer</name> <message> - <source>%1 Hz</source> - <translation>%1 Hz</translation> + <source>Signed integer content does not match in the totalDigits facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::AudioPlayer</name> <message> - <source>Getting position failed</source> - <translation>L'obtention de la position a échoué</translation> + <source>Unsigned integer content does not match the maxInclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Opening clip failed</source> - <translation>L'ouverture du clip a échoué</translation> + <source>Unsigned integer content does not match the maxExclusive facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::EffectFactory</name> <message> - <source>Enabled</source> - <translation>Activé</translation> + <source>Unsigned integer content does not match the minInclusive facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::EnvironmentalReverb</name> <message> - <source>Decay HF ratio (%)</source> - <translation>Ratio HF du déclin (%)</translation> + <source>Unsigned integer content does not match the minExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Decay time (ms)</source> - <translation>Temps de déclin (ms)</translation> + <source>Unsigned integer content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Density (%)</source> - <translation>Densité (%)</translation> + <source>Unsigned integer content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Diffusion (%)</source> - <translation>Diffusion (%)</translation> + <source>Unsigned integer content does not match in the totalDigits facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Reflections delay (ms)</source> - <translation>Délai réflexions (ms)</translation> + <source>Double content does not match the maxInclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Reflections level (mB)</source> - <translation>Niveau réflexions (mB)</translation> + <source>Double content does not match the maxExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Reverb delay (ms)</source> - <translation>Délai de réverbération (ms)</translation> + <source>Double content does not match the minInclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Reverb level (mB)</source> - <translation>Niveau de réverbération (mB)</translation> + <source>Double content does not match the minExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Room HF level</source> - <translation>Niveau HF pièce</translation> + <source>Double content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Room level (mB)</source> - <translation>Niveau pièce (mB)</translation> + <source>Double content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::MediaObject</name> <message> - <source>Error opening source: type not supported</source> - <translation>Erreur lors de l'ouverture de la source: type non supporté</translation> + <source>Decimal content does not match in the fractionDigits facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Error opening source: media type could not be determined</source> - <translation>Erreur lors de l'ouverture de la source: type de média non déterminé</translation> + <source>Decimal content does not match in the totalDigits facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::StereoWidening</name> <message> - <source>Level (%)</source> - <translation>Niveau (%)</translation> + <source>Date time content does not match the maxInclusive facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>Phonon::MMF::VideoPlayer</name> <message> - <source>Pause failed</source> - <translation>La mise en pause a échoué</translation> + <source>Date time content does not match the maxExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Seek failed</source> - <translation>La recherche a échoué</translation> + <source>Date time content does not match the minInclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Getting position failed</source> - <translation>L'obtention de la position a échoué</translation> + <source>Date time content does not match the minExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Opening clip failed</source> - <translation>L'ouverture du clip a échoué</translation> + <source>Date time content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Buffering clip failed</source> - <translation>La mise en mémoire tampon du clip a échoué</translation> + <source>Date time content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Video display error</source> - <translation>Erreur de l'affichage vidéo</translation> + <source>Duration content does not match the maxInclusive facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QAccessibleButton</name> <message> - <source>Press</source> - <translation>Appuyer</translation> + <source>Duration content does not match the maxExclusive facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QNetworkAccessDebugPipeBackend</name> <message> - <source>Write error writing to %1: %2</source> - <translation>Erreur lors de l'écriture dans %1: %2</translation> + <source>Duration content does not match the minInclusive facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptBreakpointsModel</name> <message> - <source>ID</source> - <translation>Identifiant</translation> + <source>Duration content does not match the minExclusive facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Location</source> - <translation>Lieu</translation> + <source>Duration content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Condition</source> - <translation>Condition</translation> + <source>Duration content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Ignore-count</source> - <translation>Comptes d'ignorés</translation> + <source>Boolean content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Single-shot</source> - <translation>Un seul tir</translation> + <source>Binary content does not match the length facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Hit-count</source> - <translation>Compte de coups</translation> + <source>Binary content does not match the minLength facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptBreakpointsWidget</name> <message> - <source>New</source> - <translation>Créer</translation> + <source>Binary content does not match the maxLength facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Delete</source> - <translation>Supprimer</translation> + <source>Binary content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptDebugger</name> <message> - <source>Go to Line</source> - <translation>Aller à la ligne</translation> + <source>Invalid QName content: %1.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Line:</source> - <translation>Ligne:</translation> + <source>QName content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Interrupt</source> - <translation>Interrompre</translation> + <source>QName content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Shift+F5</source> - <translation>Shift+F5</translation> + <source>Notation content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Continue</source> - <translation>Continuer</translation> + <source>List content does not match length facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>F5</source> - <translation>F5</translation> + <source>List content does not match minLength facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Step Into</source> - <translation>Pas à pas détaillé</translation> + <source>List content does not match maxLength facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>F11</source> - <translation>F11</translation> + <source>List content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Step Over</source> - <translation>Pas à pas principal</translation> + <source>List content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>F10</source> - <translation>F10</translation> + <source>Union content is not listed in the enumeration facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Step Out</source> - <translation>Pas à pas sortant</translation> + <source>Union content does not match pattern facet.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Shift+F11</source> - <translation>Shift+F11</translation> + <source>Data of type %1 are not allowed to be empty.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Run to Cursor</source> - <translation>Exécuter au curseur</translation> + <source>Element %1 is missing child element.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Ctrl+F10</source> - <translation>Ctrl+F10</translation> + <source>There is one IDREF value with no corresponding ID: %1.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Run to New Script</source> - <translation>Exécuter au nouveau script</translation> + <source>Loaded schema file is invalid.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Toggle Breakpoint</source> - <translation>Basculer le point d'arrêt</translation> + <source>%1 contains invalid data.</source> + <translation type="unfinished"></translation> </message> <message> - <source>F9</source> - <translation>F9</translation> + <source>xsi:schemaLocation namespace %1 has already appeared earlier in the instance document.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Clear Debug Output</source> - <translation>Effacer les résultats du débogage</translation> + <source>xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Clear Error Log</source> - <translation>Effacer le journal d'erreurs</translation> + <source>No schema defined for validation.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Clear Console</source> - <translation>Effacer la console</translation> + <source>No definition for element %1 available.</source> + <translation type="unfinished"></translation> </message> <message> - <source>&Find in Script...</source> - <translation>&Chercher dans le script...</translation> + <source>Specified type %1 is not known to the schema.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Ctrl+F</source> - <translation>Ctrl+F</translation> + <source>Element %1 is not defined in this scope.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Find &Next</source> - <translation>Résultat &suivant</translation> + <source>Declaration for element %1 does not exist.</source> + <translation type="unfinished"></translation> </message> <message> - <source>F3</source> - <translation>F3</translation> + <source>Element %1 contains invalid content.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Find &Previous</source> - <translation>Chercher &précédent</translation> + <source>Element %1 is declared as abstract.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Shift+F3</source> - <translation>Shift+F3</translation> + <source>Element %1 is not nillable.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Ctrl+G</source> - <translation>Ctrl+G</translation> + <source>Attribute %1 contains invalid data: %2</source> + <translation type="unfinished"></translation> </message> <message> - <source>Debug</source> - <translation>Déboguer</translation> + <source>Element contains content although it is nillable.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptDebuggerCodeFinderWidget</name> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>Fixed value constraint not allowed if element is nillable.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Previous</source> - <translation>Précédent</translation> + <source>Element %1 cannot contain other elements, as it has a fixed content.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Next</source> - <translation>Suivant</translation> + <source>Specified type %1 is not validly substitutable with element type %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Case Sensitive</source> - <translation>Sensible à la casse</translation> + <source>Complex type %1 is not allowed to be abstract.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Whole words</source> - <translation>Mots entiers</translation> + <source>Element %1 contains not allowed attributes.</source> + <translation type="unfinished"></translation> </message> <message> - <source><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped</source> - <translation><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;La recherche est revenue au début</translation> + <source>Element %1 contains not allowed child element.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptDebuggerLocalsModel</name> <message> - <source>Name</source> - <translation>Nom</translation> + <source>Content of element %1 does not match its type definition: %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Value</source> - <translation>Valeur</translation> + <source>Content of element %1 does not match defined value constraint.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptDebuggerStackModel</name> <message> - <source>Level</source> - <translation>Niveau</translation> + <source>Element %1 contains not allowed child content.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Name</source> - <translation>Nom</translation> + <source>Element %1 contains not allowed text content.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Location</source> - <translation>Lieu</translation> + <source>Element %1 is missing required attribute %2.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptEdit</name> <message> - <source>Toggle Breakpoint</source> - <translation>Basculer le point d'arrêt</translation> + <source>Attribute %1 does not match the attribute wildcard.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Disable Breakpoint</source> - <translation>Désactiver le point d'arrêt</translation> + <source>Declaration for attribute %1 does not exist.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Enable Breakpoint</source> - <translation>Activer le point d'arrêt</translation> + <source>Element %1 contains two attributes of type %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Breakpoint Condition:</source> - <translation>Condition du point d'arrêt:</translation> + <source>Attribute %1 contains invalid content.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptEngineDebugger</name> <message> - <source>Loaded Scripts</source> - <translation>Scripts chargés</translation> + <source>Element %1 contains unknown attribute %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Breakpoints</source> - <translation>Points d'arrêt</translation> + <source>Content of attribute %1 does not match its type definition: %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Stack</source> - <translation>Empiler</translation> + <source>Content of attribute %1 does not match defined value constraint.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Locals</source> - <translation>Locaux</translation> + <source>Non-unique value found for constraint %1.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Console</source> - <translation>Console</translation> + <source>Key constraint %1 contains absent fields.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Debug Output</source> - <translation>Résultats du débogage</translation> + <source>Key constraint %1 contains references nillable element %2.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Error Log</source> - <translation>Journal d'erreurs</translation> + <source>No referenced value found for key reference %1.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Search</source> - <translation>Chercher</translation> + <source>More than one value found for field %1.</source> + <translation type="unfinished"></translation> </message> <message> - <source>View</source> - <translation>Afficher</translation> + <source>Field %1 has no simple type.</source> + <translation type="unfinished"></translation> </message> <message> - <source>Qt Script Debugger</source> - <translation>Débogueur de script Qt</translation> + <source>ID value '%1' is not unique.</source> + <translation type="unfinished"></translation> </message> -</context> -<context> - <name>QScriptNewBreakpointWidget</name> <message> - <source>Close</source> - <translation>Fermer</translation> + <source>'%1' attribute contains invalid QName content: %2.</source> + <translation type="unfinished"></translation> </message> </context> <context> - <name>QSoftKeyManager</name> + <name>VolumeSlider</name> <message> - <source>Ok</source> - <translation>OK</translation> + <source>Muted</source> + <translation type="obsolete">Muet</translation> </message> <message> - <source>Select</source> - <translation>Sélectionner</translation> + <source>Volume: %1%</source> + <translation type="obsolete">Volume : %1%</translation> </message> +</context> +<context> + <name>WebCore::PlatformScrollbar</name> <message> - <source>Done</source> - <translation>Terminer</translation> + <source>Scroll here</source> + <translation type="obsolete">Défiler jusqu'ici</translation> </message> <message> - <source>Options</source> - <translation>Options</translation> + <source>Left edge</source> + <translation type="obsolete">Extrême gauche</translation> </message> <message> - <source>Cancel</source> - <translation>Annuler</translation> + <source>Top</source> + <translation type="obsolete">En haut</translation> </message> <message> - <source>Exit</source> - <translation>Quitter</translation> + <source>Right edge</source> + <translation type="obsolete">Extrême droite</translation> </message> -</context> -<context> - <name>QStateMachine</name> <message> - <source>Missing initial state in compound state '%1'</source> - <translation>État initial manquant dans l'état composé '%1'</translation> + <source>Bottom</source> + <translation type="obsolete">En bas</translation> </message> <message> - <source>Missing default state in history state '%1'</source> - <translation>État par défaut manquant dans l'état de l'historique '%1'</translation> + <source>Page left</source> + <translation type="obsolete">Page précédente</translation> </message> <message> - <source>No common ancestor for targets and source of transition from state '%1'</source> - <translation>Aucun ancêtre commun pour les cibles et la source de transition de l'état '%1'</translation> + <source>Page up</source> + <translation type="obsolete">Page précédente</translation> </message> <message> - <source>Unknown error</source> - <translation>Erreur inconnue</translation> + <source>Page right</source> + <translation type="obsolete">Page suivante</translation> </message> -</context> -<context> - <name>QXmlPatternistCLI</name> <message> - <source>Warning in %1, at line %2, column %3: %4</source> - <translation>Avertissement dans %1, à la ligne %2, colonne %3: %4</translation> + <source>Page down</source> + <translation type="obsolete">Page suivante</translation> </message> <message> - <source>Warning in %1: %2</source> - <translation>Avertissement dans %1: %2</translation> + <source>Scroll left</source> + <translation type="obsolete">Défiler vers la gauche</translation> </message> <message> - <source>Unknown location</source> - <translation>Lieu inconnu</translation> + <source>Scroll up</source> + <translation type="obsolete">Défiler vers le haut</translation> </message> <message> - <source>Error %1 in %2, at line %3, column %4: %5</source> - <translation>Erreur %1 dans %2, à la ligne %3, colonne %4: %5</translation> + <source>Scroll right</source> + <translation type="obsolete">Défiler vers la droite</translation> </message> <message> - <source>Error %1 in %2: %3</source> - <translation>Erreur %1 dans %2: %3</translation> + <source>Scroll down</source> + <translation type="obsolete">Défiler vers le bas</translation> </message> </context> </TS> diff --git a/translations/qt_help_fr.ts b/translations/qt_help_fr.ts index 3835d10..f0cabc2 100644 --- a/translations/qt_help_fr.ts +++ b/translations/qt_help_fr.ts @@ -4,27 +4,22 @@ <context> <name>QCLuceneResultWidget</name> <message> - <location filename="../tools/assistant/lib/qhelpsearchresultwidget.cpp" line="+110"/> <source>Search Results</source> <translation>Résultats de la recherche</translation> </message> <message> - <location line="+7"/> <source>Note:</source> <translation>Note :</translation> </message> <message> - <location line="+1"/> <source>The search results may not be complete since the documentation is still being indexed!</source> <translation>Les résultats de la recherche risquent d'être incomplets car l'indexation de la documentation est en cours !</translation> </message> <message> - <location line="+11"/> <source>Your search did not match any documents.</source> <translation>Votre recherche ne correspond à aucun document.</translation> </message> <message> - <location line="+4"/> <source>(The reason for this might be that the documentation is still being indexed.)</source> <translation>(Il est possible que cela soit dû au fait que la documentation est en cours d'indexation.)</translation> </message> @@ -32,80 +27,64 @@ <context> <name>QHelpCollectionHandler</name> <message> - <location filename="../tools/assistant/lib/qhelpcollectionhandler.cpp" line="+79"/> <source>The collection file '%1' is not set up yet!</source> <translation>Le fichier de collection '%1' n'est pas encore chargé !</translation> </message> <message> - <location line="+23"/> <source>Cannot load sqlite database driver!</source> <translatorcomment>driver ?</translatorcomment> <translation>Chargement du pilote de base de données sqlite impossible !</translation> </message> <message> - <location line="+11"/> - <location line="+49"/> <source>Cannot open collection file: %1</source> <translatorcomment>collection ?</translatorcomment> <translation>Impossible d'ouvrir le fichier collection : %1</translation> </message> <message> - <location line="-40"/> <source>Cannot create tables in file %1!</source> <translation>Impossible de créer les tables dans le fichier : %1 !</translation> </message> <message> - <location line="+16"/> <source>The collection file '%1' already exists!</source> <translation>Le fichier collection '%1' existe déjà !</translation> </message> <message> - <location line="+6"/> <source>Cannot create directory: %1</source> <translation>Impossible de créer le répertoire : %1</translation> </message> <message> - <location line="+23"/> <source>Cannot copy collection file: %1</source> <translation>Impossible de copier le fichier collection : %1</translation> </message> <message> - <location line="+119"/> <source>Unknown filter '%1'!</source> <translation>Filtre '%1' inconnu !</translation> </message> <message> - <location line="+55"/> <source>Cannot register filter %1!</source> <translation>Impossible d'enregistrer le filtre %1 !</translation> </message> <message> - <location line="+44"/> <source>Cannot open documentation file %1!</source> <translation>Impossible d'ouvrir le fichier de documentation %1 !</translation> </message> <message> - <location line="+6"/> <source>Invalid documentation file '%1'!</source> <translation>Fichier de documentation invalide : '%1' !</translation> </message> <message> - <location line="+34"/> <source>The namespace %1 was not registered!</source> <translation>L'espace de noms '%1' n'était pas référencé !</translation> </message> <message> - <location line="+120"/> <source>Namespace %1 already exists!</source> <translation>L'espace de noms %1 existe déjà !</translation> </message> <message> - <location line="+13"/> <source>Cannot register namespace '%1'!</source> <translation>Impossible d'enregistrer l'espace de noms '%1' !</translation> </message> <message> - <location line="+24"/> <source>Cannot open database '%1' to optimize!</source> <translation>Impossible d'ouvrir la base de données à optimiser '%1' !</translation> </message> @@ -113,7 +92,6 @@ <context> <name>QHelpDBReader</name> <message> - <location filename="../tools/assistant/lib/qhelpdbreader.cpp" line="+98"/> <source>Cannot open database '%1' '%2': %3</source> <extracomment>The placeholders are: %1 - The name of the database which cannot be opened %2 - The unique id for the connection %3 - The actual error string</extracomment> <translation>Impossible d'ouvrir la base de données '%1' '%2' : %3</translation> @@ -122,7 +100,10 @@ <context> <name>QHelpEngineCore</name> <message> - <location filename="../tools/assistant/lib/qhelpenginecore.cpp" line="+524"/> + <source>Cannot open documentation file %1: %2!</source> + <translation>Impossible d'ouvrir le fichier de documentation %1 : %2 !</translation> + </message> + <message> <source>The specified namespace does not exist!</source> <translation>L'espace de noms spécifié n'existe pas !</translation> </message> @@ -130,182 +111,210 @@ <context> <name>QHelpEngineCorePrivate</name> <message> - <location line="-402"/> <source>Cannot open documentation file %1: %2!</source> - <translation>Impossible d'ouvrir le fichier de documentation %1 : %2 !</translation> + <translation type="obsolete">Impossible d'ouvrir le fichier de documentation %1 : %2 !</translation> </message> </context> <context> <name>QHelpGenerator</name> <message> - <location filename="../tools/assistant/lib/qhelpgenerator.cpp" line="+157"/> <source>Invalid help data!</source> <translation>Données d'aide invalides !</translation> </message> <message> - <location line="+6"/> <source>No output file name specified!</source> <translation>Aucun nom de fichier de sortie spécifié !</translation> </message> <message> - <location line="+7"/> <source>The file %1 cannot be overwritten!</source> <translation>Le fichier %1 ne peut être écrasé !</translation> </message> <message> - <location line="+7"/> <source>Building up file structure...</source> <translation>Construction de la structure de fichiers en cours…</translation> </message> <message> - <location line="+11"/> <source>Cannot open data base file %1!</source> <translation>Impossible d'ouvrir le fichier de base de données %1 !</translation> </message> <message> - <location line="+11"/> <source>Cannot register namespace %1!</source> <translation>Impossible d'enregistrer l'espace de noms %1 !</translation> </message> <message> - <location line="+6"/> <source>Insert custom filters...</source> <translation>Insértion des filtres personnalisés…</translation> </message> <message> - <location line="+12"/> <source>Insert help data for filter section (%1 of %2)...</source> <translatorcomment>???</translatorcomment> <translation>Insertion des données d'aide pour la section filtre (%1 de %2)…</translation> </message> <message> - <location line="+18"/> <source>Documentation successfully generated.</source> <translation>Documentation générée avec succès.</translation> </message> <message> - <location line="+76"/> <source>Some tables already exist!</source> <translation>Certaines tables existent déjà !</translation> </message> <message> - <location line="+61"/> <source>Cannot create tables!</source> <translation>Impossible de créer les tables !</translation> </message> <message> - <location line="+86"/> <source>Cannot register virtual folder!</source> <translation>Impossible d'enregistrer le dossier virtuel !</translation> </message> <message> - <location line="+10"/> <source>Insert files...</source> <translation>Insertion des fichiers...</translation> </message> <message> - <location line="+42"/> <source>The referenced file %1 must be inside or within a subdirectory of (%2). Skipping it.</source> <translation>Le fichier référencé %1 doit être dans le dossier (%2) ou un de ses sous-dossiers. Fichier non pris en compte.</translation> </message> <message> - <location line="+7"/> <source>The file %1 does not exist! Skipping it.</source> <translation>Le fichier %1 n'existe pas ! Fichier non pris en compte.</translation> </message> <message> - <location line="+6"/> <source>Cannot open file %1! Skipping it.</source> <translation>Impossible d'ouvrir le fichier %1 ! Fichier non pris en compte.</translation> </message> <message> - <location line="+131"/> <source>The filter %1 is already registered!</source> <translation>Le filtre %1 est déjà enregistré !</translation> </message> <message> - <location line="+5"/> <source>Cannot register filter %1!</source> <translation>Impossible d'enregistrer le filtre %1 !</translation> </message> <message> - <location line="+24"/> <source>Insert indices...</source> <translation>Insertion des index…</translation> </message> <message> - <location line="+80"/> <source>Insert contents...</source> <translation>insertion du contenu…</translation> </message> <message> - <location line="+8"/> <source>Cannot insert contents!</source> <translation>Impossible d'insérer le contenu !</translation> </message> <message> - <location line="+12"/> <source>Cannot register contents!</source> <translation>Impossible de référencer le contenu !</translation> </message> + <message> + <source>File '%1' does not exist.</source> + <translation>Le fichier '%1' n'existe pas.</translation> + </message> + <message> + <source>File '%1' cannot be opened.</source> + <translation>Le fichier '%1' ne peut être ouvert.</translation> + </message> + <message> + <source>File '%1' contains an invalid link to file '%2'</source> + <translation>Le fichier '%1' contient un lien invalide vers le fichier '%2'</translation> + </message> + <message> + <source>Invalid links in HTML files.</source> + <translation>Liens invalides dans les fichiers HTML.</translation> + </message> +</context> +<context> + <name>QHelpProject</name> + <message> + <source>Unknown token.</source> + <translation>Identificateur inconnu.</translation> + </message> + <message> + <source>Unknown token. Expected "QtHelpProject"!</source> + <translation>Identificateur inconnu. "QtHelpProject" attendu !</translation> + </message> + <message> + <source>Error in line %1: %2</source> + <translation>Erreur à la ligne %1 : %2</translation> + </message> + <message> + <source>Virtual folder has invalid syntax.</source> + <translation>Syntaxe invalide pour le dossier virtuel.</translation> + </message> + <message> + <source>Namespace has invalid syntax.</source> + <translation>Syntaxe invalide pour l'espace de noms.</translation> + </message> + <message> + <source>Missing namespace in QtHelpProject.</source> + <translation>Espace de noms manquant dans QtHelpProject.</translation> + </message> + <message> + <source>Missing virtual folder in QtHelpProject</source> + <translation>Dossier virtuel manquant dans QtHelpProject</translation> + </message> + <message> + <source>Missing attribute in keyword at line %1.</source> + <translation>Attribut manquant pour le mot clé à la ligne %1.</translation> + </message> + <message> + <source>The input file %1 could not be opened!</source> + <translation>Le fichier source %1 n'a pas pu être ouvert !</translation> + </message> </context> <context> <name>QHelpSearchQueryWidget</name> <message> - <location filename="../tools/assistant/lib/qhelpsearchquerywidget.cpp" line="+411"/> <source>Search for:</source> <translation>Rechercher :</translation> </message> <message> - <location line="+5"/> <source>Previous search</source> <translation>Recherche précédente</translation> </message> <message> - <location line="+4"/> <source>Next search</source> <translation>Recherche suivante</translation> </message> <message> - <location line="+2"/> <source>Search</source> <translation>Recherche</translation> </message> <message> - <location line="+20"/> <source>Advanced search</source> <translation>Recherche avancée</translation> </message> <message> - <location line="+18"/> <source>words <B>similar</B> to:</source> <translation>mots <B>semblables</B> à :</translation> </message> <message> - <location line="+6"/> <source><B>without</B> the words:</source> <translation><B>sans</B> les mots :</translation> </message> <message> - <location line="+6"/> <source>with <B>exact phrase</B>:</source> <translation>avec la <B>phrase exacte</B> :</translation> </message> <message> - <location line="+6"/> <source>with <B>all</B> of the words:</source> <translation>avec <B>tous</B> les mots :</translation> </message> <message> - <location line="+6"/> <source>with <B>at least one</B> of the words:</source> <translation>avec <B>au moins un</B> des mots :</translation> </message> </context> <context> <name>QHelpSearchResultWidget</name> + <message numerus="yes"> + <source>%1 - %2 of %n Hits</source> + <translation> + <numerusform>%1 - %2 de %n résultat</numerusform> + <numerusform>%1 - %2 de %n résultats</numerusform> + </translation> + </message> <message> - <location filename="../tools/assistant/lib/qhelpsearchresultwidget.cpp" line="+235"/> <source>0 - 0 of 0 Hits</source> <translation>0 - 0 de 0 résultats</translation> </message> @@ -313,63 +322,52 @@ <context> <name>QHelpSearchResultWidgetPrivate</name> <message> - <location line="-61"/> <source>%1 - %2 of %3 Hits</source> - <translation>%1 - %2 de %3 résultats</translation> + <translation type="obsolete">%1 - %2 de %3 résultats</translation> </message> </context> <context> <name>QObject</name> <message> - <location filename="../tools/assistant/lib/qhelp_global.h" line="+83"/> <source>Untitled</source> - <translation>Sans titre</translation> + <translation type="obsolete">Sans titre</translation> </message> <message> - <location filename="../tools/assistant/lib/qhelpprojectdata.cpp" line="+85"/> <source>Unknown token.</source> <translatorcomment>contexte peu clair...</translatorcomment> - <translation>Identificateur inconnu.</translation> + <translation type="obsolete">Identificateur inconnu.</translation> </message> <message> - <location line="+13"/> <source>Unknown token. Expected "QtHelpProject"!</source> - <translation>Identificateur inconnu. "QtHelpProject" attendu !</translation> + <translation type="obsolete">Identificateur inconnu. "QtHelpProject" attendu !</translation> </message> <message> - <location line="+5"/> <source>Error in line %1: %2</source> - <translation>Erreur à la ligne %1 : %2</translation> + <translation type="obsolete">Erreur à la ligne %1 : %2</translation> </message> <message> - <location line="+13"/> <source>A virtual folder must not contain a '/' character!</source> - <translation>Un dossier virtuel ne doit pas contenir le caractère '/' !</translation> + <translation type="obsolete">Un dossier virtuel ne doit pas contenir le caractère '/' !</translation> </message> <message> - <location line="+4"/> <source>A namespace must not contain a '/' character!</source> - <translation>Un espace de noms ne doit pas contenir le caractère '/' !</translation> + <translation type="obsolete">Un espace de noms ne doit pas contenir le caractère '/' !</translation> </message> <message> - <location line="+16"/> <source>Missing namespace in QtHelpProject.</source> - <translation>Espace de noms manquant dans QtHelpProject.</translation> + <translation type="obsolete">Espace de noms manquant dans QtHelpProject.</translation> </message> <message> - <location line="+2"/> <source>Missing virtual folder in QtHelpProject</source> - <translation>Dossier virtuel manquant dans QtHelpProject</translation> + <translation type="obsolete">Dossier virtuel manquant dans QtHelpProject</translation> </message> <message> - <location line="+88"/> <source>Missing attribute in keyword at line %1.</source> - <translation>Attribut manquant pour le mot clé à la ligne %1.</translation> + <translation type="obsolete">Attribut manquant pour le mot clé à la ligne %1.</translation> </message> <message> - <location line="+123"/> <source>The input file %1 could not be opened!</source> - <translation>Le fichier source %1 n'a pas pu être ouvert !</translation> + <translation type="obsolete">Le fichier source %1 n'a pas pu être ouvert !</translation> </message> </context> </TS> -- cgit v0.12 From 4fd04190ab3800fde261293acd4bcf11cf449dee Mon Sep 17 00:00:00 2001 From: qCaro <qt-info@nokia.com> Date: Thu, 1 Jul 2010 14:50:18 +0200 Subject: Some more french translations. Reviewed-by: Pierre --- translations/qt_fr.ts | 307 +++++++++++++++++++++++++------------------------- 1 file changed, 156 insertions(+), 151 deletions(-) diff --git a/translations/qt_fr.ts b/translations/qt_fr.ts index 2a4135b..56a9e0e 100644 --- a/translations/qt_fr.ts +++ b/translations/qt_fr.ts @@ -1706,7 +1706,7 @@ en </message> <message> <source>Component elements may not contain properties other than id</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les éléments du composant ne peuvent pas contenir des propriétés autres que id</translation> </message> <message> <source>Invalid component id specification</source> @@ -1718,167 +1718,167 @@ en </message> <message> <source>Invalid component body specification</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Le corps de la spécification du composant n'est pas valide</translation> </message> <message> <source>Component objects cannot declare new properties.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les objets composants ne peuvent pas déclarer de nouvelles propriétés.</translation> </message> <message> <source>Component objects cannot declare new signals.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les objets composants ne peuvent pas déclarer de nouveaux signaux.</translation> </message> <message> <source>Component objects cannot declare new functions.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les objets composants ne peuvent pas déclarer de nouvelles fonctions.</translation> </message> <message> <source>Cannot create empty component specification</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de créer une spécification du composant vide</translation> </message> <message> <source>Incorrectly specified signal assignment</source> - <translation type="unfinished"></translation> + <translation type="unfinished">L'affectation du signal est ncorrectement spécifiée</translation> </message> <message> <source>Cannot assign a value to a signal (expecting a script to be run)</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner une valeur à un signal (celà exige d'éxécuter un script)</translation> </message> <message> <source>Empty signal assignment</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Signal d'affectation vide</translation> </message> <message> <source>Empty property assignment</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Propriété d'affectation vide</translation> </message> <message> <source>Attached properties cannot be used here</source> - <translation type="unfinished"></translation> + <translation type="unfinished">La configuration spécifiée ne peut être utilisée.ici</translation> </message> <message> <source>Non-existent attached object</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Objet attaché non existant</translation> </message> <message> <source>Invalid attached object assignment</source> - <translation type="unfinished"></translation> + <translation type="unfinished">L'affectation de l'objet attaché est invalide</translation> </message> <message> <source>Cannot assign to non-existent default property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'attacher à une propriété par défaut non existante</translation> </message> <message> <source>Cannot assign to non-existent property "%1"</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'attacher à une propriété non existante "%1"</translation> </message> <message> <source>Invalid use of namespace</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Utilisation invalide d'espace de noms</translation> </message> <message> <source>Not an attached property name</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Ce n'est pas un nom de propriété attachée</translation> </message> <message> <source>Invalid use of id property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Utilisation invalide de la propriété id</translation> </message> <message> <source>Property has already been assigned a value</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Une valeur a déjà été attribuée à la propriété</translation> </message> <message> <source>Invalid grouped property access</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Accès invalide à une propriété groupée</translation> </message> <message> <source>Cannot assign a value directly to a grouped property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner directement une valeur à une propriété groupée</translation> </message> <message> <source>Invalid property use</source> - <translation type="unfinished"></translation> + <translation type="unfinished">La propriété utilisée est invalide</translation> </message> <message> <source>Property assignment expected</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Propriété d'affectation attendue</translation> </message> <message> <source>Single property assignment expected</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Une seule propriété d'affectation est attendue</translation> </message> <message> <source>Unexpected object assignment</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Affectation d'objet innatendue</translation> </message> <message> <source>Cannot assign object to list</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner un objet à une liste</translation> </message> <message> <source>Can only assign one binding to lists</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Un seul lien peut être assigné à des listes</translation> </message> <message> <source>Cannot assign primitives to lists</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner des primitives à des listes</translation> </message> <message> <source>Cannot assign multiple values to a script property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner plusieurs valeurs à une propriété de script</translation> </message> <message> <source>Invalid property assignment: script expected</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Propriété d'affectation invalide: script attendu</translation> </message> <message> <source>Cannot assign object to property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner un objet à une propriété</translation> </message> <message> <source>"%1" cannot operate on "%2"</source> - <translation type="unfinished"></translation> + <translation type="unfinished">"%1" ne peut pas fonctionner sur "%2"</translation> </message> <message> <source>Duplicate default property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Propriété par défaut en double</translation> </message> <message> <source>Duplicate property name</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Nom de propriété en double</translation> </message> <message> <source>Property names cannot begin with an upper case letter</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les noms des propriétés ne peuvent pas commencer par une majuscule</translation> </message> <message> <source>Duplicate signal name</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Nom de signal en double</translation> </message> <message> <source>Signal names cannot begin with an upper case letter</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les noms de signaux ne peuvent pas commencer par une majuscule</translation> </message> <message> <source>Duplicate method name</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Nom de méthode en double</translation> </message> <message> <source>Method names cannot begin with an upper case letter</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les noms des méthodes ne peuvent pas commencer par une majuscule</translation> </message> <message> <source>Property value set multiple times</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Valeur de propriété attribuée plusieurs fois</translation> </message> <message> <source>Invalid property nesting</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Propriété d'emboîtement invalide</translation> </message> <message> <source>Cannot override FINAL property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de remplacer la propriété FINAL</translation> </message> <message> <source>Invalid property type</source> @@ -1890,177 +1890,178 @@ en </message> <message> <source>IDs cannot start with an uppercase letter</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les IDs ne peuvent pas commencer par une majuscule</translation> </message> <message> <source>IDs must start with a letter or underscore</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les IDs doivent commencer par une lettre ou un souligné</translation> </message> <message> <source>IDs must contain only letters, numbers, and underscores</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Les IDs ne peuvent contenir que des lettres, des nombres ou des soulignés</translation> </message> <message> <source>ID illegally masks global JavaScript property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">ID masque illégalement la propriété JavaScript globale</translation> </message> <message> <source>No property alias location</source> - <translation type="unfinished"></translation> + <translatorcomment>??</translatorcomment> + <translation type="unfinished">La propriété de l'alias n'a pas d'emplacement</translation> </message> <message> <source>Invalid alias location</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Emplacement d'alias invalide</translation> </message> <message> <source>Invalid alias reference. An alias reference must be specified as <id> or <id>.<property></source> - <translation type="unfinished"></translation> + <translation type="unfinished">Référence d'alias invalide. La référence d'alias doit être spécifiée comme <id> ou <id>.<property></translation> </message> <message> <source>Invalid alias reference. Unable to find id "%1"</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Référence d'alias invalide. Impossible de trouver l'id "%1"</translation> </message> </context> <context> <name>QDeclarativeComponent</name> <message> <source>Invalid empty URL</source> - <translation type="unfinished"></translation> + <translation type="unfinished">URL vide non valide</translation> </message> </context> <context> <name>QDeclarativeCompositeTypeManager</name> <message> <source>Resource %1 unavailable</source> - <translation type="unfinished"></translation> + <translation type="unfinished">La ressource %1 n'est pas disponible</translation> </message> <message> <source>Namespace %1 cannot be used as a type</source> - <translation type="unfinished"></translation> + <translation type="unfinished">L'espace de noms %1 ne peut pas être utilisé comme un type</translation> </message> <message> <source>%1 %2</source> - <translation type="unfinished">%1% {1 %2?}</translation> + <translation>%1 %2</translation> </message> <message> <source>Type %1 unavailable</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Le type %1 n'est pas disponible</translation> </message> </context> <context> <name>QDeclarativeConnections</name> <message> <source>Cannot assign to non-existent property "%1"</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Imposible d'assigner à la propriété inexistante "%1"</translation> </message> <message> <source>Connections: nested objects not allowed</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Connexions: les éléments imbriqués ne sont pas autorisés</translation> </message> <message> <source>Connections: syntax error</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Connexions: erreur de syntaxe</translation> </message> <message> <source>Connections: script expected</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Connexions: script attendu</translation> </message> </context> <context> <name>QDeclarativeEngine</name> <message> <source>executeSql called outside transaction()</source> - <translation type="unfinished"></translation> + <translation type="unfinished">executeSql a été 1.appelé en dehors de transaction()</translation> </message> <message> <source>Read-only Transaction</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Transaction en lecture seule</translation> </message> <message> <source>Version mismatch: expected %1, found %2</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Version incompatible:%1 attendue, %2 trouvée</translation> </message> <message> <source>SQL transaction failed</source> - <translation type="unfinished"></translation> + <translation type="unfinished">la transaction SQL a échouée</translation> </message> <message> <source>transaction: missing callback</source> - <translation type="unfinished"></translation> + <translation type="unfinished">transaction: le rappel est absent</translation> </message> <message> <source>SQL: database version mismatch</source> - <translation type="unfinished"></translation> + <translation type="unfinished">SQL: la version de la base de données est incompatible</translation> </message> </context> <context> <name>QDeclarativeFlipable</name> <message> <source>front is a write-once property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">avant est une propriété à écriture unique</translation> </message> <message> <source>back is a write-once property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">arrière est une propriété à écriture unique</translation> </message> </context> <context> <name>QDeclarativeImportDatabase</name> <message> <source>module "%1" definition "%2" not readable</source> - <translation type="unfinished"></translation> + <translation type="unfinished">La définition "%2" du module "%1% n'est pas lisible</translation> </message> <message> <source>plugin cannot be loaded for module "%1": %2</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de charger le plugin pour le module "%1": %2</translation> </message> <message> <source>module "%1" plugin "%2" not found</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Le plugin "%2" du module "%1" n'a pas été trouvé</translation> </message> <message> <source>module "%1" version %2.%3 is not installed</source> - <translation type="unfinished"></translation> + <translation type="unfinished">la version %2.%3 du module "%1" n'est pas installée</translation> </message> <message> <source>module "%1" is not installed</source> - <translation type="unfinished"></translation> + <translation type="unfinished">le module "%1" n'est pas installé</translation> </message> <message> <source>"%1": no such directory</source> - <translation type="unfinished"></translation> + <translation type="unfinished">"%1": le répertoire n'existe pas</translation> </message> <message> <source>import "%1" has no qmldir and no namespace</source> - <translation type="unfinished"></translation> + <translation type="unfinished">l'importation "%1" n'a pas de qmldir ni d'espace de noms</translation> </message> <message> <source>- %1 is not a namespace</source> - <translation type="unfinished"></translation> + <translation type="unfinished">- %1 n'est pas un espace de noms</translation> </message> <message> <source>- nested namespaces not allowed</source> - <translation type="unfinished"></translation> + <translation type="unfinished">- les espaces de noms imbriqués ne sont pas autorisés</translation> </message> <message> <source>local directory</source> - <translation type="unfinished"></translation> + <translation type="unfinished">répertoire local</translation> </message> <message> <source>is ambiguous. Found in %1 and in %2</source> - <translation type="unfinished"></translation> + <translation type="unfinished">est ambigu. Trouvé dans %1 et dans %2</translation> </message> <message> <source>is ambiguous. Found in %1 in version %2.%3 and %4.%5</source> - <translation type="unfinished"></translation> + <translation type="unfinished">est ambigu. Trouvé dans %1 dans les versions %2.%3 et %4.%5</translation> </message> <message> <source>is instantiated recursively</source> - <translation type="unfinished"></translation> + <translation type="unfinished">est instancié récursivement</translation> </message> <message> <source>is not a type</source> - <translation type="unfinished"></translation> + <translation type="unfinished">n'est pas un type</translation> </message> </context> <context> @@ -2074,328 +2075,332 @@ en <name>QDeclarativeKeysAttached</name> <message> <source>Keys is only available via attached properties</source> - <translation type="unfinished"></translation> + <translatorcomment>Keys, a verifier</translatorcomment> + <translation type="unfinished">Keys est disponible uniquement via les propriétés attachées</translation> </message> </context> <context> <name>QDeclarativeListModel</name> <message> <source>remove: index %1 out of range</source> - <translation type="unfinished"></translation> + <translation type="unfinished">supprimer: l'inder %1 est hors de la plage de valeurs admissible</translation> </message> <message> <source>insert: value is not an object</source> - <translation type="unfinished"></translation> + <translation type="unfinished">insérer: une valeur n'est pas un objet</translation> </message> <message> <source>insert: index %1 out of range</source> - <translation type="unfinished"></translation> + <translation type="unfinished">insérer: l'inder %1 est hors de la plage de valeurs admissible</translation> </message> <message> <source>move: out of range</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Déplacer: hors de la plage de valeurs admissible</translation> </message> <message> <source>append: value is not an object</source> - <translation type="unfinished"></translation> + <translation type="unfinished">ajouter: une valeur n'est pas un objet</translation> </message> <message> <source>set: value is not an object</source> - <translation type="unfinished"></translation> + <translation type="unfinished">attribuer: une valeur n'est pas un objet</translation> </message> <message> <source>set: index %1 out of range</source> - <translation type="unfinished"></translation> + <translation type="unfinished">attribuer: l'index %1 est hors de la plage de valeurs admissible</translation> </message> <message> <source>ListElement: cannot contain nested elements</source> - <translation type="unfinished"></translation> + <translation type="unfinished">ListElement: ne peut pas contenir des éléments imbriqués</translation> </message> <message> <source>ListElement: cannot use reserved "id" property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">ListElement: ne peut pas utiliser la propriété réservée "id"</translation> </message> <message> <source>ListElement: cannot use script for property value</source> - <translation type="unfinished"></translation> + <translation type="unfinished">ListElement: ne peut pas utiliser script comme valeur pour une propriété</translation> </message> <message> <source>ListModel: undefined property '%1'</source> - <translation type="unfinished"></translation> + <translation type="unfinished">ListModel: propriété indéfinie '%1'</translation> </message> </context> <context> <name>QDeclarativeLoader</name> <message> <source>Loader does not support loading non-visual elements.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Le chargeur n'est pas compatible avec le chargement d'éléments non-visuels.</translation> </message> </context> <context> <name>QDeclarativeParentAnimation</name> <message> <source>Unable to preserve appearance under complex transform</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de conserver l'aspect lors d'une transformation complexe</translation> </message> <message> <source>Unable to preserve appearance under non-uniform scale</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle non uniforme</translation> </message> <message> <source>Unable to preserve appearance under scale of 0</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle égale à 0</translation> </message> </context> <context> <name>QDeclarativeParentChange</name> <message> <source>Unable to preserve appearance under complex transform</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de conserver l'aspect lors d'une transformation complexe</translation> </message> <message> <source>Unable to preserve appearance under non-uniform scale</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle non uniforme</translation> </message> <message> <source>Unable to preserve appearance under scale of 0</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle égale à 0</translation> </message> </context> <context> <name>QDeclarativeParser</name> <message> <source>Illegal unicode escape sequence</source> - <translation type="unfinished"></translation> + <translation type="unfinished">séquence d'échappement unicode illégale</translation> </message> <message> <source>Illegal character</source> - <translation type="unfinished"></translation> + <translation type="unfinished">caractère illégal</translation> </message> <message> <source>Unclosed string at end of line</source> - <translation type="unfinished"></translation> + <translation type="unfinished">chaîne de caractères non fermée en fin de ligne</translation> </message> <message> <source>Illegal escape squence</source> - <translation type="unfinished"></translation> + <translation type="unfinished">séquence d'échappement illégale</translation> </message> <message> <source>Unclosed comment at end of file</source> - <translation type="unfinished"></translation> + <translation type="unfinished">commentaire non fermé en fin de ligne</translation> </message> <message> <source>Illegal syntax for exponential number</source> - <translation type="unfinished"></translation> + <translation type="unfinished">syntaxe illégale pour un nombre exponentiel</translation> </message> <message> <source>Identifier cannot start with numeric literal</source> - <translation type="unfinished"></translation> + <translatorcomment>??? </translatorcomment> + <translation type="unfinished">impossible de commencer un identifiant par un littéral numérique</translation> </message> <message> <source>Unterminated regular expression literal</source> - <translation type="unfinished"></translation> + <translation type="unfinished">littéral non terminé pour l'expression régulière</translation> </message> <message> <source>Invalid regular expression flag '%0'</source> - <translation type="unfinished"></translation> + <translation type="unfinished">drapeau '%0' invalid pour l'expression régulière</translation> </message> <message> <source>Unterminated regular expression backslash sequence</source> - <translation type="unfinished"></translation> + <translation type="unfinished">séquence antislash non terminée pour l'expression régulière</translation> </message> <message> <source>Unterminated regular expression class</source> - <translation type="unfinished"></translation> + <translation type="unfinished">class non terminé pour l'expression régulière</translation> </message> <message> <source>Syntax error</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Erreur de syntaxe</translation> </message> <message> <source>Unexpected token `%1'</source> - <translation type="unfinished"></translation> + <translation type="unfinished">jeton inattendu '%1'</translation> </message> <message> <source>Expected token `%1'</source> - <translation type="unfinished"></translation> + <translation type="unfinished">jeton attendu '%1'</translation> </message> <message> <source>Property value set multiple times</source> - <translation type="unfinished"></translation> + <translation type="unfinished">valeur de propriété attribuée à plusieurs reprises</translation> </message> <message> <source>Expected type name</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Nom de type attendu</translation> </message> <message> <source>Invalid import qualifier ID</source> - <translation type="unfinished"></translation> + <translation type="unfinished">qualificatif ID d'importation invalide</translation> </message> <message> <source>Reserved name "Qt" cannot be used as an qualifier</source> - <translation type="unfinished"></translation> + <translation type="unfinished">"Qt" est un nom réservé et ne peut pas être utilisé comme qualificatif</translation> </message> <message> <source>Script import qualifiers must be unique.</source> - <translation type="unfinished"></translation> + <translatorcomment>??</translatorcomment> + <translation type="unfinished">Les qualificatifs d'importation de script doivent être uniques.</translation> </message> <message> <source>Script import requires a qualifier</source> - <translation type="unfinished"></translation> + <translation type="unfinished">L'importation de script exige un qualificatif</translation> </message> <message> <source>Library import requires a version</source> - <translation type="unfinished"></translation> + <translation type="unfinished">L'importation de bibliothèque exige une version</translation> </message> <message> <source>Expected parameter type</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Type de paramètre attendu</translation> </message> <message> <source>Invalid property type modifier</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Modificateur invalide pour le type de propriété</translation> </message> <message> <source>Unexpected property type modifier</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Modificateur innatendu pour le type de propriété</translation> </message> <message> <source>Expected property type</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Type de propriété attendue</translation> </message> <message> <source>Readonly not yet supported</source> - <translation type="unfinished"></translation> + <translation type="unfinished">La lecture seule n'est pas encore implémentée</translation> </message> <message> <source>JavaScript declaration outside Script element</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Déclaration JavaScript en edhors de l'élément Script</translation> </message> </context> <context> <name>QDeclarativePauseAnimation</name> <message> <source>Cannot set a duration of < 0</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'attribuer une durée < 0</translation> </message> </context> <context> <name>QDeclarativePixmapCache</name> <message> <source>Error decoding: %1: %2</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Erreur de décodage: %1: %2</translation> </message> <message> <source>Failed to get image from provider: %1</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'obtenir l'image du fournisseur: %1</translation> </message> <message> <source>Cannot open: %1</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'ouvrir: %1</translation> </message> <message> <source>Unknown Error loading %1</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Erreur de chargement inconnue: %1</translation> </message> </context> <context> <name>QDeclarativePropertyAnimation</name> <message> <source>Cannot set a duration of < 0</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'attribuer une durée < 0</translation> </message> </context> <context> <name>QDeclarativePropertyChanges</name> <message> <source>PropertyChanges does not support creating state-specific objects.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">PropertyChanges n'est pas compatible avec la création d'objets spécifiques à un état.</translation> </message> <message> <source>Cannot assign to non-existent property "%1"</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Ne peut pas assigner à la propriété inexistante "%1"</translation> </message> <message> <source>Cannot assign to read-only property "%1"</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Ne peut pas assigner à la propriété en lecture seule "%1"</translation> </message> </context> <context> <name>QDeclarativeTextInput</name> <message> <source>Could not load cursor delegate</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de charger le curseur délégué</translation> </message> <message> <source>Could not instantiate cursor delegate</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'instancier le curseur délégué</translation> </message> </context> <context> <name>QDeclarativeVME</name> <message> <source>Unable to create object of type %1</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de créer un objet de type %1</translation> </message> <message> <source>Cannot assign value %1 to property %2</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner la valeur %1 à la propriété %2</translation> </message> <message> <source>Cannot assign object type %1 with no default method</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner un objet de type %1 sans méthode défaut</translation> </message> <message> <source>Cannot connect mismatched signal/slot %1 %vs. %2</source> - <translation type="unfinished"></translation> + <translatorcomment>le vs a confirmer</translatorcomment> + <translation type="unfinished">Impossible de connecter le signal/slot %1 %vs. %2 pour cause d'incompatibilité</translation> </message> <message> <source>Cannot assign an object to signal property %1</source> - <translation type="unfinished"></translation> + <translation type="unfinished">NImpossible d'assigner un objet à la propriété %1 d'un signal</translation> </message> <message> <source>Cannot assign object to list</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner un objet à une liste</translation> </message> <message> <source>Cannot assign object to interface property</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'assigner un objet à la propriété d'une interface</translation> </message> <message> <source>Unable to create attached object</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible de créer un object attaché</translation> </message> <message> <source>Cannot set properties on %1 as it is null</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Impossible d'attribuer les propriétés à %1 car ce dernier est nul</translation> </message> </context> <context> <name>QDeclarativeVisualDataModel</name> <message> <source>Delegate component must be Item type.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Un composant délégué doit être de type Item.</translation> </message> </context> <context> <name>QDeclarativeXmlListModel</name> <message> <source>Qt was built without support for xmlpatterns</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Qt a été généré sans support pour xmlpatterns</translation> </message> </context> <context> <name>QDeclarativeXmlListModelRole</name> <message> <source>An XmlRole query must not start with '/'</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Une requête XmlRole ne doit pas commencer par '/'</translation> </message> </context> <context> <name>QDeclarativeXmlRoleList</name> <message> <source>An XmlListModel query must start with '/' or "//"</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Une requête XmlListModel doit commencer par '/' ou "//"</translation> </message> </context> <context> -- cgit v0.12 From 209c017333fea9827fd20c7f8d23721bd8a6ee43 Mon Sep 17 00:00:00 2001 From: Pierre Rossi <pierre.rossi@nokia.com> Date: Tue, 13 Jul 2010 11:22:38 +0200 Subject: Translation work for 4.7 validating and adding some french translations. Plus all the fixes from Gabriel's extensive review. Doc: Fix a typo Reviewed-by: gabi --- src/gui/widgets/qcombobox.cpp | 2 +- tools/linguist/phrasebooks/french.qph | 40 + translations/assistant_fr.ts | 577 +++++++++++++- translations/designer_fr.ts | 1397 ++++++++++++++++++++++++++++++++- translations/linguist_fr.ts | 619 +++++++++++++-- translations/qt_fr.ts | 793 ++++++++++--------- translations/qt_help_fr.ts | 89 ++- 7 files changed, 3003 insertions(+), 514 deletions(-) diff --git a/src/gui/widgets/qcombobox.cpp b/src/gui/widgets/qcombobox.cpp index dcc328f..917a325 100644 --- a/src/gui/widgets/qcombobox.cpp +++ b/src/gui/widgets/qcombobox.cpp @@ -910,7 +910,7 @@ QComboBox::QComboBox(bool rw, QWidget *parent, const char *name) interaction. The highlighted() signal is emitted when the user highlights an item in the combobox popup list. All three signals exist in two versions, one with a QString argument and one with an - \c int argument. If the user selectes or highlights a pixmap, only + \c int argument. If the user selects or highlights a pixmap, only the \c int signals are emitted. Whenever the text of an editable combobox is changed the editTextChanged() signal is emitted. diff --git a/tools/linguist/phrasebooks/french.qph b/tools/linguist/phrasebooks/french.qph index 47cb306..1884ed3 100644 --- a/tools/linguist/phrasebooks/french.qph +++ b/tools/linguist/phrasebooks/french.qph @@ -1450,4 +1450,44 @@ <source>New</source> <target>Créer</target> </phrase> +<phrase> + <source>Play</source> + <target>Lecture</target> +</phrase> +<phrase> + <source>Slider</source> + <target>Barre de défilement</target> +</phrase> +<phrase> + <source>&Restore</source> + <target>&Restaurer</target> +</phrase> +<phrase> + <source>&Move</source> + <target>&Déplacer</target> +</phrase> +<phrase> + <source>New</source> + <target>Créer</target> +</phrase> +<phrase> + <source>Play</source> + <target>Lecture</target> +</phrase> +<phrase> + <source>&Redo</source> + <target>&Refaire</target> +</phrase> +<phrase> + <source>Raised</source> + <target>Bombé</target> +</phrase> +<phrase> + <source>Sunken</source> + <target>Enfoncé</target> +</phrase> +<phrase> + <source>Run:</source> + <target>Exécution :</target> +</phrase> </QPH> diff --git a/translations/assistant_fr.ts b/translations/assistant_fr.ts index e8f5fd1..e117663 100644 --- a/translations/assistant_fr.ts +++ b/translations/assistant_fr.ts @@ -4,6 +4,7 @@ <context> <name>AboutDialog</name> <message> + <location filename="../tools/assistant/tools/assistant/aboutdialog.cpp" line="+117"/> <source>&Close</source> <translation>&Fermer</translation> </message> @@ -11,51 +12,129 @@ <context> <name>AboutLabel</name> <message> + <location line="-15"/> <source>Warning</source> <translation>Avertissement</translation> </message> <message> + <location line="+1"/> <source>Unable to launch external application. </source> <translation>Impossible d'ouvrir l'application externe. </translation> </message> <message> + <location line="+0"/> <source>OK</source> <translation>OK</translation> </message> </context> <context> + <name>Assistant</name> + <message> + <location filename="../tools/assistant/tools/assistant/main.cpp" line="+177"/> + <source>Error registering documentation file '%1': %2</source> + <translation>Erreur lors de l'enregistrement du fichier de documentation '%1' : %2</translation> + </message> + <message> + <location line="+39"/> + <source>Error: %1</source> + <translation>Erreur : %1</translation> + </message> + <message> + <location line="+42"/> + <source>Could not register documentation file +%1 + +Reason: +%2</source> + <translation>Impossible d'enregistrer le fichier de documentation +%1 + +Raison : +%2</translation> + </message> + <message> + <location line="+6"/> + <source>Documentation successfully registered.</source> + <translation>Documentation enregistrée avec succès.</translation> + </message> + <message> + <location line="+12"/> + <source>Could not unregister documentation file +%1 + +Reason: +%2</source> + <translation>Impossible de retirer le fichier de documentation +%1 + +Raison : +%2</translation> + </message> + <message> + <location line="+8"/> + <source>Documentation successfully unregistered.</source> + <translation>Documentation retirée avec succès.</translation> + </message> + <message> + <location line="+55"/> + <source>Error reading collection file '%1': %2.</source> + <translation>Erreur lors de la lecture du fichier de collection '%1' : %2.</translation> + </message> + <message> + <location line="+11"/> + <source>Error creating collection file '%1': %2.</source> + <translation>Erreur lors de la création du fichier de collection '%1' : %2.</translation> + </message> + <message> + <location line="+7"/> + <source>Error reading collection file '%1': %2</source> + <translation>Erreur lors de la lecture du fichier de collection '%1' : %2</translation> + </message> + <message> + <location line="+53"/> + <source>Cannot load sqlite database driver!</source> + <translation>Impossible de charger le driver de la base de données sqlite !</translation> + </message> +</context> +<context> <name>BookmarkDialog</name> <message> + <location filename="../tools/assistant/tools/assistant/bookmarkdialog.ui"/> <source>Add Bookmark</source> <translation>Ajouter un signet</translation> </message> <message> + <location/> <source>Bookmark:</source> <translation>Signet :</translation> </message> <message> + <location/> <source>Add in Folder:</source> <translation>Ajouter dans le dossier :</translation> </message> <message> + <location/> <source>+</source> <translation>+</translation> </message> <message> + <location/> <source>New Folder</source> <translation>Nouveau dossier</translation> </message> <message> <source>Bookmarks</source> - <translation>Signets</translation> + <translation type="obsolete">Signets</translation> </message> <message> <source>Delete Folder</source> - <translation>Supprimer le dossier</translation> + <translation type="obsolete">Supprimer le dossier</translation> </message> <message> + <location filename="../tools/assistant/tools/assistant/bookmarkdialog.cpp" line="+227"/> <source>Rename Folder</source> <translation>Renommer le dossier</translation> </message> @@ -64,106 +143,360 @@ <name>BookmarkManager</name> <message> <source>Bookmarks</source> - <translation>Signets</translation> + <translation type="obsolete">Signets</translation> + </message> + <message> + <location filename="../tools/assistant/tools/assistant/bookmarkmanager.cpp" line="+151"/> + <source>Untitled</source> + <translation>Sans titre</translation> </message> <message> + <location line="+65"/> <source>Remove</source> <translation>Suppression</translation> </message> <message> + <location line="+1"/> <source>You are going to delete a Folder, this will also<br>remove it's content. Are you sure to continue?</source> <translation>Vous allez supprimer un dossier, ceci va aussi<br>supprimer son contenu. Voulez-vous continuer ?</translation> </message> <message> + <location line="+148"/> + <source>Manage Bookmarks...</source> + <translation>Gestion des signets...</translation> + </message> + <message> + <location line="+3"/> + <source>Add Bookmark...</source> + <translation>Ajouter un signet...</translation> + </message> + <message> + <location line="+1"/> + <source>Ctrl+D</source> + <translation>Ctrl+D</translation> + </message> + <message> + <location line="+68"/> + <source>Delete Folder</source> + <translation>Supprimer le dossier</translation> + </message> + <message> + <location line="+1"/> + <source>Rename Folder</source> + <translation>Renommer le dossier</translation> + </message> + <message> + <location line="+2"/> + <source>Show Bookmark</source> + <translation>Afficher le signet</translation> + </message> + <message> + <location line="+1"/> + <source>Show Bookmark in New Tab</source> + <translation>Afficher le signet dans un nouvel onglet</translation> + </message> + <message> + <location line="+2"/> + <source>Delete Bookmark</source> + <translation>Supprimer le signet</translation> + </message> + <message> + <location line="+1"/> + <source>Rename Bookmark</source> + <translation>Renommer le signet</translation> + </message> + <message> <source>New Folder</source> - <translation>Nouveau dossier</translation> + <translation type="obsolete">Nouveau dossier</translation> </message> </context> <context> - <name>BookmarkWidget</name> + <name>BookmarkManagerWidget</name> + <message> + <location filename="../tools/assistant/tools/assistant/bookmarkmanagerwidget.ui"/> + <source>Manage Bookmarks</source> + <translation>Gestion des signets</translation> + </message> + <message> + <location/> + <source>Search:</source> + <translation>Recherche :</translation> + </message> + <message> + <location/> + <location filename="../tools/assistant/tools/assistant/bookmarkmanagerwidget.cpp" line="+258"/> + <source>Remove</source> + <translation>Supprimer</translation> + </message> + <message> + <location/> + <source>Import and Backup</source> + <translation>Importation et sauvegarde</translation> + </message> + <message> + <location/> + <location filename="../tools/assistant/tools/assistant/bookmarkmanagerwidget.cpp" line="-30"/> + <source>OK</source> + <translation>OK</translation> + </message> + <message> + <location filename="../tools/assistant/tools/assistant/bookmarkmanagerwidget.cpp" line="-142"/> + <source>Import...</source> + <translation>Importer...</translation> + </message> + <message> + <location line="+1"/> + <source>Export...</source> + <translation>Exporter...</translation> + </message> + <message> + <location line="+112"/> + <source>Open File</source> + <translation>Ouvrir un fichier</translation> + </message> <message> + <location line="+1"/> + <location line="+16"/> + <source>Files (*.xbel)</source> + <translation>Fichiers (*.xbel)</translation> + </message> + <message> + <location line="-1"/> + <source>Save File</source> + <translation>Enregistrer le fichier</translation> + </message> + <message> + <location line="+12"/> + <source>Qt Assistant</source> + <translation>Qt Assistant</translation> + </message> + <message> + <location line="+1"/> + <source>Unable to save bookmarks.</source> + <translation>Impossible de sauvegarder les signets.</translation> + </message> + <message> + <location line="+30"/> + <source>You are goingto delete a Folder, this will also<br> remove it's content. Are you sure to continue?</source> + <translation>Vous êtes sur le point de supprimer un dossier, ceci supprimera<br> également son contenu. Voulez-vous continuer ?</translation> + </message> + <message> + <location line="+28"/> <source>Delete Folder</source> <translation>Supprimer le dossier</translation> </message> <message> + <location line="+1"/> <source>Rename Folder</source> <translation>Renommer le dossier</translation> </message> <message> + <location line="+2"/> <source>Show Bookmark</source> <translation>Afficher le signet</translation> </message> <message> + <location line="+1"/> <source>Show Bookmark in New Tab</source> <translation>Afficher le signet dans un nouvel onglet</translation> </message> <message> + <location line="+2"/> <source>Delete Bookmark</source> <translation>Supprimer le signet</translation> </message> <message> + <location line="+1"/> <source>Rename Bookmark</source> <translation>Renommer le signet</translation> </message> +</context> +<context> + <name>BookmarkModel</name> + <message> + <location filename="../tools/assistant/tools/assistant/bookmarkmodel.cpp" line="+88"/> + <source>Name</source> + <translation>Nom</translation> + </message> + <message> + <location line="+0"/> + <source>Address</source> + <translation>Adresse</translation> + </message> <message> + <location line="+2"/> + <source>Bookmarks Menu</source> + <translation>Menu signets</translation> + </message> +</context> +<context> + <name>BookmarkWidget</name> + <message> + <source>Delete Folder</source> + <translation type="obsolete">Supprimer le dossier</translation> + </message> + <message> + <source>Rename Folder</source> + <translation type="obsolete">Renommer le dossier</translation> + </message> + <message> + <source>Show Bookmark</source> + <translation type="obsolete">Afficher le signet</translation> + </message> + <message> + <source>Show Bookmark in New Tab</source> + <translation type="obsolete">Afficher le signet dans un nouvel onglet</translation> + </message> + <message> + <source>Delete Bookmark</source> + <translation type="obsolete">Supprimer le signet</translation> + </message> + <message> + <source>Rename Bookmark</source> + <translation type="obsolete">Renommer le signet</translation> + </message> + <message> + <location filename="../tools/assistant/tools/assistant/bookmarkwidget.ui"/> <source>Filter:</source> <translation>Filtre :</translation> </message> <message> + <location/> <source>Add</source> <translation>Ajouter</translation> </message> <message> + <location/> <source>Remove</source> <translation>Retirer</translation> </message> + <message> + <location/> + <source>Bookmarks</source> + <translation>Signets</translation> + </message> </context> <context> <name>CentralWidget</name> <message> + <location filename="../tools/assistant/tools/assistant/centralwidget.cpp" line="+121"/> <source>Add new page</source> <translation>Créer une nouvelle page</translation> </message> <message> + <location line="+9"/> <source>Close current page</source> <translation>Fermer la page courante</translation> </message> <message> + <location line="+287"/> <source>Print Document</source> <translation>Imprimer le document</translation> </message> <message> + <location line="+126"/> + <location line="+2"/> <source>unknown</source> <translation>inconnu</translation> </message> <message> + <location line="+101"/> <source>Add New Page</source> <translation>Créer une nouvelle page</translation> </message> <message> + <location line="+3"/> <source>Close This Page</source> <translation>Fermer cette page</translation> </message> <message> + <location line="+3"/> <source>Close Other Pages</source> <translation>Fermer les autres pages</translation> </message> <message> + <location line="+5"/> <source>Add Bookmark for this Page...</source> <translation>Ajouter un signet pour cette page...</translation> </message> <message> + <location line="+264"/> <source>Search</source> <translation>Recherche</translation> </message> </context> <context> + <name>CmdLineParser</name> + <message> + <location filename="../tools/assistant/tools/assistant/cmdlineparser.cpp" line="+137"/> + <source>Unknown option: %1</source> + <translation>Option inconnue : %1</translation> + </message> + <message> + <location line="+33"/> + <source>The collection file '%1' does not exist.</source> + <translation>Le fichier de collection '%1' n'existe pas.</translation> + </message> + <message> + <location line="+3"/> + <source>Missing collection file.</source> + <translation>Fichier de collection manquant.</translation> + </message> + <message> + <location line="+13"/> + <source>Invalid URL '%1'.</source> + <translation>URL invalide '%1'.</translation> + </message> + <message> + <location line="+2"/> + <source>Missing URL.</source> + <translation>URL manquante.</translation> + </message> + <message> + <location line="+36"/> + <source>Unknown widget: %1</source> + <translation>Widget inconnu : %1</translation> + </message> + <message> + <location line="+2"/> + <source>Missing widget.</source> + <translation>Widget manquant.</translation> + </message> + <message> + <location line="+23"/> + <source>The Qt help file '%1' does not exist.</source> + <translation>Le fichier d'aide Qt '%1' n'existe pas.</translation> + </message> + <message> + <location line="+4"/> + <source>Missing help file.</source> + <translation>Fichier d'aide manquant.</translation> + </message> + <message> + <location line="+10"/> + <source>Missing filter argument.</source> + <translation>Argument de filtre manquant.</translation> + </message> + <message> + <location line="+20"/> + <source>Error</source> + <translation>Erreur</translation> + </message> + <message> + <location line="+2"/> + <source>Notice</source> + <translation>Avertissement</translation> + </message> +</context> +<context> <name>ContentWindow</name> <message> + <location filename="../tools/assistant/tools/assistant/contentwindow.cpp" line="+173"/> <source>Open Link</source> <translation>Ouvrir le lien</translation> </message> <message> + <location line="+1"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> @@ -171,10 +504,12 @@ <context> <name>FilterNameDialogClass</name> <message> + <location filename="../tools/assistant/tools/assistant/filternamedialog.ui"/> <source>Add Filter Name</source> <translation>Ajouter un filtre</translation> </message> <message> + <location/> <source>Filter Name:</source> <translation>Nom du filtre :</translation> </message> @@ -182,22 +517,26 @@ <context> <name>FindWidget</name> <message> + <location filename="../tools/assistant/tools/assistant/findwidget.cpp" line="+85"/> <source>Previous</source> <translation>Précédent</translation> </message> <message> + <location line="+6"/> <source>Next</source> <translation>Suivant</translation> </message> <message> + <location line="+5"/> <source>Case Sensitive</source> <translation>Sensible à la casse</translation> </message> <message> <source>Whole words</source> - <translation>Mots complets</translation> + <translation type="obsolete">Mots complets</translation> </message> <message> + <location line="+9"/> <source><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Search wrapped</source> <translation><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Recherche à partir du début</translation> </message> @@ -205,22 +544,27 @@ <context> <name>FontPanel</name> <message> + <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="+63"/> <source>Font</source> <translation>Police</translation> </message> <message> + <location line="+11"/> <source>&Writing system</source> <translation>&Système d'écriture</translation> </message> <message> + <location line="+3"/> <source>&Family</source> <translation>&Famille</translation> </message> <message> + <location line="+4"/> <source>&Style</source> <translation>&Style</translation> </message> <message> + <location line="+4"/> <source>&Point size</source> <translation>&Taille en points</translation> </message> @@ -228,32 +572,42 @@ <context> <name>HelpViewer</name> <message> + <location filename="../tools/assistant/tools/assistant/helpviewer_qwv.cpp" line="+260"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> <message> + <location filename="../tools/assistant/tools/assistant/helpviewer.cpp" line="+58"/> + <source><title>about:blank</title></source> + <translatorcomment>y'a t'il une autre traduction dans Firefox & cie ?</translatorcomment> + <translation><title>about:blank</title></translation> + </message> + <message> + <location line="+6"/> <source><title>Error 404...</title><div align="center"><br><br><h1>The page could not be found</h1><br><h3>'%1'</h3></div></source> <translation><title>Erreur 404...</title><div align="center"><br><br><h1>La page n'a pas pu être trouvée</h1><br><h3>'%1'</h3></div></translation> </message> <message> <source>Help</source> - <translation>Aide</translation> + <translation type="obsolete">Aide</translation> </message> <message> <source>Unable to launch external application. </source> - <translation>Impossible de lancer l'application externe. + <translation type="obsolete">Impossible de lancer l'application externe. </translation> </message> <message> <source>OK</source> - <translation>OK</translation> + <translation type="obsolete">OK</translation> </message> <message> + <location filename="../tools/assistant/tools/assistant/helpviewer_qtb.cpp" line="+230"/> <source>Copy &Link Location</source> <translation>Copier l'&adresse cible</translation> </message> <message> + <location line="+3"/> <source>Open Link in New Tab Ctrl+LMB</source> <translatorcomment>LMB? ← ouais exactement pareil...</translatorcomment> <translation>Ouvrir dans un nouvel onglet Ctrl+clic gauche</translation> @@ -262,14 +616,17 @@ <context> <name>IndexWindow</name> <message> + <location filename="../tools/assistant/tools/assistant/indexwindow.cpp" line="+68"/> <source>&Look for:</source> <translation>&Rechercher :</translation> </message> <message> + <location line="+74"/> <source>Open Link</source> <translation>Ouvrir le lien</translation> </message> <message> + <location line="+1"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> @@ -277,74 +634,97 @@ <context> <name>InstallDialog</name> <message> + <location filename="../tools/assistant/tools/assistant/installdialog.ui"/> + <location filename="../tools/assistant/tools/assistant/installdialog.cpp" line="+78"/> <source>Install Documentation</source> <translation>Installer la documentation</translation> </message> <message> + <location/> <source>Available Documentation:</source> <translation>Documentation disponible :</translation> </message> <message> + <location/> <source>Install</source> <translation>Installer</translation> </message> <message> + <location/> <source>Cancel</source> <translation>Annuler</translation> </message> <message> + <location/> <source>Close</source> <translation>Fermer</translation> </message> <message> + <location/> <source>Installation Path:</source> <translation>Chemin d'installation :</translation> </message> <message> + <location/> <source>...</source> - <translation>…</translation> + <translation>...</translation> </message> <message> + <location filename="../tools/assistant/tools/assistant/installdialog.cpp" line="+33"/> <source>Downloading documentation info...</source> - <translation>Téléchargement des informations de la documentation…</translation> + <translation>Téléchargement des informations de la documentation...</translation> </message> <message> + <location line="+51"/> <source>Download canceled.</source> <translation>Téléchargement annulé.</translation> </message> <message> + <location line="+28"/> + <location line="+79"/> + <location line="+27"/> <source>Done.</source> <translation>Terminé.</translation> </message> <message> + <location line="-91"/> <source>The file %1 already exists. Do you want to overwrite it?</source> <translation>Le fichier %1 existe déjà. Voulez-vous l'écraser ?</translation> </message> <message> + <location line="+11"/> <source>Unable to save the file %1: %2.</source> <translation>Impossible de sauver le fichier %1 : %2.</translation> </message> <message> + <location line="+8"/> <source>Downloading %1...</source> - <translation>Téléchargement de %1 en cours…</translation> + <translation>Téléchargement de %1 en cours...</translation> </message> <message> + <location line="+20"/> + <location line="+42"/> + <location line="+40"/> <source>Download failed: %1.</source> <translation>Échec du téléchargement : %1.</translation> </message> <message> + <location line="-72"/> <source>Documentation info file is corrupt!</source> <translation>Le fichier d'information de documentation est corrompu !</translation> </message> <message> + <location line="+37"/> <source>Download failed: Downloaded file is corrupted.</source> <translation>Échec du téléchargement : le fichier téléchargé est corrompu.</translation> </message> <message> + <location line="+2"/> <source>Installing documentation %1...</source> - <translation>Installation de la documentation %1…</translation> + <translation>Installation de la documentation %1...</translation> </message> <message> + <location line="+23"/> <source>Error while installing documentation: %1</source> <translation>Erreur durant l'installation de la documentation : @@ -354,239 +734,310 @@ <context> <name>MainWindow</name> <message> + <location filename="../tools/assistant/tools/assistant/mainwindow.cpp" line="+123"/> + <location line="+369"/> <source>Index</source> <translation>Index</translation> </message> <message> + <location line="-363"/> + <location line="+361"/> <source>Contents</source> <translation>Sommaire</translation> </message> <message> + <location line="-354"/> + <location line="+358"/> <source>Bookmarks</source> <translation>Signets</translation> </message> <message> + <location line="-336"/> + <location line="+680"/> + <location line="+284"/> <source>Qt Assistant</source> <translation>Qt Assistant</translation> </message> <message> <source>Unfiltered</source> - <translation>Non-filtré</translation> + <translation type="obsolete">Non-filtré</translation> </message> <message> + <location line="-772"/> <source>Looking for Qt Documentation...</source> - <translation>Recherche la documentation de Qt…</translation> + <translation>Recherche la documentation de Qt...</translation> </message> <message> + <location line="+60"/> <source>&File</source> <translation>&Fichier</translation> </message> <message> + <location line="+7"/> <source>Page Set&up...</source> - <translation>&Mise en page…</translation> + <translation>&Mise en page...</translation> </message> <message> + <location line="+2"/> <source>Print Preview...</source> - <translation>Aperçu avant impression…</translation> + <translation>Aperçu avant impression...</translation> </message> <message> + <location line="+3"/> <source>&Print...</source> - <translation>&Imprimer…</translation> + <translation>&Imprimer...</translation> </message> <message> + <location line="-10"/> <source>New &Tab</source> <translation>Nouvel ongle&t</translation> </message> <message> + <location line="+17"/> <source>&Close Tab</source> <translation>&Fermer l'onglet</translation> </message> <message> + <location line="+5"/> <source>&Quit</source> <translation>&Quitter</translation> </message> <message> + <location line="+3"/> + <source>CTRL+Q</source> + <translation>CTRL+Q</translation> + </message> + <message> + <location line="+5"/> <source>&Edit</source> <translation>&Édition</translation> </message> <message> + <location line="+1"/> <source>&Copy selected Text</source> <translation>&Copier le texte selectionné</translation> </message> <message> + <location line="+8"/> <source>&Find in Text...</source> - <translation>&Rechercher dans le texte…</translation> + <translation>&Rechercher dans le texte...</translation> </message> <message> + <location line="+2"/> <source>&Find</source> <translation>&Rechercher</translation> </message> <message> + <location line="+4"/> <source>Find &Next</source> <translation>Rechercher le suiva&nt</translation> </message> <message> + <location line="+4"/> <source>Find &Previous</source> <translation>Rechercher le &précédent</translation> </message> <message> + <location line="+5"/> <source>Preferences...</source> - <translation>Préférences…</translation> + <translation>Préférences...</translation> </message> <message> + <location line="+3"/> <source>&View</source> <translation>&Affichage</translation> </message> <message> + <location line="+1"/> <source>Zoom &in</source> <translation>Zoom &avant</translation> </message> <message> + <location line="+6"/> <source>Zoom &out</source> <translation>Zoom a&rrière</translation> </message> <message> + <location line="+6"/> <source>Normal &Size</source> <translation>&Taille normale</translation> </message> <message> + <location line="+4"/> <source>Ctrl+0</source> <translation>Ctrl+0</translation> </message> <message> + <location line="+5"/> <source>ALT+C</source> <translation>ALT+C</translation> </message> <message> + <location line="+2"/> <source>ALT+I</source> <translation>ALT+I</translation> </message> <message> + <location line="+2"/> <source>ALT+O</source> <translation>ALT+O</translation> </message> <message> + <location line="+1"/> <source>Search</source> <translation>Recherche</translation> </message> <message> + <location line="+1"/> <source>ALT+S</source> <translation>ALT+S</translation> </message> <message> + <location line="+2"/> <source>&Go</source> <translation>A&ller</translation> </message> <message> + <location line="+1"/> <source>&Home</source> <translation>&Accueil</translation> </message> <message> + <location line="+1"/> <source>ALT+Home</source> <translation>ALT+Home</translation> </message> <message> + <location line="+3"/> <source>&Back</source> <translation>&Précédent</translation> </message> <message> + <location line="+5"/> <source>&Forward</source> <translation>&Suivant</translation> </message> <message> + <location line="+6"/> <source>Sync with Table of Contents</source> <translation>Synchroniser la table des matières</translation> </message> <message> + <location line="+2"/> <source>Sync</source> <translation>Rafraîchir</translation> </message> <message> + <location line="+5"/> <source>Next Page</source> <translation>Page suivante</translation> </message> <message> + <location line="+1"/> <source>Ctrl+Alt+Right</source> <translation>Ctrl+Alt+Right</translation> </message> <message> + <location line="+3"/> <source>Previous Page</source> <translation>Page précédente</translation> </message> <message> + <location line="+1"/> <source>Ctrl+Alt+Left</source> <translation>Ctrl+Alt+Left</translation> </message> <message> + <location line="+4"/> <source>&Bookmarks</source> <translation>Si&gnets</translation> </message> <message> + <location line="+592"/> + <source>Could not register file '%1': %2</source> + <translation>Impossible d'enregistrer le fichier '%1' : %2</translation> + </message> + <message> <source>Add Bookmark...</source> - <translation>Ajouter un signet…</translation> + <translation type="obsolete">Ajouter un signet...</translation> </message> <message> <source>CTRL+D</source> - <translation>CTRL+D</translation> + <translation type="obsolete">CTRL+D</translation> </message> <message> + <location line="-590"/> <source>&Help</source> <translation>Ai&de</translation> </message> <message> + <location line="+1"/> <source>About...</source> - <translation>À propos…</translation> + <translation>À propos...</translation> </message> <message> + <location line="+21"/> <source>Navigation Toolbar</source> <translation>Barre d'outils de navigation</translation> </message> <message> + <location line="+22"/> <source>&Window</source> <translation>&Fenêtre</translation> </message> <message> + <location line="+2"/> <source>Zoom</source> <translation>Zoom</translation> </message> <message> + <location line="+1"/> <source>Minimize</source> <translation>Minimiser</translation> </message> <message> + <location line="+1"/> <source>Ctrl+M</source> <translation>Ctrl+M</translation> </message> <message> + <location line="+43"/> <source>Toolbars</source> <translation>Barres d'outils</translation> </message> <message> + <location line="+16"/> <source>Filter Toolbar</source> <translation>Barre d'outils de filtrage</translation> </message> <message> + <location line="+2"/> <source>Filtered by:</source> <translation>Filtre :</translation> </message> <message> + <location line="+26"/> <source>Address Toolbar</source> <translation>Barre d'outils d'adresse</translation> </message> <message> + <location line="+4"/> <source>Address:</source> <translation>Adresse :</translation> </message> <message> + <location line="+112"/> <source>Could not find the associated content item.</source> <translatorcomment>what is item in this context? ← same question here</translatorcomment> <translation>Impossible de trouver l'élément de contenu associé.</translation> </message> <message> + <location line="+60"/> <source>About %1</source> <translation>À propos de %1</translation> </message> <message> + <location line="+175"/> <source>Updating search index</source> <translation>Mise à jour de l'index de recherche</translation> </message> @@ -594,38 +1045,48 @@ <context> <name>PreferencesDialog</name> <message> + <location filename="../tools/assistant/tools/assistant/preferencesdialog.cpp" line="+252"/> + <location line="+44"/> <source>Add Documentation</source> <translation>Ajouter de la documentation</translation> </message> <message> + <location line="-44"/> <source>Qt Compressed Help Files (*.qch)</source> <translation>Fichiers d'aide Qt compressés (*.qch)</translation> </message> <message> + <location line="+30"/> <source>The namespace %1 is already registered!</source> <translation>L'espace de nom %1 existe déjà !</translation> </message> <message> + <location line="+8"/> <source>The specified file is not a valid Qt Help File!</source> <translation>Le fichier spécifié n'est pas un fichier d'aide Qt valide !</translation> </message> <message> + <location line="+24"/> <source>Remove Documentation</source> <translation>Supprimer la documentation</translation> </message> <message> + <location line="+1"/> <source>Some documents currently opened in Assistant reference the documentation you are attempting to remove. Removing the documentation will close those documents.</source> <translation>Certains documents ouverts dans Assistant ont des références vers la documentation que vous allez supprimer. Supprimer la documentation fermera ces documents.</translation> </message> <message> + <location line="+2"/> <source>Cancel</source> <translation>Annuler</translation> </message> <message> + <location line="+1"/> <source>OK</source> <translation>OK</translation> </message> <message> + <location line="+83"/> <source>Use custom settings</source> <translation>Utiliser des paramètres personnalisés</translation> </message> @@ -633,95 +1094,118 @@ <context> <name>PreferencesDialogClass</name> <message> + <location filename="../tools/assistant/tools/assistant/preferencesdialog.ui"/> <source>Preferences</source> <translation>Préférences</translation> </message> <message> + <location/> <source>Fonts</source> <translation>Polices</translation> </message> <message> + <location/> <source>Font settings:</source> <translation>Configuration des polices :</translation> </message> <message> + <location/> <source>Browser</source> <translation>Navigateur</translation> </message> <message> + <location/> <source>Application</source> <translation>Application</translation> </message> <message> + <location/> <source>Filters</source> <translation>Filtres</translation> </message> <message> + <location/> <source>Filter:</source> <translation>Filtre :</translation> </message> <message> + <location/> <source>Attributes:</source> <translation>Attributs :</translation> </message> <message> + <location/> <source>1</source> <translation>1</translation> </message> <message> + <location/> <source>Add</source> <translation>Ajouter</translation> </message> <message> + <location/> <source>Remove</source> <translation>Supprimer</translation> </message> <message> + <location/> <source>Documentation</source> <translation>Documentation</translation> </message> <message> + <location/> <source>Registered Documentation:</source> <translatorcomment>documentation enregistrée ? ← je préfère référencée pour les deux...</translatorcomment> <translation>Documentation référencée :</translation> </message> <message> + <location/> <source>Add...</source> - <translation>Ajouter…</translation> + <translation>Ajouter...</translation> </message> <message> + <location/> <source>Options</source> <translation>Options</translation> </message> <message> + <location/> <source>On help start:</source> <translation>Au démarrage :</translation> </message> <message> + <location/> <source>Show my home page</source> <translation>Afficher ma page d'accueil</translation> </message> <message> + <location/> <source>Show a blank page</source> <translation>Afficher une page blanche</translation> </message> <message> + <location/> <source>Show my tabs from last session</source> <translation>Afficher mes onglets de la dernière session</translation> </message> <message> + <location/> <source>Homepage</source> <translation>Page d'accueil</translation> </message> <message> + <location/> <source>Current Page</source> <translation>Page courante</translation> </message> <message> + <location/> <source>Blank Page</source> <translation>Page blanche</translation> </message> <message> + <location/> <source>Restore to default</source> <translation>Restaurer les valeurs par défaut</translation> </message> @@ -730,47 +1214,47 @@ <name>QObject</name> <message> <source>The specified collection file does not exist!</source> - <translation>Le fichier de collection spécifié n'existe pas !</translation> + <translation type="obsolete">Le fichier de collection spécifié n'existe pas !</translation> </message> <message> <source>Missing collection file!</source> - <translation>Fichier de collection manquant !</translation> + <translation type="obsolete">Fichier de collection manquant !</translation> </message> <message> <source>Invalid URL!</source> - <translation>URL invalide !</translation> + <translation type="obsolete">URL invalide !</translation> </message> <message> <source>Missing URL!</source> - <translation>URL manquante !</translation> + <translation type="obsolete">URL manquante !</translation> </message> <message> <source>Unknown widget: %1</source> - <translation>Widget inconnu : %1</translation> + <translation type="obsolete">Widget inconnu : %1</translation> </message> <message> <source>Missing widget!</source> - <translation>Widget manquant !</translation> + <translation type="obsolete">Widget manquant !</translation> </message> <message> <source>The specified Qt help file does not exist!</source> - <translation>Le fichier d'aide Qt spécifié n'existe pas !</translation> + <translation type="obsolete">Le fichier d'aide Qt spécifié n'existe pas !</translation> </message> <message> <source>Missing help file!</source> - <translation>Fichier d'aide manquant !</translation> + <translation type="obsolete">Fichier d'aide manquant !</translation> </message> <message> <source>Missing filter argument!</source> - <translation>Argument de filtre manquant !</translation> + <translation type="obsolete">Argument de filtre manquant !</translation> </message> <message> <source>Unknown option: %1</source> - <translation>Option inconnue : %1</translation> + <translation type="obsolete">Option inconnue : %1</translation> </message> <message> <source>Qt Assistant</source> - <translation>Qt Assistant</translation> + <translation type="obsolete">Qt Assistant</translation> </message> <message> <source>Could not register documentation file @@ -778,7 +1262,7 @@ Reason: %2</source> - <translation>Impossible d'enregistrer le fichier de documentation + <translation type="obsolete">Impossible d'enregistrer le fichier de documentation %1 Raison : @@ -786,11 +1270,11 @@ Raison : </message> <message> <source>Documentation successfully registered.</source> - <translation>Documentation enregistrée avec succès.</translation> + <translation type="obsolete">Documentation enregistrée avec succès.</translation> </message> <message> <source>Documentation successfully unregistered.</source> - <translation>Documentation retirée avec succès.</translation> + <translation type="obsolete">Documentation retirée avec succès.</translation> </message> <message> <source>Could not unregister documentation file @@ -798,7 +1282,7 @@ Raison : Reason: %2</source> - <translation>Impossible d'enregistrer le fichier de documentation + <translation type="obsolete">Impossible d'enregistrer le fichier de documentation %1 Raison : @@ -806,20 +1290,22 @@ Raison : </message> <message> <source>Cannot load sqlite database driver!</source> - <translation>Impossible de charger le driver de la base de données sqlite !</translation> + <translation type="obsolete">Impossible de charger le driver de la base de données sqlite !</translation> </message> <message> <source>The specified collection file could not be read!</source> - <translation>Le fichier de collection spécifié ne peut pas être lu !</translation> + <translation type="obsolete">Le fichier de collection spécifié ne peut pas être lu !</translation> </message> </context> <context> <name>RemoteControl</name> <message> + <location filename="../tools/assistant/tools/assistant/remotecontrol.cpp" line="+165"/> <source>Debugging Remote Control</source> <translation>Débogage du contrôle à distance</translation> </message> <message> + <location line="+1"/> <source>Received Command: %1 %2</source> <translation>Commande reçue : %1 %2</translation> </message> @@ -827,18 +1313,22 @@ Raison : <context> <name>SearchWidget</name> <message> + <location filename="../tools/assistant/tools/assistant/searchwidget.cpp" line="+210"/> <source>&Copy</source> <translation>&Copier</translation> </message> <message> + <location line="+4"/> <source>Copy &Link Location</source> <translation>Copier &l'adresse du lien</translation> </message> <message> + <location line="+4"/> <source>Open Link in New Tab</source> <translation>Ouvrir le lien dans un nouvel onglet</translation> </message> <message> + <location line="+8"/> <source>Select All</source> <translation>Sélectionner tout</translation> </message> @@ -846,22 +1336,27 @@ Raison : <context> <name>TopicChooser</name> <message> + <location filename="../tools/assistant/tools/assistant/topicchooser.ui"/> <source>Choose Topic</source> <translation>Choisir le domaine</translation> </message> <message> + <location/> <source>&Topics</source> <translation>&Domaines</translation> </message> <message> + <location/> <source>&Display</source> <translation>&Afficher</translation> </message> <message> + <location/> <source>&Close</source> <translation>&Fermer</translation> </message> <message> + <location filename="../tools/assistant/tools/assistant/topicchooser.cpp" line="+53"/> <source>Choose a topic for <b>%1</b>:</source> <translation>Choisir le domaine pour <b>%1</b> :</translation> </message> diff --git a/translations/designer_fr.ts b/translations/designer_fr.ts index 175d5c5..9bf3810 100644 --- a/translations/designer_fr.ts +++ b/translations/designer_fr.ts @@ -4,22 +4,27 @@ <context> <name>AbstractFindWidget</name> <message> + <location filename="../tools/shared/findwidget/abstractfindwidget.cpp" line="+127"/> <source>&Previous</source> <translation>&Précédent</translation> </message> <message> + <location line="+8"/> <source>&Next</source> <translation>&Suivant</translation> </message> <message> + <location line="+24"/> <source>&Case sensitive</source> <translation>&Sensible à la casse</translation> </message> <message> + <location line="+8"/> <source>Whole &words</source> <translation>M&ots complets</translation> </message> <message> + <location line="+12"/> <source><img src=":/trolltech/shared/images/wrap.png">&nbsp;Search wrapped</source> <translation><img src=":/trolltech/shared/images/wrap.png">&nbsp;Recherche à partir du début</translation> </message> @@ -27,14 +32,17 @@ <context> <name>AddLinkDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/addlinkdialog.ui"/> <source>Insert Link</source> <translation>Insérer lien</translation> </message> <message> + <location/> <source>Title:</source> <translation>Titre :</translation> </message> <message> + <location/> <source>URL:</source> <translation>URL :</translation> </message> @@ -42,6 +50,7 @@ <context> <name>AppFontDialog</name> <message> + <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="+418"/> <source>Additional Fonts</source> <translation>Polices additionnelles</translation> </message> @@ -49,31 +58,38 @@ <context> <name>AppFontManager</name> <message> + <location line="-267"/> <source>'%1' is not a file.</source> <translation>'%1' n'est pas un fichier.</translation> </message> <message> + <location line="+4"/> <source>The font file '%1' does not have read permissions.</source> <translation>Le fichier de la police '%1' n'a pas les permissions de lecture.</translation> </message> <message> + <location line="+8"/> <source>The font file '%1' is already loaded.</source> <translation>Le fichier de la police '%1' est déjà chargé.</translation> </message> <message> + <location line="+7"/> <source>The font file '%1' could not be loaded.</source> <translatorcomment>passé composé plutôt</translatorcomment> <translation>Le fichier de la police '%1' n'a pas pu chargé.</translation> </message> <message> + <location line="+17"/> <source>'%1' is not a valid font id.</source> <translation>'%1' n'est pas un identifiant de police valide.</translation> </message> <message> + <location line="+11"/> <source>There is no loaded font matching the id '%1'.</source> <translation>Il n'y a pas de police chargée correspondant à l'identifiant '%1'.</translation> </message> <message> + <location line="+15"/> <source>The font '%1' (%2) could not be unloaded.</source> <translation>La police '%1' (%2) ne peut pas être déchargée.</translation> </message> @@ -81,43 +97,53 @@ <context> <name>AppFontWidget</name> <message> + <location line="+26"/> <source>Fonts</source> <translation>Polices</translation> </message> <message> + <location line="+58"/> <source>Add font files</source> <translation>Ajouter des fichiers de polices</translation> </message> <message> + <location line="+5"/> <source>Remove current font file</source> <translation>Retirer le fichier de police courant</translation> </message> <message> + <location line="+4"/> <source>Remove all font files</source> <translation>Retirer tous les fichiers de polices</translation> </message> <message> + <location line="+19"/> <source>Add Font Files</source> <translation>Ajouter des fichiers de polices</translation> </message> <message> + <location line="+1"/> <source>Font files (*.ttf)</source> <translation>Fichier de polices (*.ttf)</translation> </message> <message> + <location line="+13"/> <source>Error Adding Fonts</source> <translation>Erreur dans l'ajout de polices</translation> </message> <message> + <location line="+24"/> <source>Error Removing Fonts</source> <translatorcomment>s/de/des/ pour être cohérent avec le suivant...</translatorcomment> <translation>Erreur lors de la suppression des polices</translation> </message> <message> + <location line="+22"/> <source>Remove Fonts</source> <translation>Retirer les polices</translation> </message> <message> + <location line="+0"/> <source>Would you like to remove all fonts?</source> <translation>Voulez-vous supprimer toutes les polices ?</translation> </message> @@ -125,10 +151,12 @@ <context> <name>AppearanceOptionsWidget</name> <message> + <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.ui"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> + <location/> <source>User Interface Mode</source> <translation>Mode de l'interface utilisateur</translation> </message> @@ -136,14 +164,17 @@ <context> <name>AssistantClient</name> <message> + <location filename="../tools/designer/src/designer/assistantclient.cpp" line="+100"/> <source>Unable to send request: Assistant is not responding.</source> <translation>Impossible d'envoyer la requête : Assistant ne répond pas.</translation> </message> <message> + <location line="+39"/> <source>The binary '%1' does not exist.</source> <translation>Le binaire '%1' n'existe pas.</translation> </message> <message> + <location line="+9"/> <source>Unable to launch assistant (%1).</source> <translation>Impossible de démarrer Assistant (%1).</translation> </message> @@ -151,75 +182,93 @@ <context> <name>BrushPropertyManager</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="+52"/> <source>No brush</source> <translation>Pas de pinceau</translation> </message> <message> + <location line="+1"/> <source>Solid</source> <translatorcomment>c'est plutôt continu ou "trait continu" pour moi</translatorcomment> <translation>Trait continu</translation> </message> <message> + <location line="+1"/> <source>Dense 1</source> <translation>Dense 1</translation> </message> <message> + <location line="+1"/> <source>Dense 2</source> <translation>Dense 2</translation> </message> <message> + <location line="+1"/> <source>Dense 3</source> <translation>Dense 3</translation> </message> <message> + <location line="+1"/> <source>Dense 4</source> <translation>Dense 4</translation> </message> <message> + <location line="+1"/> <source>Dense 5</source> <translation>Dense 5</translation> </message> <message> + <location line="+1"/> <source>Dense 6</source> <translation>Dense 6</translation> </message> <message> + <location line="+1"/> <source>Dense 7</source> <translation>Dense 7</translation> </message> <message> + <location line="+1"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> + <location line="+1"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> + <location line="+1"/> <source>Cross</source> <translation>Croix</translation> </message> <message> + <location line="+1"/> <source>Backward diagonal</source> <translation>Diagonale arrière</translation> </message> <message> + <location line="+1"/> <source>Forward diagonal</source> <translation>Diagonale avant</translation> </message> <message> + <location line="+1"/> <source>Crossing diagonal</source> <translation>Diagonale croisée</translation> </message> <message> + <location line="+93"/> <source>Style</source> <translation>Style</translation> </message> <message> + <location line="+11"/> <source>Color</source> <translation>Couleur</translation> </message> <message> + <location line="+105"/> <source>[%1, %2]</source> <translation>[%1, %2]</translation> </message> @@ -227,120 +276,151 @@ <context> <name>Command</name> <message> + <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="+208"/> + <location line="+258"/> <source>Change signal</source> <translation>Modifier le signal</translation> </message> <message> + <location line="-256"/> + <location line="+268"/> <source>Change slot</source> <translation>Modifier le slot</translation> </message> <message> + <location line="-220"/> <source>Change signal-slot connection</source> <translation>Modfier la connection signal-slot</translation> </message> <message> + <location line="+234"/> <source>Change sender</source> <translatorcomment>expéditeur/source</translatorcomment> <translation>Modifier l'envoyeur</translation> </message> <message> + <location line="+18"/> <source>Change receiver</source> <translatorcomment>destinataire++/cible?</translatorcomment> <translation>Modifier le destinataire</translation> </message> <message> + <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+221"/> <source>Create button group</source> <translation>Créer un groupe de boutons</translation> </message> <message> + <location line="+27"/> <source>Break button group</source> <translation>Dissocier le groupe de bouton</translation> </message> <message> + <location line="+9"/> <source>Break button group '%1'</source> <translation>Dissossier le groupe de bouton '%1'</translation> </message> <message> + <location line="+17"/> <source>Add buttons to group</source> <translation>Ajouter les boutons au groupe</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/formlayoutmenu.cpp" line="+458"/> + <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+8"/> <source>Add '%1' to '%2'</source> <extracomment>Command description for adding buttons to a QButtonGroup</extracomment> <translation>Ajouter '%1' à '%2'</translation> </message> <message> + <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+14"/> <source>Remove buttons from group</source> <translation>Retirer les boutons du groupe</translation> </message> <message> + <location line="+15"/> <source>Remove '%1' from '%2'</source> <extracomment>Command description for removing buttons from a QButtonGroup</extracomment> <translation>Retirer '%1' de '%2'</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="+143"/> <source>Add connection</source> <translation>Ajouter une connexion</translation> </message> <message> + <location line="+54"/> <source>Adjust connection</source> <translation>Réajuster les connexions</translation> </message> <message> + <location line="+19"/> <source>Delete connections</source> <translation>Supprimer les connexions</translation> </message> <message> + <location line="+58"/> <source>Change source</source> <translation>Modifier la source</translation> </message> <message> + <location line="+2"/> <source>Change target</source> <translation>Modifier la cible</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/morphmenu.cpp" line="+349"/> <source>Morph %1/'%2' into %3</source> <extracomment>MorphWidgetCommand description</extracomment> <translation>Transformer %1/'%2' en %3</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="+149"/> <source>Insert '%1'</source> <translation>Insérer '%1'</translation> </message> <message> + <location line="+133"/> <source>Change Z-order of '%1'</source> <translatorcomment>l'ordre de '%1' sur l'axe z? profondeur ?</translatorcomment> <translation>Modifier la profondeur de '%1'</translation> </message> <message> + <location line="+34"/> <source>Raise '%1'</source> <translation>Élever '%1'</translation> </message> <message> + <location line="+33"/> <source>Lower '%1'</source> <translation>Abaisser '%1'</translation> </message> <message> + <location line="+113"/> <source>Delete '%1'</source> <translation>Supprimer '%1'</translation> </message> <message> + <location line="+119"/> <source>Reparent '%1'</source> <translation>Reparenter '%1'</translation> </message> <message> + <location line="+53"/> <source>Promote to custom widget</source> <translation>Promouvoir en widget personnalisé</translation> </message> <message> + <location line="+42"/> <source>Demote from custom widget</source> <translation>Annuler la promotion en widget personnalisé</translation> </message> <message> + <location line="+79"/> <source>Lay out using grid</source> <translation>Mettre en page à l'aide d'une grille</translation> </message> <message> + <location line="+3"/> <source>Lay out vertically</source> <translation>Mettre en page verticalement</translation> </message> @@ -349,154 +429,204 @@ <translation type="obsolete">Mettre en page horizontalement</translation> </message> <message> + <location line="+3"/> <source>Lay out horizontally</source> <translation>Mettre en page horizontalement</translation> </message> <message> + <location line="+41"/> <source>Break layout</source> <translation>Casser la mise en page</translation> </message> <message> + <location line="+105"/> <source>Simplify Grid Layout</source> <translation>Simplifier la mise en page en grille</translation> </message> <message> + <location line="+135"/> + <location line="+235"/> + <location line="+78"/> <source>Move Page</source> <translation>Déplacer la page</translation> </message> <message> + <location line="-279"/> + <location line="+123"/> + <location line="+188"/> + <location line="+666"/> <source>Delete Page</source> <translation>Supprimer la page</translation> </message> <message> + <location line="-939"/> + <location line="+123"/> <source>Page</source> <translation>Page</translation> </message> <message> + <location line="-118"/> + <location line="+123"/> + <location line="+186"/> + <location line="+667"/> <source>Insert Page</source> <translation>Insérer une page</translation> </message> <message> + <location line="-647"/> <source>Change Tab order</source> <translation>Modifier l'ordre des tabulations</translation> </message> <message> + <location line="+28"/> <source>Create Menu Bar</source> <translation>Créer une barre de menu</translation> </message> <message> + <location line="+44"/> <source>Delete Menu Bar</source> <translation>Supprimer la barre de menu</translation> </message> <message> + <location line="+47"/> <source>Create Status Bar</source> <translation>Créer une barre d'état</translation> </message> <message> + <location line="+42"/> <source>Delete Status Bar</source> <translation>Supprimer la barre d'état</translation> </message> <message> + <location line="+45"/> <source>Add Tool Bar</source> <translation>Ajouter une barre d'outil</translation> </message> <message> + <location line="+59"/> <source>Add Dock Window</source> <translation>Ajouter une fenêtre ancrable</translation> </message> <message> + <location line="+53"/> <source>Adjust Size of '%1'</source> <translation>Ajuster les dimensions de '%1'</translation> </message> <message> + <location line="+57"/> <source>Change Form Layout Item Geometry</source> <translation>Modifier la géométrie de l'élément de formulaire</translation> </message> <message> + <location line="+95"/> <source>Change Layout Item Geometry</source> <translation>Modifier la géométrie de l'élément de mise en page</translation> </message> <message> + <location line="+138"/> <source>Delete Subwindow</source> <translation>Supprimer la sous-fenêtre</translation> </message> <message> + <location line="+41"/> <source>page</source> <translation>page</translation> </message> <message> + <location line="+3"/> <source>Insert Subwindow</source> <translation>Insérer une sous-fenêtre</translation> </message> <message> + <location line="+2"/> <source>subwindow</source> <translation>sous-fenêtre</translation> </message> <message> + <location line="+1"/> <source>Subwindow</source> <translation>Sous fenêtre</translation> </message> <message> + <location line="+391"/> <source>Change Table Contents</source> <translation>Modifier le contenu de la table</translation> </message> <message> + <location line="+107"/> <source>Change Tree Contents</source> <translation>Modifier le contenu de l'arbre</translation> </message> <message> + <location line="+74"/> + <location line="+146"/> <source>Add action</source> <translation>Ajouter une action</translation> </message> <message> + <location line="-120"/> + <location line="+126"/> <source>Remove action</source> <translation>Supprimer l'action</translation> </message> <message> + <location line="+53"/> <source>Add menu</source> <translation>Ajouter un menu</translation> </message> <message> + <location line="+6"/> <source>Remove menu</source> <translation>Supprimer le menu</translation> </message> <message> + <location line="+6"/> <source>Create submenu</source> <translation>Créer une sous-fenêtre</translation> </message> <message> + <location line="+31"/> <source>Delete Tool Bar</source> <translation>Supprimer la barre d'outils</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_command2.cpp" line="+154"/> <source>Change layout of '%1' from %2 to %3</source> <translation>Modifier la mise en page de '%1' de %2 à %3</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="+1196"/> <source>Set action text</source> <translation>Définir le texte de l'action</translation> </message> <message> + <location line="+3"/> <source>Insert action</source> <translation>Insérer action</translation> </message> <message> + <location line="+89"/> + <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="+915"/> <source>Move action</source> <translation>Déplacer action</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="-432"/> <source>Change Title</source> <translation>Modifier le titre</translation> </message> <message> + <location line="+2"/> <source>Insert Menu</source> <translation>Insérer menu</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="+1225"/> <source>Changed '%1' of '%2'</source> <translation>Modifier '%1' de '%2'</translation> </message> <message numerus="yes"> + <location line="+3"/> <source>Changed '%1' of %n objects</source> <translation> <numerusform>Modifier '%1' de %n objet</numerusform> @@ -504,10 +634,12 @@ </translation> </message> <message> + <location line="+84"/> <source>Reset '%1' of '%2'</source> <translation>Réinitialiser '%1' de '%2'</translation> </message> <message numerus="yes"> + <location line="+3"/> <source>Reset '%1' of %n objects</source> <translation> <numerusform>Réinitialiser '%1' de %n objet</numerusform> @@ -515,10 +647,12 @@ </translation> </message> <message> + <location line="+89"/> <source>Add dynamic property '%1' to '%2'</source> <translation>Ajouter la propriété dynamique '%1' à '%2'</translation> </message> <message numerus="yes"> + <location line="+3"/> <source>Add dynamic property '%1' to %n objects</source> <translation> <numerusform>Ajouter la propriété dynamique '%1' à %n objet</numerusform> @@ -526,10 +660,12 @@ </translation> </message> <message> + <location line="+86"/> <source>Remove dynamic property '%1' from '%2'</source> <translation>Supprimer la propriété dynamique '%1' de '%2'</translation> </message> <message numerus="yes"> + <location line="+3"/> <source>Remove dynamic property '%1' from %n objects</source> <translation> <numerusform>Supprimer la propriété dynamique '%1' de %n objet</numerusform> @@ -537,10 +673,12 @@ </translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/scriptcommand.cpp" line="+55"/> <source>Change script</source> <translation>Modifier le script</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="+202"/> <source>Change signals/slots</source> <translation>Modifier signaux/slots</translation> </message> @@ -548,18 +686,22 @@ <context> <name>ConnectDialog</name> <message> + <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui"/> <source>Configure Connection</source> <translation>Configurer connexion</translation> </message> <message> + <location/> <source>GroupBox</source> <translation>GroupBox</translation> </message> <message> + <location/> <source>Edit...</source> <translation>Éditer...</translation> </message> <message> + <location/> <source>Show signals and slots inherited from QWidget</source> <translation>Afficher les signaux et slots hérités de QWidget</translation> </message> @@ -567,14 +709,17 @@ <context> <name>ConnectionDelegate</name> <message> + <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="+645"/> <source><object></source> <translation><objet></translation> </message> <message> + <location line="+18"/> <source><signal></source> <translation><signal></translation> </message> <message> + <location line="+0"/> <source><slot></source> <translation><slot></translation> </message> @@ -582,16 +727,19 @@ <context> <name>DPI_Chooser</name> <message> + <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="+69"/> <source>Standard (96 x 96)</source> <extracomment>Embedded device standard screen resolution</extracomment> <translation>Standard (96 x 96)</translation> </message> <message> + <location line="+2"/> <source>Greenphone (179 x 185)</source> <extracomment>Embedded device screen resolution</extracomment> <translation>Greenphone (179 x 185)</translation> </message> <message> + <location line="+2"/> <source>High (192 x 192)</source> <extracomment>Embedded device high definition screen resolution</extracomment> <translatorcomment>"haute resolution" would be missleading</translatorcomment> @@ -601,72 +749,89 @@ <context> <name>Designer</name> <message> + <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="+446"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> + <location line="+10"/> <source>This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form.</source> <translation>Ce fichier contient des ressorts de premier niveau. <br>Ils ne sont <b>PAS</b> sauvegardé dans le formulaire.</translation> </message> <message> + <location line="+2"/> <source>Perhaps you forgot to create a layout?</source> <translation>Peut-être avez-vous oublié de créer un layout ?</translation> </message> <message> + <location line="+173"/> <source>Invalid UI file: The root element <ui> is missing.</source> <translation>Fichier UI invalide. L'élément racine <ui> est manquant.</translation> </message> <message> + <location line="+6"/> <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> - <translation>Une erreur est survenue lors de la lecture du fichier UI à la ligne %1, colonne %2: %3</translation> + <translation>Une erreur est survenue lors de la lecture du fichier UI à la ligne %1, colonne %2 : %3</translation> </message> <message> + <location line="+26"/> <source>This file cannot be read because it was created using %1.</source> <translation>Ce fichier ne peut pas être lu car il a été créé à l'aide de %1.</translation> </message> <message> + <location line="+14"/> <source>This file was created using Designer from Qt-%1 and cannot be read.</source> <translation>Ce fichier a été créé à l'aide du Designer de Qt-%1 et ne peut être lu.</translation> </message> <message> + <location line="+30"/> <source>The converted file could not be read.</source> <translation>Le fichier converti ne peut pas être lu.</translation> </message> <message> + <location line="+4"/> <source>This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer.</source> <translation>Ce fichier a été créé par le Designer de Qt-%1 et sera converti au nouveau format par Qt Designer.</translation> </message> <message> + <location line="+3"/> <source>The old form has not been touched, but you will have to save the form under a new name.</source> <translation>L'ancienne interface n'a pas été modifiée, vous devez sauvergarder l'interface sous un nouveau nom.</translation> </message> <message> + <location line="+11"/> <source>This file was created using Designer from Qt-%1 and could not be read: %2</source> <translation>Le fichier a été créé à l'aide de Designer de Qt-%1 et ne peut pas être lu : %2</translation> </message> <message> + <location line="+3"/> <source>Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format.</source> <translation>Veuillez le faire passer par <b>uic3&nbsp;-convert</b> pour le convertir au format de fichier de Qt 4.</translation> </message> <message> + <location line="+31"/> <source>This file cannot be read because the extra info extension failed to load.</source> <translation>Ce fichier ne peut pas être lu car les informations d'extension n'ont pu être chargées.</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="+682"/> <source>Unable to launch %1.</source> <translation>Impossible de lancer %1.</translation> </message> <message> + <location line="+4"/> <source>%1 timed out.</source> <translation>%1 est arrivé à échéance.</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qsimpleresource.cpp" line="+339"/> <source>Custom Widgets</source> <translation>Widgets personnalisés</translation> </message> <message> + <location line="+12"/> <source>Promoted Widgets</source> <translation>Widgets promus</translation> </message> @@ -674,10 +839,12 @@ <context> <name>DesignerMetaEnum</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="-513"/> <source>%1 is not a valid enumeration value of '%2'.</source> <translation>%1 n'est pas une valeur d'énumeration valide de '%2'.</translation> </message> <message> + <location line="+5"/> <source>'%1' could not be converted to an enumeration value of type '%2'.</source> <translation>'%1' ne peut pas être converti en une valeur d'énumération de type '%2'.</translation> </message> @@ -685,6 +852,7 @@ <context> <name>DesignerMetaFlags</name> <message> + <location line="+78"/> <source>'%1' could not be converted to a flag value of type '%2'.</source> <translation>'%1' ne peut pas être converti en un drapeau de type '%2'.</translation> </message> @@ -692,11 +860,13 @@ <context> <name>DeviceProfile</name> <message> + <location filename="../tools/designer/src/lib/shared/deviceprofile.cpp" line="+397"/> <source>'%1' is not a number.</source> <extracomment>Reading a number for an embedded device profile</extracomment> <translation>'%1' n'est pas un nombre.</translation> </message> <message> + <location line="+23"/> <source>An invalid tag <%1> was encountered.</source> <translation>La balise invalide <%1> a été rencontré.</translation> </message> @@ -704,22 +874,27 @@ <context> <name>DeviceProfileDialog</name> <message> + <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.ui"/> <source>&Family</source> <translation>&Famille</translation> </message> <message> + <location/> <source>&Point Size</source> <translation>&Taille en points</translation> </message> <message> + <location/> <source>Style</source> <translation>Style</translation> </message> <message> + <location/> <source>Device DPI</source> <translation>PPP/DPI de l'appareil</translation> </message> <message> + <location/> <source>Name</source> <translation>Nom</translation> </message> @@ -727,46 +902,57 @@ <context> <name>DeviceSkin</name> <message> + <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="+79"/> <source>The image file '%1' could not be loaded.</source> <translation>Le fichier image '%1' n'a pas pu être chargé.</translation> </message> <message> + <location line="+64"/> <source>The skin directory '%1' does not contain a configuration file.</source> <translation>Le repertoire de revêtement '%1' ne contient pas un fichier de configuration.</translation> </message> <message> + <location line="+5"/> <source>The skin configuration file '%1' could not be opened.</source> <translation>Le fichier de configuration de revêtement '%1' ne peut pas être ouvert.</translation> </message> <message> + <location line="+6"/> <source>The skin configuration file '%1' could not be read: %2</source> - <translation>Le fichier de configuration de revêtement '%1' ne peut pas être lu: %2</translation> + <translation>Le fichier de configuration de revêtement '%1' ne peut pas être lu : %2</translation> </message> <message> + <location line="+70"/> <source>Syntax error: %1</source> <translation>Erreur de syntaxe : %1</translation> </message> <message> + <location line="+21"/> <source>The skin "up" image file '%1' does not exist.</source> <translation>Le fichier image "up" de revêtement '%1' n'existe pas.</translation> </message> <message> + <location line="+10"/> <source>The skin "down" image file '%1' does not exist.</source> <translation>Le fichier image "down" de revêtement '%1' n'existe pas.</translation> </message> <message> + <location line="+11"/> <source>The skin "closed" image file '%1' does not exist.</source> <translation>Le fichier image "closed" de revêtement '%1' n'existe pas.</translation> </message> <message> + <location line="+12"/> <source>The skin cursor image file '%1' does not exist.</source> <translation>Le fichier image de revêtement '%1' n'existe pas.</translation> </message> <message> + <location line="+25"/> <source>Syntax error in area definition: %1</source> <translation>Erreur de syntaxe dans la zone de définition : %1</translation> </message> <message> + <location line="+38"/> <source>Mismatch in number of areas, expected %1, got %2.</source> <translation>Incohérence dans le nombre de zones, %1 attendu, %2 reçu.</translation> </message> @@ -774,6 +960,7 @@ <context> <name>EmbeddedOptionsControl</name> <message> + <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="+307"/> <source><html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Resolution</b></td><td>%4 x %5</td></tr></table></html></source> <extracomment>Format embedded device profile description</extracomment> <translation><html><table><tr><td><b>Police</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Résolution</b></td><td>%4 x %5</td></tr></table></html></translation> @@ -782,11 +969,13 @@ <context> <name>EmbeddedOptionsPage</name> <message> + <location line="+103"/> <source>Embedded Design</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Design pour appareil mobile</translation> </message> <message> + <location line="+10"/> <source>Device Profiles</source> <extracomment>EmbeddedOptionsControl group box"</extracomment> <translation>Profils des appareils</translation> @@ -795,22 +984,27 @@ <context> <name>FontPanel</name> <message> + <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="+63"/> <source>Font</source> <translation>Police</translation> </message> <message> + <location line="+11"/> <source>&Writing system</source> <translation>&Système d'écriture</translation> </message> <message> + <location line="+3"/> <source>&Family</source> <translation>&Famille</translation> </message> <message> + <location line="+4"/> <source>&Style</source> <translation>&Style</translation> </message> <message> + <location line="+4"/> <source>&Point size</source> <translation>&Taille en points</translation> </message> @@ -818,18 +1012,22 @@ <context> <name>FontPropertyManager</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/fontpropertymanager.cpp" line="+62"/> <source>PreferDefault</source> <translation>PreferDefault</translation> </message> <message> + <location line="+1"/> <source>NoAntialias</source> <translation>NoAntialias</translation> </message> <message> + <location line="+1"/> <source>PreferAntialias</source> <translation>PreferAntialias</translation> </message> <message> + <location line="+61"/> <source>Antialiasing</source> <translation>Antialiasing</translation> </message> @@ -837,36 +1035,51 @@ <context> <name>FormBuilder</name> <message> + <location filename="../tools/designer/src/lib/uilib/formbuilderextra.cpp" line="+375"/> <source>Invalid stretch value for '%1': '%2'</source> - <extracomment>Parsing layout stretch values</extracomment> + <extracomment>Parsing layout stretch values +---------- +Parsing layout stretch values +---------- +Parsing layout stretch values</extracomment> <translation>Valeur d'extension invalide pour '%1' : '%2'</translation> </message> <message> + <location line="+62"/> <source>Invalid minimum size for '%1': '%2'</source> - <extracomment>Parsing grid layout minimum size values</extracomment> + <extracomment>Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values</extracomment> <translation>Taille minimum invalide pour '%1' : '%2'</translation> </message> </context> <context> <name>FormEditorOptionsPage</name> <message> + <location filename="../tools/designer/src/components/formeditor/formeditor_optionspage.cpp" line="+91"/> <source>%1 %</source> <translation>%1 %</translation> </message> <message> + <location line="+4"/> <source>Preview Zoom</source> <translation>Zoom de visualisation</translation> </message> <message> + <location line="+2"/> <source>Default Zoom</source> <translation>Zoom par défaut</translation> </message> <message> + <location line="+29"/> <source>Forms</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Formulaires</translation> </message> <message> + <location line="+13"/> <source>Default Grid</source> <translation>Grille par défaut</translation> </message> @@ -874,31 +1087,38 @@ <context> <name>FormLayoutRowDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui"/> <source>Add Form Layout Row</source> <translation>Ajouter une ligne de mise en page au formulaire</translation> </message> <message> + <location/> <source>&Label text:</source> <translation>&Texte du label :</translation> </message> <message> + <location/> <source>Field &type:</source> <translation>&Type du champ :</translation> </message> <message> + <location/> <source>&Field name:</source> <translation>&Nom du champ :</translation> </message> <message> + <location/> <source>&Buddy:</source> <translatorcomment>copain c'est un peu beaucoup ptet</translatorcomment> <translation>&Copain :</translation> </message> <message> + <location/> <source>&Row:</source> <translation>&Ligne :</translation> </message> <message> + <location/> <source>Label &name:</source> <translation>&Nom du label :</translation> </message> @@ -906,10 +1126,12 @@ <context> <name>FormWindow</name> <message> + <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="+1754"/> <source>Unexpected element <%1></source> <translation>Element inattendu : <%1></translation> </message> <message> + <location line="+7"/> <source>Error while pasting clipboard contents at line %1, column %2: %3</source> <translation>Erreur lors du collage du contenu du presse-papier à la ligne %1, colonne %2 : %3</translation> </message> @@ -917,50 +1139,62 @@ <context> <name>FormWindowSettings</name> <message> + <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui"/> <source>Form Settings</source> <translation>Configuration du formulaire</translation> </message> <message> + <location/> <source>Layout &Default</source> <translation>Mise en page par &défaut</translation> </message> <message> + <location/> <source>&Spacing:</source> <translation>&Espacements :</translation> </message> <message> + <location/> <source>&Margin:</source> <translation>&Marge :</translation> </message> <message> + <location/> <source>&Layout Function</source> <translation>&Fonction de mise en page</translation> </message> <message> + <location/> <source>Ma&rgin:</source> <translation>Ma&rge :</translation> </message> <message> + <location/> <source>Spa&cing:</source> <translation>Espa&cement :</translation> </message> <message> + <location/> <source>&Pixmap Function</source> <translation>Fonction de &pixmap</translation> </message> <message> + <location/> <source>&Include Hints</source> <translation>Indication d'&include</translation> </message> <message> + <location/> <source>Grid</source> <translation>Grille</translation> </message> <message> + <location/> <source>Embedded Design</source> <translation>Design pour appareil mobile</translation> </message> <message> + <location/> <source>&Author</source> <translation>&Auteur</translation> </message> @@ -968,6 +1202,7 @@ <context> <name>IconSelector</name> <message> + <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="+352"/> <source>All Pixmaps (</source> <translation>Tous les pixmaps (</translation> </message> @@ -975,6 +1210,7 @@ <context> <name>ItemPropertyBrowser</name> <message> + <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="+66"/> <source>XX Icon Selected off</source> <extracomment>Sample string to determinate the width for the first column of the list item property browser</extracomment> <translation>XX Icon Selected off</translation> @@ -983,27 +1219,33 @@ <context> <name>MainWindowBase</name> <message> + <location filename="../tools/designer/src/designer/mainwindow.cpp" line="+121"/> <source>Main</source> <extracomment>Not currently used (main tool bar)</extracomment> <translation>Principal</translation> </message> <message> + <location line="+6"/> <source>File</source> <translation>Fichier</translation> </message> <message> + <location line="+1"/> <source>Edit</source> <translation>Édition</translation> </message> <message> + <location line="+1"/> <source>Tools</source> <translation>Outils</translation> </message> <message> + <location line="+1"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> + <location line="+7"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> @@ -1011,42 +1253,52 @@ <context> <name>NewForm</name> <message> + <location filename="../tools/designer/src/designer/newform.cpp" line="+78"/> <source>Show this Dialog on Startup</source> <translation>Afficher cette boîte de dialogue au démarrage</translation> </message> <message> + <location line="+1"/> <source>C&reate</source> <translation>C&réer</translation> </message> <message> + <location line="+1"/> <source>Recent</source> <translation>Récent</translation> </message> <message> + <location line="+3"/> <source>New Form</source> <translation>Nouveau formulaire</translation> </message> <message> + <location line="+29"/> <source>&Close</source> <translation>&Fermer</translation> </message> <message> + <location line="+3"/> <source>&Open...</source> <translation>&Ouvrir...</translation> </message> <message> + <location line="+4"/> <source>&Recent Forms</source> <translation>&Formulaires récents</translation> </message> <message> + <location line="+64"/> <source>Read error</source> <translation>Erreur de lecture</translation> </message> <message> + <location line="+23"/> <source>A temporary form file could not be created in %1.</source> <translation>Un fichier temporaire de formulaire n'a pas pu être créé dans %1.</translation> </message> <message> + <location line="+6"/> <source>The temporary form file %1 could not be written.</source> <translation>Le fichier temporaire de formulaire %1 n'a pas pu être écrit.</translation> </message> @@ -1054,18 +1306,22 @@ <context> <name>ObjectInspectorModel</name> <message> + <location filename="../tools/designer/src/components/objectinspector/objectinspectormodel.cpp" line="+360"/> <source>Object</source> <translation>Objet</translation> </message> <message> + <location line="+1"/> <source>Class</source> <translation>Classe</translation> </message> <message> + <location line="+35"/> <source>separator</source> <translation>séparateur</translation> </message> <message> + <location line="+98"/> <source><noname></source> <translation><sans nom></translation> </message> @@ -1073,10 +1329,12 @@ <context> <name>ObjectNameDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="+158"/> <source>Change Object Name</source> <translation>Modifier le nom de l'objet</translation> </message> <message> + <location line="+4"/> <source>Object Name</source> <translation>Nom de l'objet</translation> </message> @@ -1084,10 +1342,12 @@ <context> <name>PluginDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/plugindialog.ui"/> <source>Plugin Information</source> <translation>Information du plugin</translation> </message> <message> + <location/> <source>1</source> <translation>1</translation> </message> @@ -1095,6 +1355,7 @@ <context> <name>PreferencesDialog</name> <message> + <location filename="../tools/designer/src/designer/preferencesdialog.ui"/> <source>Preferences</source> <translation>Préférences</translation> </message> @@ -1102,26 +1363,32 @@ <context> <name>PreviewConfigurationWidget</name> <message> + <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> + <location/> <source>Print/Preview Configuration</source> <translation>Configuration d'impression/prévisualisation</translation> </message> <message> + <location/> <source>Style</source> <translation>Style</translation> </message> <message> + <location/> <source>Style sheet</source> <translation>Feuille de style</translation> </message> <message> + <location/> <source>...</source> <translation>...</translation> </message> <message> + <location/> <source>Device skin</source> <translation>Revêtement de l'appareil</translation> </message> @@ -1129,6 +1396,7 @@ <context> <name>PromotionModel</name> <message> + <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="+112"/> <source>Not used</source> <extracomment>Usage of promoted widgets</extracomment> <translation>Non utilisé</translation> @@ -1137,6 +1405,8 @@ <context> <name>Q3WizardContainer</name> <message> + <location filename="../tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.cpp" line="+172"/> + <location line="+5"/> <source>Page</source> <translation>Page</translation> </message> @@ -1144,48 +1414,59 @@ <context> <name>QAbstractFormBuilder</name> <message> + <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="+206"/> <source>Unexpected element <%1></source> <translation>Élément imprévu <%1></translation> </message> <message> + <location line="+5"/> <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> <translation>Une erreur s'est produite lors de la lecture du fichier UI à la ligne %1, colonne %2 : %3</translation> </message> <message> + <location line="+6"/> <source>Invalid UI file: The root element <ui> is missing.</source> <translation>Fichier UI invalide : l'élément racine <ui> est manquant.</translation> </message> <message> + <location line="+104"/> <source>The creation of a widget of the class '%1' failed.</source> <translation>La création d'un widget de la classe '%1' a échoué.</translation> </message> <message> + <location line="+296"/> <source>Attempt to add child that is not of class QWizardPage to QWizard.</source> <translation>Tentative d'ajout d'enfant qui n'est pas de la classe QWizardPage à QWizard.</translation> </message> <message> + <location line="+86"/> <source>Attempt to add a layout to a widget '%1' (%2) which already has a layout of non-box type %3. This indicates an inconsistency in the ui-file.</source> <translation>Tentative d'ajout d'un layout au widget '%1' (%2) qui a déjà un layout dont le type n'est pas boîte %3. Ceci indique une incohérence dans le fichier ui.</translation> </message> <message> + <location line="+144"/> <source>Empty widget item in %1 '%2'.</source> <translation>Widget vide dans %1 '%2'.</translation> </message> <message> + <location line="+680"/> <source>Flags property are not supported yet.</source> <translation>Les propriétés de type drapeau ne sont pas supportées.</translation> </message> <message> + <location line="+81"/> <source>While applying tab stops: The widget '%1' could not be found.</source> <translation>Lors de l'application des arrêts de tabulation : le widget '%1' ne peut pas être trouvé.</translation> </message> <message> + <location line="+923"/> <source>Invalid QButtonGroup reference '%1' referenced by '%2'.</source> <translation>Référence invalide '%1' à QButtonGroup, référencé par '%2'.</translation> </message> <message> + <location line="+511"/> <source>This version of the uitools library is linked without script support.</source> <translation>Cette version de la bibliothèque uitools n'a pas le support des scripts.</translation> </message> @@ -1193,10 +1474,12 @@ Ceci indique une incohérence dans le fichier ui.</translation> <context> <name>QAxWidgetPlugin</name> <message> + <location filename="../tools/designer/src/plugins/activeqt/qaxwidgetplugin.cpp" line="+75"/> <source>ActiveX control</source> <translation>Control ActiveX</translation> </message> <message> + <location line="+5"/> <source>ActiveX control widget</source> <translation>Widget control ActiveX</translation> </message> @@ -1204,18 +1487,22 @@ Ceci indique une incohérence dans le fichier ui.</translation> <context> <name>QAxWidgetTaskMenu</name> <message> + <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="+119"/> <source>Set Control</source> <translation>Définir le contrôle</translation> </message> <message> + <location line="+1"/> <source>Reset Control</source> <translation>Réinitialiser le contrôle</translation> </message> <message> + <location line="+41"/> <source>Licensed Control</source> <translation>Contrôle licencié</translation> </message> <message> + <location line="+1"/> <source>The control requires a design-time license</source> <translation>Le contrôle requiert une license par interface</translation> </message> @@ -1223,54 +1510,67 @@ Ceci indique une incohérence dans le fichier ui.</translation> <context> <name>QCoreApplication</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="+83"/> <source>%1 is not a promoted class.</source> <translation>%1 n'est pas une classe promue.</translation> </message> <message> + <location line="+65"/> <source>The base class %1 is invalid.</source> <translation>La classe de base %1 est invalide.</translation> </message> <message> + <location line="+7"/> <source>The class %1 already exists.</source> <translation>La classe %1 existe déjà.</translation> </message> <message> + <location line="+9"/> <source>Promoted Widgets</source> <translation>Widgets promus</translation> </message> <message> + <location line="+126"/> <source>The class %1 cannot be removed</source> <translation>La classe %1 ne peut pas être retirée</translation> </message> <message> + <location line="+9"/> <source>The class %1 cannot be removed because it is still referenced.</source> <translation>La classe %1 ne peut pas être retirée car elle est toujours référencée.</translation> </message> <message> + <location line="+10"/> <source>The class %1 cannot be renamed</source> <translation>La classe %1 ne peut pas être renommée</translation> </message> <message> + <location line="+7"/> <source>The class %1 cannot be renamed to an empty name.</source> <translation>La classe %1 ne peut pas être renommé avec un nom vide.</translation> </message> <message> + <location line="+5"/> <source>There is already a class named %1.</source> <translation>Une classe existe déjà avec le nom %1.</translation> </message> <message> + <location line="+29"/> <source>Cannot set an empty include file.</source> <translation>Impossible de créer un fichier include vide.</translation> </message> <message> + <location filename="../tools/designer/src/lib/uilib/formscriptrunner.cpp" line="+88"/> <source>Exception at line %1: %2</source> <translation>Exception à la ligne %1 : %2</translation> </message> <message> + <location line="+36"/> <source>Unknown error</source> <translation>Erreur inconnue</translation> </message> <message> + <location line="+50"/> <source>An error occurred while running the script for %1: %2 Script: %3</source> <translation>Une erreur s'est produite lors de l'exécution du script de %1 : %2 @@ -1280,14 +1580,17 @@ Script : %3</translation> <context> <name>QDesigner</name> <message> + <location filename="../tools/designer/src/designer/qdesigner.cpp" line="+141"/> <source>%1 - warning</source> <translation>Avertissement - %1</translation> </message> <message> + <location line="+96"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> + <location line="+1"/> <source>This application cannot be used for the Console edition of Qt</source> <translation>Cette application ne peut pas être utilisée avec l'édition console de Qt</translation> </message> @@ -1295,178 +1598,228 @@ Script : %3</translation> <context> <name>QDesignerActions</name> <message> + <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="+130"/> <source>Saved %1.</source> <translation>%1 sauvé.</translation> </message> <message> + <location line="+26"/> <source>%1 already exists. Do you want to replace it?</source> <translation>%1 existe déjà. Voulez-vous le remplacer ?</translation> </message> <message> + <location line="+24"/> <source>Edit Widgets</source> <translation>Éditer les widgets</translation> </message> <message> + <location line="+1"/> <source>&New...</source> <translation>&Nouveau...</translation> </message> <message> + <location line="+1"/> <source>&Open...</source> <translation>&Ouvrir...</translation> </message> <message> + <location line="+1"/> <source>&Save</source> <translation>&Enregistrer</translation> </message> <message> + <location line="+1"/> <source>Save &As...</source> <translation>Enregistrer &sous...</translation> </message> <message> + <location line="+1"/> <source>Save A&ll</source> <translation>Enregistrer &tout</translation> </message> <message> + <location line="+1"/> <source>Save As &Template...</source> <translation>Sauver comme &modèle...</translation> </message> <message> + <location line="+1"/> + <location line="+925"/> <source>&Close</source> <translation>&Fermer</translation> </message> <message> + <location line="-924"/> <source>Save &Image...</source> <translation>Enregistrer &image...</translation> </message> <message> + <location line="+1"/> <source>&Print...</source> <translation>Im&primer...</translation> </message> <message> + <location line="+1"/> <source>&Quit</source> <translation>&Quitter</translation> </message> <message> + <location line="+2"/> <source>View &Code...</source> <translation>&Visualizer le code...</translation> </message> <message> + <location line="+1"/> <source>&Minimize</source> <translation>&Minimiser</translation> </message> <message> + <location line="+2"/> <source>Bring All to Front</source> <translation>Amener tout au premier plan</translation> </message> <message> + <location line="+2"/> <source>Preferences...</source> <translation>Préférences...</translation> </message> <message> + <location line="+1"/> <source>Additional Fonts...</source> <translation>Polices additionnelles...</translation> </message> <message> + <location line="+72"/> <source>ALT+CTRL+S</source> <translation>ALT+CTRL+S</translation> </message> <message> + <location line="+2"/> <source>CTRL+SHIFT+S</source> <translation>CTRL+SHIFT+S</translation> </message> <message> + <location line="+127"/> <source>CTRL+R</source> <translation>CTRL+R</translation> </message> <message> + <location line="+18"/> <source>CTRL+M</source> <translation>CTRL+M</translation> </message> <message> + <location line="+31"/> <source>Qt Designer &Help</source> <translation>&Aide de Qt Designer</translation> </message> <message> + <location line="+7"/> <source>Current Widget Help</source> <translation>Aide du widget courant</translation> </message> <message> + <location line="+7"/> <source>What's New in Qt Designer?</source> <translation>Quoi de neuf dans Qt Designer ?</translation> </message> <message> + <location line="+7"/> <source>About Plugins</source> <translation>À propos des plugins</translation> </message> <message> + <location line="+6"/> + <location line="+601"/> <source>About Qt Designer</source> <translation>À propos de Qt Designer</translation> </message> <message> + <location line="-595"/> <source>About Qt</source> <translation>À propos de Qt</translation> </message> <message> + <location line="+38"/> <source>Clear &Menu</source> <translation>Réinitialiser le &menu</translation> </message> <message> + <location line="+6"/> <source>&Recent Forms</source> <translation>Formulaires &récents</translation> </message> <message> + <location line="+77"/> + <location line="+197"/> <source>Open Form</source> <translation>Ouvrir le formulaire</translation> </message> <message> + <location line="-196"/> + <location line="+37"/> + <location line="+160"/> <source>Designer UI files (*.%1);;All Files (*)</source> <translation>Fichier UI de Qt Designer (*.%1);;Tous les fichiers(*)</translation> </message> <message> + <location line="-160"/> + <location line="+248"/> <source>Save Form As</source> <translation>Enregistrer le formulaire sous</translation> </message> <message> + <location line="-161"/> <source>Designer</source> <translation>Designer</translation> </message> <message> + <location line="+0"/> <source>Feature not implemented yet!</source> <translation>Cette fonctionnalité n'est pas encore implémentée !</translation> </message> <message> + <location line="+15"/> <source>Code generation failed</source> <translation>La génération du code à échoué</translation> </message> <message> + <location line="+44"/> <source>Read error</source> <translation>Erreur de lecture</translation> </message> <message> + <location line="+1"/> <source>%1 Do you want to update the file location or generate a new form?</source> <translation>%1 Voulez vous mettre à jour l'emplacement du fichier ou générer un nouveau formulaire ?</translation> </message> <message> + <location line="+3"/> <source>&Update</source> <translation>&Mettre à jour</translation> </message> <message> + <location line="+1"/> <source>&New Form</source> <translation>&Nouveau formulaire</translation> </message> <message> + <location line="+77"/> + <location line="+40"/> <source>Save Form?</source> <translation>Sauver le formulaire ?</translation> </message> <message> + <location line="-39"/> <source>Could not open file</source> <translation>Impossible d'ouvrir le fichier</translation> </message> <message> + <location line="+4"/> <source>The file %1 could not be opened. Reason: %2 Would you like to retry or select a different file?</source> @@ -1475,14 +1828,17 @@ Raison : %2 Voulez-vous réessayer ou sélectionner un fichier différent ?</translation> </message> <message> + <location line="+6"/> <source>Select New File</source> <translation>Sélectionner un nouveau fichier</translation> </message> <message> + <location line="+30"/> <source>Could not write file</source> <translation>Impossible d'écrire le fichier</translation> </message> <message> + <location line="+3"/> <source>It was not possible to write the entire file %1 to disk. Reason:%2 Would you like to retry?</source> @@ -1491,50 +1847,65 @@ Raison : %2 Voulez-vous réessayer ?</translation> </message> <message> + <location line="+158"/> + <location line="+34"/> <source>Assistant</source> <translation>Assistant</translation> </message> <message> + <location line="+6"/> <source>&Close Preview</source> <translation>&Fermer la prévisualisation</translation> </message> <message> + <location line="+41"/> + <location line="+23"/> <source>The backup file %1 could not be written.</source> <translation>Le fichier de backup %1 n'a pas pu être écrit.</translation> </message> <message> + <location line="+107"/> <source>The backup directory %1 could not be created.</source> <translation>Le dossier de backup %1 n'a pas pu être créé.</translation> </message> <message> + <location line="+6"/> <source>The temporary backup directory %1 could not be created.</source> <translation>Le dossier temporaire de backup %1 n'a pas pu être créé.</translation> </message> <message> + <location line="+30"/> <source>Preview failed</source> <translation>La prévisualisation a échoué</translation> </message> <message> + <location line="+24"/> <source>Image files (*.%1)</source> <translation>Fichiers image (*.%1)</translation> </message> <message> + <location line="+9"/> + <location line="+17"/> <source>Save Image</source> <translation>Sauver image</translation> </message> <message> + <location line="-4"/> <source>Saved image %1.</source> <translation>Image %1 sauvée.</translation> </message> <message> + <location line="+5"/> <source>The file %1 could not be written.</source> <translation>Le fichier %1 n'a pas pu être écrit.</translation> </message> <message> + <location line="+13"/> <source>Please close all forms to enable the loading of additional fonts.</source> <translation>Veuillez fermer tous les formulaires pour activer le chargement de polices additionnelles.</translation> </message> <message> + <location line="+52"/> <source>Printed %1.</source> <translation>Impression de %1 terminée.</translation> </message> @@ -1542,6 +1913,7 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerAppearanceOptionsPage</name> <message> + <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.cpp" line="+138"/> <source>Appearance</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Apparence</translation> @@ -1550,14 +1922,17 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerAppearanceOptionsWidget</name> <message> + <location line="-53"/> <source>Docked Window</source> <translation>Fenêtre ancrable</translation> </message> <message> + <location line="+1"/> <source>Multiple Top-Level Windows</source> <translation>Fenêtres multiples</translation> </message> <message> + <location line="+5"/> <source>Toolwindow Font</source> <translation>Police des fenêtre d'outils</translation> </message> @@ -1565,18 +1940,22 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerAxWidget</name> <message> + <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="-71"/> <source>Reset control</source> <translation>Réinitialiser les contrôles</translation> </message> <message> + <location line="+2"/> <source>Set control</source> <translation>Définir les contrôles</translation> </message> <message> + <location filename="../tools/designer/src/plugins/activeqt/qdesigneraxwidget.cpp" line="+179"/> <source>Control loaded</source> <translation>Contrôle chargé</translation> </message> <message> + <location line="+40"/> <source>A COM exception occurred when executing a meta call of type %1, index %2 of "%3".</source> <translation>Une exception COM a été levée lors de l'execution du meta-appel de type %1, indice %2 de "%3".</translation> </message> @@ -1584,14 +1963,17 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerFormBuilder</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_formbuilder.cpp" line="+89"/> <source>Script errors occurred:</source> <translation>Erreurs du script :</translation> </message> <message> + <location line="+307"/> <source>The preview failed to build.</source> <translation>La construction de la prévisualisation a échoué.</translation> </message> <message> + <location line="+65"/> <source>Designer</source> <translation>Designer</translation> </message> @@ -1599,18 +1981,22 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerFormWindow</name> <message> + <location filename="../tools/designer/src/designer/qdesigner_formwindow.cpp" line="+217"/> <source>%1 - %2[*]</source> <translation>%1 - %2[*]</translation> </message> <message> + <location line="+10"/> <source>Save Form?</source> <translation>Enregistrer le formulaire ?</translation> </message> <message> + <location line="+1"/> <source>Do you want to save the changes to this document before closing?</source> <translation>Voulez-vous enregistrer les changements de ce document avant de le fermer ?</translation> </message> <message> + <location line="+2"/> <source>If you don't save, your changes will be lost.</source> <translation>Si vous ne sauvegardez pas, les changements seront perdus.</translation> </message> @@ -1618,30 +2004,38 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerMenu</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="-1180"/> <source>Type Here</source> <translation>Taper ici</translation> </message> <message> + <location line="+3"/> <source>Add Separator</source> <translation>Ajouter séparateur</translation> </message> <message> + <location line="+371"/> <source>Insert separator</source> <translation>Insérer séparateur</translation> </message> <message> + <location line="+5"/> <source>Remove separator</source> <translation>Retirer séparateur</translation> </message> <message> + <location line="+2"/> <source>Remove action '%1'</source> <translation>Supprimer l'action '%1'</translation> </message> <message> + <location line="+25"/> + <location line="+649"/> <source>Add separator</source> <translation>Ajouter séparateur</translation> </message> <message> + <location line="-349"/> <source>Insert action</source> <translation>Insérer action</translation> </message> @@ -1649,18 +2043,22 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerMenuBar</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="-375"/> <source>Type Here</source> <translation>Taper ici</translation> </message> <message> + <location line="+298"/> <source>Remove Menu '%1'</source> <translation>Supprimer menu '%1'</translation> </message> <message> + <location line="+12"/> <source>Remove Menu Bar</source> <translation>Supprimer barre de menu</translation> </message> <message> + <location line="+70"/> <source>Menu</source> <translation>Menu</translation> </message> @@ -1668,30 +2066,37 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerPluginManager</name> <message> + <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="+271"/> <source>An XML error was encountered when parsing the XML of the custom widget %1: %2</source> <translation>Une erreur XML a été rencontrée lors de l'analyse grammaticale du XML provenant du widget personnalisé %1 : %2</translation> </message> <message> + <location line="+5"/> <source>A required attribute ('%1') is missing.</source> <translation>Un attribut obligatoire ('%1') est manquant.</translation> </message> <message> + <location line="+38"/> <source>An invalid property specification ('%1') was encountered. Supported types: %2</source> <translation>Une spécification invalide de propriété ('%1') a été rencontrée. Types supportés : %2</translation> </message> <message> + <location line="+20"/> <source>'%1' is not a valid string property specification.</source> <translation>'%1' n'est pas une spécification valide de propriété chaîne de caractères.</translation> </message> <message> + <location line="+40"/> <source>The XML of the custom widget %1 does not contain any of the elements <widget> or <ui>.</source> <translation>Le XML du widget personnalisé %1 ne contient aucun des éléments <widget> ou <ui>.</translation> </message> <message> + <location line="+12"/> <source>The class attribute for the class %1 is missing.</source> <translation>L'attribut de classe est manquant pour la classe %1.</translation> </message> <message> + <location line="+4"/> <source>The class attribute for the class %1 does not match the class name %2.</source> <translation>L'attribut de classe pour la classe %1 ne correspond pas au nom de la classe %2.</translation> </message> @@ -1699,6 +2104,7 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerPropertySheet</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_propertysheet.cpp" line="+762"/> <source>Dynamic Properties</source> <translation>Propriétés dynamiques</translation> </message> @@ -1706,26 +2112,31 @@ Voulez-vous réessayer ?</translation> <context> <name>QDesignerResource</name> <message> + <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="+461"/> <source>The layout type '%1' is not supported, defaulting to grid.</source> <translation>Le type de layout '%1' n'est pas supporté, replacement par une grille.</translation> </message> <message> + <location line="+239"/> <source>The container extension of the widget '%1' (%2) returned a widget not managed by Designer '%3' (%4) when queried for page #%5. Container pages should only be added by specifying them in XML returned by the domXml() method of the custom widget.</source> <translation>L'extension du widget '%1' (%2) a retourné un widget non géré par Designer '%3' (%4) lors de la requête pour la page #%5. Les pages du conteneur ne devraient être ajoutées que par spécification dans le XML retourné par la méthode domXml() du widget personnalisé.</translation> </message> <message> + <location line="+545"/> <source>Unexpected element <%1></source> <extracomment>Parsing clipboard contents</extracomment> <translation>Élément inattendu <%1></translation> </message> <message> + <location line="+6"/> <source>Error while pasting clipboard contents at line %1, column %2: %3</source> <extracomment>Parsing clipboard contents</extracomment> <translation>Erreur lors du collage du contenu du presse-papier à la ligne %1, colonne %2 : %3</translation> </message> <message> + <location line="+6"/> <source>Error while pasting clipboard contents: The root element <ui> is missing.</source> <extracomment>Parsing clipboard contents</extracomment> <translation>Erreur lors du collage du contenu du presse-papier. L'élément racine <ui> est manquant.</translation> @@ -1734,10 +2145,12 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QDesignerSharedSettings</name> <message> + <location filename="../tools/designer/src/lib/shared/shared_settings.cpp" line="+83"/> <source>The template path %1 could not be created.</source> <translation>Le chemin du modèle %1 n'a pas pu être créé.</translation> </message> <message> + <location line="+184"/> <source>An error has been encountered while parsing device profile XML: %1</source> <translation>Une erreur a été rencontrée lors de l'analyse grammaticale du XML du profil de l'appareil : %1</translation> </message> @@ -1745,27 +2158,33 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QDesignerToolWindow</name> <message> + <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="+190"/> <source>Property Editor</source> <translation>Éditeur de propriétés</translation> </message> <message> + <location line="+54"/> <source>Action Editor</source> <translation>Éditeur d'actions</translation> </message> <message> + <location line="+42"/> <source>Object Inspector</source> <translation>Inspecteur d'objet</translation> </message> <message> + <location line="+35"/> <source>Resource Browser</source> <translatorcomment>plural</translatorcomment> <translation>Explorateur de ressources</translation> </message> <message> + <location line="+34"/> <source>Signal/Slot Editor</source> <translation>Éditeur de signaux et slots</translation> </message> <message> + <location line="+41"/> <source>Widget Box</source> <translation>Boîte de widget</translation> </message> @@ -1773,50 +2192,62 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QDesignerWorkbench</name> <message> + <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="+199"/> <source>&File</source> <translation>&Fichier</translation> </message> <message> + <location line="+2"/> <source>Edit</source> <translation>Édition</translation> </message> <message> + <location line="+4"/> <source>F&orm</source> <translation>F&ormulaire</translation> </message> <message> + <location line="+1"/> <source>Preview in</source> <translation>Prévisualisation avec</translation> </message> <message> + <location line="+4"/> <source>&View</source> <translation>Afficha&ge</translation> </message> <message> + <location line="+2"/> <source>&Settings</source> <translation>&Configuration</translation> </message> <message> + <location line="+2"/> <source>&Window</source> <translation>Fe&nêtre</translation> </message> <message> + <location line="+2"/> <source>&Help</source> <translation>&Aide</translation> </message> <message> + <location line="+23"/> <source>Toolbars</source> <translation>Barre d'outils</translation> </message> <message> + <location line="+177"/> <source>Widget Box</source> <translation>Boîte de widget</translation> </message> <message> + <location line="+289"/> <source>Save Forms?</source> <translation>Enregistrer les formulaires ?</translation> </message> <message numerus="yes"> + <location line="+1"/> <source>There are %n forms with unsaved changes. Do you want to review these changes before quitting?</source> <translation> <numerusform>Il y a %n formulaire avec des changements non-enregistrés. Voulez-vous vérifier les changements avant de quitter?</numerusform> @@ -1824,30 +2255,37 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans </translation> </message> <message> + <location line="+3"/> <source>If you do not review your documents, all your changes will be lost.</source> <translation>Si vous ne vérifiez pas vos documents, tous les changements seront perdus.</translation> </message> <message> + <location line="+1"/> <source>Discard Changes</source> <translation>Abandonner les changements</translation> </message> <message> + <location line="+2"/> <source>Review Changes</source> <translation>Vérifier les changements</translation> </message> <message> + <location line="+95"/> <source>Backup Information</source> <translation>Informations de sauvegarde</translation> </message> <message> + <location line="+1"/> <source>The last session of Designer was not terminated correctly. Backup files were left behind. Do you want to load them?</source> <translation>La dernière session de Designer n'a pas été fermée correctement. Des fichiers de sauvegarde existent. Voulez-vous les charger ?</translation> </message> <message> + <location line="+111"/> <source>The file <b>%1</b> could not be opened.</source> <translation>Le fichier <b>%1</b> n'a pas pu être ouvert.</translation> </message> <message> + <location line="+46"/> <source>The file <b>%1</b> is not a valid Designer UI file.</source> <translation>Le fichier <b>%1</b> n'est pas un fichier valide d'UI de Designer.</translation> </message> @@ -1855,43 +2293,57 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QFormBuilder</name> <message> + <location filename="../tools/designer/src/lib/uilib/formbuilder.cpp" line="+168"/> <source>An empty class name was passed on to %1 (object name: '%2').</source> - <extracomment>Empty class name passed to widget factory method</extracomment> + <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>Un nom de classe vide a été passé à %1 (nom d'objet '%2').</translation> </message> <message> + <location line="+56"/> <source>QFormBuilder was unable to create a custom widget of the class '%1'; defaulting to base class '%2'.</source> <translation>QFormBuilder n'a pas pu créer le widget personnalisé de classe '%1'; passage à la classe de base '%2'.</translation> </message> <message> + <location line="+6"/> <source>QFormBuilder was unable to create a widget of the class '%1'.</source> <translation>QFormBuilder n'a pas pu créer un widget de classe '%1'.</translation> </message> <message> + <location line="+61"/> <source>The layout type `%1' is not supported.</source> <translation>Le type de layout '%1' n'est pas supporté.</translation> </message> <message> + <location filename="../tools/designer/src/lib/uilib/properties.cpp" line="+106"/> <source>The set-type property %1 could not be read.</source> <translation>Le type du setteur de propriété %1 n'a pas pu être lu.</translation> </message> <message> + <location line="+23"/> <source>The enumeration-type property %1 could not be read.</source> <translation>Le type d'énumeration de propriété %1 n'a pas pu être lu.</translation> </message> <message> + <location line="+190"/> <source>Reading properties of the type %1 is not supported yet.</source> <translation>La lecture des propriétés de type %1 n'est pas supporté.</translation> </message> <message> + <location line="+266"/> <source>The property %1 could not be written. The type %2 is not supported yet.</source> <translation>La propriété %1 ne peut pas être écrite. Le type %2 n'est pas encore supporté.</translation> </message> <message> + <location filename="../tools/designer/src/lib/uilib/properties_p.h" line="+132"/> <source>The enumeration-value '%1' is invalid. The default value '%2' will be used instead.</source> <translation>la valeur d'énumération '%1' est invalide. La valeur par défaut '%2' sera utilisée à la place.</translation> </message> <message> + <location line="+14"/> <source>The flag-value '%1' is invalid. Zero will be used instead.</source> <translation>Le drapeau '%1' est invalide. Zero sera utilisé à la place.</translation> </message> @@ -1899,38 +2351,48 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QStackedWidgetEventFilter</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="+194"/> <source>Previous Page</source> <translation>Page précédente</translation> </message> <message> + <location line="+1"/> <source>Next Page</source> <translation>Page suivante</translation> </message> <message> + <location line="+1"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> + <location line="+1"/> <source>Before Current Page</source> <translation>Avant la page courante</translation> </message> <message> + <location line="+1"/> <source>After Current Page</source> <translation>Après la page courante</translation> </message> <message> + <location line="+1"/> <source>Change Page Order...</source> <translation>Modifier l'ordre des pages...</translation> </message> <message> + <location line="+72"/> <source>Change Page Order</source> <translation>Modifier l'ordre des pages</translation> </message> <message> + <location line="+49"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> <message> + <location line="+10"/> + <location line="+4"/> <source>Insert Page</source> <translation>Insérer page</translation> </message> @@ -1938,10 +2400,12 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QStackedWidgetPreviewEventFilter</name> <message> + <location line="-153"/> <source>Go to previous page of %1 '%2' (%3/%4).</source> <translation>Aller à la page précédente de %1 '%2' (%3/%4).</translation> </message> <message> + <location line="+4"/> <source>Go to next page of %1 '%2' (%3/%4).</source> <translation>Aller à la page suivante de %1 '%2' (%3/%4).</translation> </message> @@ -1949,22 +2413,28 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QTabWidgetEventFilter</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="+89"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> + <location line="+1"/> <source>Before Current Page</source> <translation>Avant la page courante</translation> </message> <message> + <location line="+1"/> <source>After Current Page</source> <translation>Après la page courante</translation> </message> <message> + <location line="+283"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> <message> + <location line="+10"/> + <location line="+4"/> <source>Insert Page</source> <translation>Insérer page</translation> </message> @@ -1972,30 +2442,37 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QToolBoxHelper</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="+64"/> <source>Delete Page</source> <translation>Supprimer page</translation> </message> <message> + <location line="+1"/> <source>Before Current Page</source> <translation>Avant la page courante</translation> </message> <message> + <location line="+1"/> <source>After Current Page</source> <translation>Après la page courante</translation> </message> <message> + <location line="+1"/> <source>Change Page Order...</source> <translation>Modifier l'ordre des pages...</translation> </message> <message> + <location line="+116"/> <source>Change Page Order</source> <translation>Modifier l'ordre de pages</translation> </message> <message> + <location line="+44"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> <message> + <location line="+12"/> <source>Insert Page</source> <translation>Insérer page</translation> </message> @@ -2003,10 +2480,15 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtBoolEdit</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="+255"/> + <location line="+10"/> + <location line="+25"/> <source>True</source> <translation>Vrai</translation> </message> <message> + <location line="-25"/> + <location line="+25"/> <source>False</source> <translation>Faux</translation> </message> @@ -2014,10 +2496,12 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtBoolPropertyManager</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="+1507"/> <source>True</source> <translation>Vrai</translation> </message> <message> + <location line="+1"/> <source>False</source> <translation>Faux</translation> </message> @@ -2025,6 +2509,7 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtCharEdit</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="+1584"/> <source>Clear Char</source> <translation>Effacer caractère</translation> </message> @@ -2032,6 +2517,7 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtColorEditWidget</name> <message> + <location line="+605"/> <source>...</source> <translation>...</translation> </message> @@ -2039,18 +2525,22 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtColorPropertyManager</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="+4718"/> <source>Red</source> <translation>Rouge</translation> </message> <message> + <location line="+8"/> <source>Green</source> <translation>Vert</translation> </message> <message> + <location line="+8"/> <source>Blue</source> <translation>Bleu</translation> </message> <message> + <location line="+8"/> <source>Alpha</source> <translation>Alpha</translation> </message> @@ -2058,78 +2548,97 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtCursorDatabase</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="-234"/> <source>Arrow</source> <translation>Flèche</translation> </message> <message> + <location line="+2"/> <source>Up Arrow</source> <translation>Flèche vers le haut</translation> </message> <message> + <location line="+2"/> <source>Cross</source> <translation>Croix</translation> </message> <message> + <location line="+2"/> <source>Wait</source> <translation>Attendre</translation> </message> <message> + <location line="+2"/> <source>IBeam</source> <translation>IBeam</translation> </message> <message> + <location line="+2"/> <source>Size Vertical</source> <translation>Redimensionner verticalement</translation> </message> <message> + <location line="+2"/> <source>Size Horizontal</source> <translation>Redimensionner horizontalement</translation> </message> <message> + <location line="+2"/> <source>Size Backslash</source> <translation>Redimensionner diagonale droite</translation> </message> <message> + <location line="+2"/> <source>Size Slash</source> <translation>Redimensionner diagonale gauche</translation> </message> <message> + <location line="+2"/> <source>Size All</source> <translation>Redimensionner</translation> </message> <message> + <location line="+2"/> <source>Blank</source> <translation>Vide</translation> </message> <message> + <location line="+2"/> <source>Split Vertical</source> <translation>Scinder verticalement</translation> </message> <message> + <location line="+2"/> <source>Split Horizontal</source> <translation>Scinder horizontalement</translation> </message> <message> + <location line="+2"/> <source>Pointing Hand</source> <translation>Pointeur index</translation> </message> <message> + <location line="+2"/> <source>Forbidden</source> <translation>Interdit</translation> </message> <message> + <location line="+2"/> <source>Open Hand</source> <translation>Main ouverte</translation> </message> <message> + <location line="+2"/> <source>Closed Hand</source> <translation>Main fermée</translation> </message> <message> + <location line="+2"/> <source>What's This</source> <translation>Qu'est-ce que c'est ?</translation> </message> <message> + <location line="+2"/> <source>Busy</source> <translation>Occupé</translation> </message> @@ -2137,10 +2646,12 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtFontEditWidget</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="+198"/> <source>...</source> <translation>...</translation> </message> <message> + <location line="+20"/> <source>Select Font</source> <translation>Selectionner police</translation> </message> @@ -2148,30 +2659,37 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtFontPropertyManager</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="-351"/> <source>Family</source> <translation>Famille</translation> </message> <message> + <location line="+13"/> <source>Point Size</source> <translation>Taille en points</translation> </message> <message> + <location line="+8"/> <source>Bold</source> <translation>Gras</translation> </message> <message> + <location line="+7"/> <source>Italic</source> <translation>Italique</translation> </message> <message> + <location line="+7"/> <source>Underline</source> <translation>Souligné</translation> </message> <message> + <location line="+7"/> <source>Strikeout</source> <translation>Barré</translation> </message> <message> + <location line="+7"/> <source>Kerning</source> <translation>Crénage</translation> </message> @@ -2179,6 +2697,7 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientDialog</name> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradientdialog.ui"/> <source>Edit Gradient</source> <translation>Modifier le gradient</translation> </message> @@ -2186,242 +2705,304 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientEditor</name> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> + <location/> <source>Gradient Editor</source> <translation>Éditeur de gradient</translation> </message> <message> + <location/> <source>This area shows a preview of the gradient being edited. It also allows you to edit parameters specific to the gradient's type such as start and final point, radius, etc. by drag & drop.</source> <translation>Cette zone montre une prévisualisation du gradient édité. Elle permet aussi d'éditer les paramètres spécifiques au type de gradient tel que les points de départ et d'arrivée, le rayon, etc. par glisser-déposer.</translation> </message> <message> + <location/> <source>1</source> <translation>1</translation> </message> <message> + <location/> <source>2</source> <translation>2</translation> </message> <message> + <location/> <source>3</source> <translation>3</translation> </message> <message> + <location/> <source>4</source> <translation>4</translation> </message> <message> + <location/> <source>5</source> <translation>5</translation> </message> <message> + <location/> <source>Gradient Stops Editor</source> <translation>Éditeur de point d'arrêt du gradient</translation> </message> <message> + <location/> <source>This area allows you to edit gradient stops. Double click on the existing stop handle to duplicate it. Double click outside of the existing stop handles to create a new stop. Drag & drop the handle to reposition it. Use right mouse button to popup context menu with extra actions.</source> <translation>Cette zone vous permet d'éditer les points d'arrêt du gardient. Double-cliquez sur un point d'arrêt existant pour le dupliquer. Double-cliquez à l'exterieur d'un point d'arrêt pour en créer un nouveau. Glissez-déposez un point pour le repositionner. Utilisez le bouton droit de la souris pour afficher le menu contextuel avec des actions supplémentaires.</translation> </message> <message> + <location/> <source>Zoom</source> <translation>Zoom</translation> </message> <message> + <location/> <source>Reset Zoom</source> <translation>Réinitialiser le zoom</translation> </message> <message> + <location/> <source>Position</source> <translation>Position</translation> </message> <message> + <location/> <source>Hue</source> <translation>Teinte</translation> </message> <message> + <location/> <source>H</source> <translation>T</translation> </message> <message> + <location/> <source>Saturation</source> <translation>Saturation</translation> </message> <message> + <location/> <source>S</source> <translation>S</translation> </message> <message> + <location/> <source>Sat</source> <translation>Sat</translation> </message> <message> + <location/> <source>Value</source> <translation>Valeur</translation> </message> <message> + <location/> <source>V</source> <translation>V</translation> </message> <message> + <location/> <source>Val</source> <translation>Val</translation> </message> <message> + <location/> <source>Alpha</source> <translation>Alpha</translation> </message> <message> + <location/> <source>A</source> <translation>A</translation> </message> <message> + <location/> <source>Type</source> <translation>Type</translation> </message> <message> + <location/> <source>Spread</source> <translation>Étendue</translation> </message> <message> + <location/> <source>Color</source> <translation>Couleur</translation> </message> <message> + <location/> <source>Current stop's color</source> <translation>Couleur du point d'arrêt courant</translation> </message> <message> + <location/> <source>Show HSV specification</source> <translation>Montrer les spécifications TSV/HSV</translation> </message> <message> + <location/> <source>HSV</source> <translation>TSV/HSV</translation> </message> <message> + <location/> <source>Show RGB specification</source> <translation>Affichier les spécifications RGB</translation> </message> <message> + <location/> <source>RGB</source> <translation>RGB</translation> </message> <message> + <location/> <source>Current stop's position</source> <translation>Position du point d'arrêt courant</translation> </message> <message> + <location/> <source>%</source> <translation>%</translation> </message> <message> + <location/> <source>Zoom In</source> <translation>Zoomer</translation> </message> <message> + <location/> <source>Zoom Out</source> <translation>Dézoomer</translation> </message> <message> + <location/> <source>Toggle details extension</source> <translation>Inverser les détails d'exention</translation> </message> <message> + <location/> <source>></source> <translation>></translation> </message> <message> + <location/> <source>Linear Type</source> <translation>Type linéaire</translation> </message> <message> + <location/> <source>...</source> <translation>...</translation> </message> <message> + <location/> <source>Radial Type</source> <translation>Type radial</translation> </message> <message> + <location/> <source>Conical Type</source> <translation>Type conique</translation> </message> <message> + <location/> <source>Pad Spread</source> <translation>Étendue par remplissage</translation> </message> <message> + <location/> <source>Repeat Spread</source> <translation>Étendue par répétition</translation> </message> <message> + <location/> <source>Reflect Spread</source> <translation>Étendue par réflexion</translation> </message> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="+431"/> <source>Start X</source> <translation>X de départ</translation> </message> <message> + <location line="+4"/> <source>Start Y</source> <translation>Y de départ</translation> </message> <message> + <location line="+4"/> <source>Final X</source> <translation>X de fin</translation> </message> <message> + <location line="+4"/> <source>Final Y</source> <translation>Y de fin</translation> </message> <message> + <location line="+7"/> + <location line="+24"/> <source>Central X</source> <translation>X central</translation> </message> <message> + <location line="-20"/> + <location line="+24"/> <source>Central Y</source> <translation>Y central</translation> </message> <message> + <location line="-20"/> <source>Focal X</source> <translation>X focal</translation> </message> <message> + <location line="+4"/> <source>Focal Y</source> <translation>Y focal</translation> </message> <message> + <location line="+4"/> <source>Radius</source> <translation>Rayon</translation> </message> <message> + <location line="+16"/> <source>Angle</source> <translation>Angle</translation> </message> <message> + <location line="+288"/> <source>Linear</source> <translation>Linéaire</translation> </message> <message> + <location line="+1"/> <source>Radial</source> <translation>Radial</translation> </message> <message> + <location line="+1"/> <source>Conical</source> <translation>Conique</translation> </message> <message> + <location line="+20"/> <source>Pad</source> <translation>Remplissage</translation> </message> <message> + <location line="+1"/> <source>Repeat</source> <translation>Répéter</translation> </message> <message> + <location line="+1"/> <source>Reflect</source> <translation>Réflexion</translation> </message> @@ -2429,30 +3010,37 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientStopsWidget</name> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="+947"/> <source>New Stop</source> <translation>Nouveau point d'arrêt</translation> </message> <message> + <location line="+1"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> + <location line="+1"/> <source>Flip All</source> <translation>Tout renverser</translation> </message> <message> + <location line="+1"/> <source>Select All</source> <translation>Tout sélectionner</translation> </message> <message> + <location line="+1"/> <source>Zoom In</source> <translation>Zoomer</translation> </message> <message> + <location line="+1"/> <source>Zoom Out</source> <translation>Dézoomer</translation> </message> <message> + <location line="+1"/> <source>Reset Zoom</source> <translation>Réinitialiser le zoom</translation> </message> @@ -2460,34 +3048,46 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientView</name> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradientview.ui"/> <source>Gradient View</source> <translation>Vue du gradient</translation> </message> <message> + <location/> + <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+208"/> <source>New...</source> <translation>Nouveau...</translation> </message> <message> + <location/> + <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+1"/> <source>Edit...</source> <translation>Éditer...</translation> </message> <message> + <location/> + <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+1"/> <source>Rename</source> <translation>Renommer</translation> </message> <message> + <location/> + <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+1"/> <source>Remove</source> <translation>Retirer</translation> </message> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="-104"/> <source>Grad</source> <translation>Gradient</translation> </message> <message> + <location line="+26"/> <source>Remove Gradient</source> <translation>Retirer gradient</translation> </message> <message> + <location line="+1"/> <source>Are you sure you want to remove the selected gradient?</source> <translation>Êtes-vous sûr de vouloir supprimer le gradient sélectionné ?</translation> </message> @@ -2495,6 +3095,8 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtGradientViewDialog</name> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradientviewdialog.ui"/> + <location filename="../tools/shared/qtgradienteditor/qtgradientviewdialog.h" line="+62"/> <source>Select Gradient</source> <translation>Sélectionner gradient</translation> </message> @@ -2502,6 +3104,7 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtKeySequenceEdit</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="+249"/> <source>Clear Shortcut</source> <translation>Effacer les racourcis</translation> </message> @@ -2509,14 +3112,17 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtLocalePropertyManager</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="-3541"/> <source>%1, %2</source> <translation>%1, %2</translation> </message> <message> + <location line="+53"/> <source>Language</source> <translation>Langue</translation> </message> <message> + <location line="+8"/> <source>Country</source> <translation>Pays</translation> </message> @@ -2524,14 +3130,17 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtPointFPropertyManager</name> <message> + <location line="+411"/> <source>(%1, %2)</source> <translation>(%1, %2)</translation> </message> <message> + <location line="+71"/> <source>X</source> <translation>X</translation> </message> <message> + <location line="+8"/> <source>Y</source> <translation>Y</translation> </message> @@ -2539,14 +3148,17 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtPointPropertyManager</name> <message> + <location line="-320"/> <source>(%1, %2)</source> <translation>(%1, %2)</translation> </message> <message> + <location line="+37"/> <source>X</source> <translation>X</translation> </message> <message> + <location line="+7"/> <source>Y</source> <translation>Y</translation> </message> @@ -2554,10 +3166,12 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtPropertyBrowserUtils</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="-156"/> <source>[%1, %2, %3] (%4)</source> <translation>[%1, %2, %3] (%4)</translation> </message> <message> + <location line="+30"/> <source>[%1, %2]</source> <translation>[%1, %2]</translation> </message> @@ -2565,22 +3179,27 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtRectFPropertyManager</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="+1706"/> <source>[(%1, %2), %3 x %4]</source> <translation>[(%1, %2), %3 x %4]</translation> </message> <message> + <location line="+156"/> <source>X</source> <translation>X</translation> </message> <message> + <location line="+8"/> <source>Y</source> <translation>Y</translation> </message> <message> + <location line="+8"/> <source>Width</source> <translation>Largeur</translation> </message> <message> + <location line="+9"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -2588,22 +3207,27 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtRectPropertyManager</name> <message> + <location line="-612"/> <source>[(%1, %2), %3 x %4]</source> <translation>[(%1, %2), %3 x %4]</translation> </message> <message> + <location line="+120"/> <source>X</source> <translation>X</translation> </message> <message> + <location line="+7"/> <source>Y</source> <translation>Y</translation> </message> <message> + <location line="+7"/> <source>Width</source> <translation>Largeur</translation> </message> <message> + <location line="+8"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -2611,134 +3235,173 @@ Les pages du conteneur ne devraient être ajoutées que par spécification dans <context> <name>QtResourceEditorDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui"/> <source>Dialog</source> <translation>Dialogue</translation> </message> <message> + <location/> <source>New File</source> <translation>Nouveau fichier</translation> </message> <message> + <location/> <source>N</source> <translation>N</translation> </message> <message> + <location/> <source>Remove File</source> <translation>Supprimer fichier</translation> </message> <message> + <location/> <source>R</source> <translation>S</translation> </message> <message> + <location/> <source>I</source> <translation></translation> </message> <message> + <location/> <source>New Resource</source> <translation>Nouvelle ressource</translation> </message> <message> + <location/> <source>A</source> <translation>A</translation> </message> <message> + <location/> <source>Remove Resource or File</source> <translation>Supprimer ressource ou fichier</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="+76"/> <source>%1 already exists. Do you want to replace it?</source> <translation>%1 existe déjà. Voulez-vous le remplacer ?</translation> </message> <message> + <location line="+5"/> <source>The file does not appear to be a resource file; element '%1' was found where '%2' was expected.</source> <translation>Le fichier n'est pas un fichier ressource; l'élément '%1' a été trouvé à la place de %2.</translation> </message> <message> + <location line="+902"/> <source>%1 [read-only]</source> <translation>%1 [lecture seule]</translation> </message> <message> + <location line="+2"/> + <location line="+198"/> <source>%1 [missing]</source> <translation>%1 [manquant]</translation> </message> <message> + <location line="-72"/> <source><no prefix></source> <translation><pas de préfixe></translation> </message> <message> + <location line="+320"/> + <location line="+566"/> <source>New Resource File</source> <translation>Nouveau fichier de ressource</translation> </message> <message> + <location line="-564"/> + <location line="+25"/> <source>Resource files (*.qrc)</source> <translation>Fichier de ressource (*.qrc)</translation> </message> <message> + <location line="-2"/> <source>Import Resource File</source> <translation>Importer fichier de ressource</translation> </message> <message> + <location line="+112"/> <source>newPrefix</source> <translation>newPrefix</translation> </message> <message> + <location line="+16"/> <source><p><b>Warning:</b> The file</p><p>%1</p><p>is outside of the current resource file's parent directory.</p></source> <translation><p><b>Avertissement :</b> le fichier</p><p>%1</p><p>est en dehors du répertoire parent du fichier de ressource courant.</p></translation> </message> <message> + <location line="+8"/> <source><p>To resolve the issue, press:</p><table><tr><th align="left">Copy</th><td>to copy the file to the resource file's parent directory.</td></tr><tr><th align="left">Copy As...</th><td>to copy the file into a subdirectory of the resource file's parent directory.</td></tr><tr><th align="left">Keep</th><td>to use its current location.</td></tr></table></source> <translation><p>Pour résoudre le problème, appuyez sur :</p><table><tr><th align="left">Copier</th><td>Pour copier le fichier dans le répertoire parent du fichier de ressource.</td></tr><tr><th align="left">Copier sous...</th><td>Pour copier le fichier ressource dans un sous-répertoire du répertoire parent du fichier de ressource.</td></tr><tr><th align="left">Conserver</th><td>pour conserver l'emplacement courant.</td></tr></table></translation> </message> <message> + <location line="+25"/> <source>Add Files</source> <translation>Ajouter fichiers</translation> </message> <message> + <location line="+21"/> <source>Incorrect Path</source> <translation>Chemin incorrect</translation> </message> <message> + <location line="+3"/> + <location line="+19"/> + <location line="+212"/> + <location line="+7"/> <source>Copy</source> <translation>Copier</translation> </message> <message> + <location line="-236"/> <source>Copy As...</source> <translation>Copier sous...</translation> </message> <message> + <location line="+2"/> <source>Keep</source> <translation>Conserver</translation> </message> <message> + <location line="+2"/> <source>Skip</source> <translation>Passer</translation> </message> <message> + <location line="+87"/> <source>Clone Prefix</source> <translation>Cloner le préfixe</translation> </message> <message> + <location line="+1"/> <source>Enter the suffix which you want to add to the names of the cloned files. This could for example be a language extension like "_de".</source> <translation>Entrez le suffixe que vous voulez ajouter aux noms des fichiers clonés. Ceci peut être une extension de langue par exemple, comme "_fr'.</translation> </message> <message> + <location line="+113"/> + <location line="+4"/> <source>Copy As</source> <translation>Copier sous</translation> </message> <message> + <location line="+1"/> <source><p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p></source> <translation><p>Le fichier sélectionné</p><p>%1</p><p>est en dehors du répertoire du fichier de ressource courant :</p><p>%2</p><p>Veuillez sélectionner un chemin dans le répertoire courant.</p></translation> </message> <message> + <location line="+20"/> <source>Could not overwrite %1.</source> <translation>Impossible d'écraser %1.</translation> </message> <message> + <location line="+7"/> <source>Could not copy %1 to @@ -2749,84 +3412,108 @@ vers %2</translation> </message> <message> + <location line="+35"/> <source>A parse error occurred at line %1, column %2 of %3: %4</source> <translation>Une erreur d'analyse grammaticale est apparue à la ligne %1, colonne %2 de %3 : %4</translation> </message> <message> + <location line="+12"/> <source>Save Resource File</source> <translation>Enregistrer le fichier de ressource</translation> </message> <message> + <location line="+1"/> <source>Could not write %1: %2</source> <translation>Impossible d'écrire %1 : %2</translation> </message> <message> + <location line="+33"/> <source>Edit Resources</source> <translation>Éditer les ressources</translation> </message> <message> + <location line="+35"/> <source>New...</source> <translation>Nouveau...</translation> </message> <message> + <location line="+2"/> <source>Open...</source> <translation>Ouvrir...</translation> </message> <message> + <location line="+1"/> <source>Open Resource File</source> <translation>Ouvrir fichier de ressource</translation> </message> <message> + <location line="+1"/> + <location line="+11"/> <source>Remove</source> <translation>Retirer</translation> </message> <message> + <location line="-10"/> + <location line="+11"/> <source>Move Up</source> <translation>Vers le Haut</translation> </message> <message> + <location line="-10"/> + <location line="+11"/> <source>Move Down</source> <translation>Vers le Bas</translation> </message> <message> + <location line="-9"/> + <location line="+1"/> <source>Add Prefix</source> <translation>Ajouter préfixe</translation> </message> <message> + <location line="+1"/> <source>Add Files...</source> <translation>Ajouter fichiers...</translation> </message> <message> + <location line="+1"/> <source>Change Prefix</source> <translation>Modifier le préfixe</translation> </message> <message> + <location line="+1"/> <source>Change Language</source> <translation>Modifier la langue</translation> </message> <message> + <location line="+1"/> <source>Change Alias</source> <translation>Modifier l'alias</translation> </message> <message> + <location line="+1"/> <source>Clone Prefix...</source> <translation>Cloner le préfixe...</translation> </message> <message> + <location line="+37"/> <source>Prefix / Path</source> <translation>Préfixe / chemin</translation> </message> <message> + <location line="+1"/> <source>Language / Alias</source> <translation>Langue / Alias</translation> </message> <message> + <location line="+117"/> <source><html><p><b>Warning:</b> There have been problems while reloading the resources:</p><pre>%1</pre></html></source> <translation><html><p><b>Avertissement:</b> Des problèmes sont apparus lors du rafraichissement des données des ressources :</p><pre>%1</pre></html></translation> </message> <message> + <location line="+2"/> <source>Resource Warning</source> <translation>Avertissement relatif aux ressources</translation> </message> @@ -2834,20 +3521,24 @@ vers <context> <name>QtResourceView</name> <message> + <location filename="../tools/designer/src/lib/shared/qtresourceview.cpp" line="+567"/> <source>Size: %1 x %2 %3</source> <translation>Taille : %1 x %2 %3</translation> </message> <message> + <location line="+20"/> <source>Edit Resources...</source> <translation>Éditer ressources...</translation> </message> <message> + <location line="+6"/> <source>Reload</source> <translation>Recharger</translation> </message> <message> + <location line="+7"/> <source>Copy Path</source> <translation>Copier le chemin</translation> </message> @@ -2855,6 +3546,7 @@ vers <context> <name>QtResourceViewDialog</name> <message> + <location line="+252"/> <source>Select Resource</source> <translation>Séléctionner ressource</translation> </message> @@ -2862,14 +3554,17 @@ vers <context> <name>QtSizeFPropertyManager</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="-535"/> <source>%1 x %2</source> <translation>%1 x %2</translation> </message> <message> + <location line="+130"/> <source>Width</source> <translation>Largeur</translation> </message> <message> + <location line="+9"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -2877,26 +3572,33 @@ vers <context> <name>QtSizePolicyPropertyManager</name> <message> + <location line="+1709"/> + <location line="+1"/> <source><Invalid></source> <translation><Invalide></translation> </message> <message> + <location line="+1"/> <source>[%1, %2, %3, %4]</source> <translation>[%1, %2, %3, %4]</translation> </message> <message> + <location line="+45"/> <source>Horizontal Policy</source> <translation>Politique horizontale</translation> </message> <message> + <location line="+9"/> <source>Vertical Policy</source> <translation>Politique verticale</translation> </message> <message> + <location line="+9"/> <source>Horizontal Stretch</source> <translation>Étirement horizontal</translation> </message> <message> + <location line="+8"/> <source>Vertical Stretch</source> <translation>Étirement vertical</translation> </message> @@ -2904,14 +3606,17 @@ vers <context> <name>QtSizePropertyManager</name> <message> + <location line="-2286"/> <source>%1 x %2</source> <translation>%1 x %2</translation> </message> <message> + <location line="+96"/> <source>Width</source> <translation>Largeur</translation> </message> <message> + <location line="+8"/> <source>Height</source> <translation>Hauteur</translation> </message> @@ -2919,86 +3624,107 @@ vers <context> <name>QtToolBarDialog</name> <message> + <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui"/> <source>Customize Toolbars</source> <translation>Personnaliser les barres d'outils</translation> </message> <message> + <location/> <source>1</source> <translation>1</translation> </message> <message> + <location/> <source>Actions</source> <translation>Actions</translation> </message> <message> + <location/> <source>Toolbars</source> <translation>Barres d'outils</translation> </message> <message> + <location/> <source>Add new toolbar</source> <translation>Ajouter une nouvelle barre d'outils</translation> </message> <message> + <location/> <source>New</source> <translation>Nouveau</translation> </message> <message> + <location/> <source>Remove selected toolbar</source> <translation>Supprimer la barre d'outils sélectionnée</translation> </message> <message> + <location/> <source>Remove</source> <translation>Supprimer</translation> </message> <message> + <location/> <source>Rename toolbar</source> <translation>Renommer la barre d'outils</translation> </message> <message> + <location/> <source>Rename</source> <translation>Renommer</translation> </message> <message> + <location/> <source>Move action up</source> <translation>Déplacer l'action vers le haut</translation> </message> <message> + <location/> <source>Up</source> <translation>Monter</translation> </message> <message> + <location/> <source>Remove action from toolbar</source> <translation>Retirer l'action de la barre d'outils</translation> </message> <message> + <location/> <source><-</source> <translation><-</translation> </message> <message> + <location/> <source>Add action to toolbar</source> <translation>Ajouter l'action à la barre d'outil</translation> </message> <message> + <location/> <source>-></source> <translation>-></translation> </message> <message> + <location/> <source>Move action down</source> <translation>Déplacer l'action vers le bas</translation> </message> <message> + <location/> <source>Down</source> <translation>Descendre</translation> </message> <message> + <location/> <source>Current Toolbar Actions</source> <translation>Actions de la barre d'outils courante</translation> </message> <message> + <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.cpp" line="+1240"/> <source>Custom Toolbar</source> <translation>Barre d'outils personnalisée</translation> </message> <message> + <location line="+544"/> <source>< S E P A R A T O R ></source> <translation>< S É P A R A T E U R ></translation> </message> @@ -3006,10 +3732,12 @@ vers <context> <name>QtTreePropertyBrowser</name> <message> + <location filename="../tools/shared/qtpropertybrowser/qttreepropertybrowser.cpp" line="+442"/> <source>Property</source> <translation>Propriété</translation> </message> <message> + <location line="+1"/> <source>Value</source> <translation>Valeur</translation> </message> @@ -3017,52 +3745,64 @@ vers <context> <name>SaveFormAsTemplate</name> <message> + <location filename="../tools/designer/src/designer/saveformastemplate.ui"/> <source>Save Form As Template</source> <translation>Enregistrer le formulaire comme un modèle</translation> </message> <message> + <location/> <source>&Name:</source> <translation>&Nom :</translation> </message> <message> + <location/> <source>&Category:</source> <translation>&Catégorie :</translation> </message> <message> + <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="+72"/> <source>Add path...</source> <translation>Ajouter chemin...</translation> </message> <message> + <location line="+23"/> <source>Template Exists</source> <translation>Le modèle existe</translation> </message> <message> + <location line="+1"/> <source>A template with the name %1 already exists. Do you want overwrite the template?</source> <translation>Un modèle existe déjà avec le nom %1. Voulez-vous le remplacer ?</translation> </message> <message> + <location line="+3"/> <source>Overwrite Template</source> <translation>Remplacer modèle</translation> </message> <message> + <location line="+7"/> <source>Open Error</source> <translation>Erreur d'ouverture</translation> </message> <message> + <location line="+1"/> <source>There was an error opening template %1 for writing. Reason: %2</source> <translation>Une erreur s'est produite à l'ouverture du modèle %1 en écriture. Raison : %2</translation> </message> <message> + <location line="+13"/> <source>Write Error</source> <translation>Erreur d'écriture</translation> </message> <message> + <location line="+1"/> <source>There was an error writing the template %1 to disk. Reason: %2</source> <translation>Une erreur s'est produite lors de l'écriture du modèle %1 sur le disque. Raison : %2</translation> </message> <message> + <location line="+27"/> <source>Pick a directory to save templates in</source> <translation>Sélectionner le dossier dans lequel le modèle sera enregistré</translation> </message> @@ -3070,6 +3810,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>ScriptErrorDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/scripterrordialog.cpp" line="+59"/> <source>An error occurred while running the scripts for "%1": </source> <translation>Une erreur est apparue lors de l'execution des scripts de "%1" : @@ -3079,18 +3820,22 @@ Voulez-vous le remplacer ?</translation> <context> <name>SelectSignalDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/selectsignaldialog.ui"/> <source>Go to slot</source> <translation>Aller au slot</translation> </message> <message> + <location/> <source>Select signal</source> <translation>Sélectionner signal</translation> </message> <message> + <location/> <source>signal</source> <translation>signal</translation> </message> <message> + <location/> <source>class</source> <translation>classe</translation> </message> @@ -3098,6 +3843,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>SignalSlotConnection</name> <message> + <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="-358"/> <source>SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4)</source> <translation>ENVOYER(%1), SIGNAL(%2), RECEVEUR(%3), SLOT(%4)</translation> </message> @@ -3105,26 +3851,32 @@ Voulez-vous le remplacer ?</translation> <context> <name>SignalSlotDialogClass</name> <message> + <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui"/> <source>Signals and slots</source> <translation>Signaux et slots</translation> </message> <message> + <location/> <source>Slots</source> <translation>Slots</translation> </message> <message> + <location/> <source>Add</source> <translation>Ajouter</translation> </message> <message> + <location/> <source>...</source> <translation>...</translation> </message> <message> + <location/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> + <location/> <source>Signals</source> <translation>Signaux</translation> </message> @@ -3132,10 +3884,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>Spacer</name> <message> + <location filename="../tools/designer/src/lib/shared/spacer_widget.cpp" line="+275"/> <source>Horizontal Spacer '%1', %2 x %3</source> <translation>Ressort horizontal '%1', %2 x %3</translation> </message> <message> + <location line="+0"/> <source>Vertical Spacer '%1', %2 x %3</source> <translation>Ressort vertical '%1', %2 x %3</translation> </message> @@ -3143,6 +3897,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>TemplateOptionsPage</name> <message> + <location filename="../tools/designer/src/components/formeditor/templateoptionspage.cpp" line="+156"/> <source>Template Paths</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Chemins des modèles</translation> @@ -3151,42 +3906,52 @@ Voulez-vous le remplacer ?</translation> <context> <name>ToolBarManager</name> <message> + <location filename="../tools/designer/src/designer/mainwindow.cpp" line="+89"/> <source>Configure Toolbars...</source> <translation>Configurer les barres d'outils...</translation> </message> <message> + <location line="+15"/> <source>Window</source> <translation>Fenêtre</translation> </message> <message> + <location line="+1"/> <source>Help</source> <translation>Aide</translation> </message> <message> + <location line="+7"/> <source>Style</source> <translation>Style</translation> </message> <message> + <location line="+2"/> <source>Dock views</source> <translation>Ancrer les vues</translation> </message> <message> + <location line="+6"/> <source>File</source> <translation>Fichier</translation> </message> <message> + <location line="+4"/> <source>Edit</source> <translation>Édition</translation> </message> <message> + <location line="+4"/> <source>Tools</source> <translation>Outils</translation> </message> <message> + <location line="+4"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> + <location line="+4"/> <source>Toolbars</source> <translation>Barres d'outils</translation> </message> @@ -3194,25 +3959,78 @@ Voulez-vous le remplacer ?</translation> <context> <name>VersionDialog</name> <message> + <location filename="../tools/designer/src/designer/versiondialog.cpp" line="+170"/> <source><h3>%1</h3><br/><br/>Version %2</source> <translation><h3>%1</h3><br/><br/>Version %2</translation> </message> <message> + <location line="+1"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> + <location line="+1"/> <source><br/>Qt Designer is a graphical user interface designer for Qt applications.<br/></source> <translation><br/>Qt Designer est une interface de création d'interface graphique pour les applications Qt.<br/></translation> </message> <message> + <location line="+2"/> <source>%1<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> <translation>%1<br/>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</translation> </message> </context> <context> + <name>VideoPlayerTaskMenu</name> + <message> + <location filename="../tools/designer/src/plugins/phononwidgets/videoplayertaskmenu.cpp" line="+79"/> + <source>Available Mime Types</source> + <translation>Types MIME disponibles</translation> + </message> + <message> + <location line="+24"/> + <source>Display supported mime types...</source> + <translation>Afficher les types MIME supportés...</translation> + </message> + <message> + <location line="+1"/> + <source>Load...</source> + <translation>Ouvrir...</translation> + </message> + <message> + <location line="+1"/> + <source>Play</source> + <translation>Lecture</translation> + </message> + <message> + <location line="+1"/> + <source>Pause</source> + <translation>Pause</translation> + </message> + <message> + <location line="+1"/> + <source>Stop</source> + <translation>Arrêter</translation> + </message> + <message> + <location line="+32"/> + <source>Choose Video Player Media Source</source> + <translation>Choisir une source de média pour le lecteur video</translation> + </message> + <message> + <location line="+10"/> + <source>An error has occurred in '%1': %2</source> + <translation>Une erreur s'est produite dans '%1' : %2</translation> + </message> + <message> + <location line="+1"/> + <source>Video Player Error</source> + <translation>Erreur du lecteur video</translation> + </message> +</context> +<context> <name>WidgetDataBase</name> <message> + <location filename="../tools/designer/src/lib/shared/widgetdatabase.cpp" line="+814"/> <source>The file contains a custom widget '%1' whose base class (%2) differs from the current entry in the widget database (%3). The widget database is left unchanged.</source> <translation>Le fichier contient un widget personnalisé '%1' dont la classe de base (%2) est différente de l'entrée dans la base de données de widget (%3). La base de données de widget n'a pas été modifiée.</translation> </message> @@ -3220,70 +4038,87 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ActionEditor</name> <message> + <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="+123"/> <source>New...</source> <translation>Nouveau...</translation> </message> <message> + <location line="+1"/> <source>Edit...</source> <translation>Éditer...</translation> </message> <message> + <location line="+1"/> <source>Go to slot...</source> <translation>Aller au slot...</translation> </message> <message> + <location line="+1"/> <source>Copy</source> <translation>Copier</translation> </message> <message> + <location line="+1"/> <source>Cut</source> <translation>Couper</translation> </message> <message> + <location line="+1"/> <source>Paste</source> <translation>Coller</translation> </message> <message> + <location line="+1"/> <source>Select all</source> <translation>Tout sélectionner</translation> </message> <message> + <location line="+1"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> + <location line="+9"/> <source>Actions</source> <translation>Actions</translation> </message> <message> + <location line="+49"/> <source>Configure Action Editor</source> <translation>Configurer l'éditeur d'action</translation> </message> <message> + <location line="+3"/> <source>Icon View</source> <translation>Vue en icônes</translation> </message> <message> + <location line="+6"/> <source>Detailed View</source> <translation>Vue détaillée</translation> </message> <message> + <location line="+246"/> <source>New action</source> <translation>Nouvelle action</translation> </message> <message> + <location line="+98"/> <source>Edit action</source> <translation>Editer action</translation> </message> <message> + <location line="+69"/> <source>Remove action '%1'</source> <translation>Supprimer action '%1'</translation> </message> <message> + <location line="+0"/> <source>Remove actions</source> <translation>Supprimer les actions</translation> </message> <message> + <location line="+186"/> <source>Used In</source> <translation>Utilisé dans</translation> </message> @@ -3291,26 +4126,32 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ActionModel</name> <message> + <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="+89"/> <source>Name</source> <translation>Nom</translation> </message> <message> + <location line="+1"/> <source>Used</source> <translation>Utilisé</translation> </message> <message> + <location line="+1"/> <source>Text</source> <translation>Texte</translation> </message> <message> + <location line="+1"/> <source>Shortcut</source> <translation>Raccourci</translation> </message> <message> + <location line="+1"/> <source>Checkable</source> <translation>Vérifiable</translation> </message> <message> + <location line="+1"/> <source>ToolTip</source> <translation>Info-bulle</translation> </message> @@ -3318,22 +4159,27 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BrushManagerProxy</name> <message> + <location filename="../tools/designer/src/components/formeditor/brushmanagerproxy.cpp" line="+219"/> <source>The element '%1' is missing the required attribute '%2'.</source> <translation>L'attribut requis '%2' est manquant pour l'élément '%1'.</translation> </message> <message> + <location line="+11"/> <source>Empty brush name encountered.</source> <translation>Un nom vide de pinceau a été rencontré.</translation> </message> <message> + <location line="+10"/> <source>An unexpected element '%1' was encountered.</source> <translation>L'élément inattendu '%1' a été rencontré.</translation> </message> <message> + <location line="+7"/> <source>An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4</source> - <translation>Une erreur est apparue lors de la lecture du fichier '%1' de définition des pinceaux à la ligne %2, colonne %3: %4</translation> + <translation>Une erreur est apparue lors de la lecture du fichier '%1' de définition des pinceaux à la ligne %2, colonne %3 : %4</translation> </message> <message> + <location line="+43"/> <source>An error occurred when reading the resource file '%1' at line %2, column %3: %4</source> <translation>Une erreur est survenue lors de la lecture du fichier de ressource '%1' à la ligne %2, colonne %3 : %4</translation> </message> @@ -3341,14 +4187,17 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BuddyEditor</name> <message> + <location filename="../tools/designer/src/components/buddyeditor/buddyeditor.cpp" line="+261"/> <source>Add buddy</source> <translation>Ajouter un copain</translation> </message> <message> + <location line="+52"/> <source>Remove buddies</source> <translation>Supprimer les copains</translation> </message> <message numerus="yes"> + <location line="+24"/> <source>Remove %n buddies</source> <translation> <numerusform>Supprimer %n copain</numerusform> @@ -3356,6 +4205,7 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message numerus="yes"> + <location line="+51"/> <source>Add %n buddies</source> <translation> <numerusform>Ajouter %n copain</numerusform> @@ -3363,6 +4213,7 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message> + <location line="+48"/> <source>Set automatically</source> <translation>Définir automatiquement</translation> </message> @@ -3370,6 +4221,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BuddyEditorPlugin</name> <message> + <location filename="../tools/designer/src/components/buddyeditor/buddyeditor_plugin.cpp" line="+73"/> <source>Edit Buddies</source> <translation>Éditer les copains</translation> </message> @@ -3377,6 +4229,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::BuddyEditorTool</name> <message> + <location filename="../tools/designer/src/components/buddyeditor/buddyeditor_tool.cpp" line="+56"/> <source>Edit Buddies</source> <translation>Éditer les copains</translation> </message> @@ -3384,10 +4237,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ButtonGroupMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+7"/> <source>Select members</source> <translation>Sélectionner les membres</translation> </message> <message> + <location line="+1"/> <source>Break</source> <translation>Casser</translation> </message> @@ -3395,26 +4250,32 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ButtonTaskMenu</name> <message> + <location line="+121"/> <source>Assign to button group</source> <translation>Assigner au groupe de boutons</translation> </message> <message> + <location line="+2"/> <source>Button group</source> <translation>Groupe de boutons</translation> </message> <message> + <location line="+1"/> <source>New button group</source> <translation>Nouveau groupe de boutons</translation> </message> <message> + <location line="+1"/> <source>Change text...</source> <translation>Modifier le texte...</translation> </message> <message> + <location line="+1"/> <source>None</source> <translation>Aucun</translation> </message> <message> + <location line="+101"/> <source>Button group '%1'</source> <translation>Groupe de boutons '%1'</translation> </message> @@ -3422,46 +4283,57 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::CodeDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="+95"/> <source>Save...</source> <translation>Enregistrer...</translation> </message> <message> + <location line="+4"/> <source>Copy All</source> <translation>Tout copier</translation> </message> <message> + <location line="+5"/> <source>&Find in Text...</source> <translation>&Rechercher dans le texte...</translation> </message> <message> + <location line="+75"/> <source>A temporary form file could not be created in %1.</source> <translation>Un fichier temporaire de formulaire n'a pas pu être créé dans %1.</translation> </message> <message> + <location line="+6"/> <source>The temporary form file %1 could not be written.</source> <translation>Le fichier temporaire de formulaire %1 n'a pas pu être écrit.</translation> </message> <message> + <location line="+21"/> <source>%1 - [Code]</source> <translation>%1 - [Code]</translation> </message> <message> + <location line="+23"/> <source>Save Code</source> <translation>Enregistrer le code</translation> </message> <message> + <location line="+0"/> <source>Header Files (*.%1)</source> <translation>Fichiers headers (*.%1)</translation> </message> <message> + <location line="+6"/> <source>The file %1 could not be opened: %2</source> <translation>Le fichier %1 ne peut pas être ouvert : %2</translation> </message> <message> + <location line="+5"/> <source>The file %1 could not be written: %2</source> <translation>Le fichier %1 ne peut pas être écrit : %2</translation> </message> <message> + <location line="+11"/> <source>%1 - Error</source> <translation>%1 - Erreur</translation> </message> @@ -3469,6 +4341,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ColorAction</name> <message> + <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="+246"/> <source>Text Color</source> <translation>Couleur du texte</translation> </message> @@ -3476,10 +4349,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ComboBoxTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/combobox_taskmenu.cpp" line="+68"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> <message> + <location line="+38"/> <source>Change Combobox Contents</source> <translation>Modifier le contenu du Combobox</translation> </message> @@ -3487,6 +4362,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::CommandLinkButtonTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+156"/> <source>Change description...</source> <translation>Modifier la description...</translation> </message> @@ -3494,14 +4370,17 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ConnectionEdit</name> <message> + <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="+1313"/> <source>Select All</source> <translation>Tout sélectionner</translation> </message> <message> + <location line="+3"/> <source>Deselect All</source> <translation>Désélectionner tout</translation> </message> <message> + <location line="+5"/> <source>Delete</source> <translation>Supprimer</translation> </message> @@ -3509,42 +4388,52 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ConnectionModel</name> <message> + <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="-465"/> <source>Sender</source> <translation>Émetteur</translation> </message> <message> + <location line="+1"/> <source>Signal</source> <translation>Signal</translation> </message> <message> + <location line="+1"/> <source>Receiver</source> <translation>Receveur</translation> </message> <message> + <location line="+1"/> <source>Slot</source> <translation>Slot</translation> </message> <message> + <location line="+90"/> <source><sender></source> <translation><émetteur></translation> </message> <message> + <location line="+1"/> <source><signal></source> <translation><signal></translation> </message> <message> + <location line="+1"/> <source><receiver></source> <translation><receveur></translation> </message> <message> + <location line="+1"/> <source><slot></source> <translation><slot></translation> </message> <message> + <location line="+108"/> <source>The connection already exists!<br>%1</source> <translation>La connexion existe déjà !<br>%1</translation> </message> <message> + <location line="+2"/> <source>Signal and Slot Editor</source> <translation>Éditeur de signaux et slots</translation> </message> @@ -3552,34 +4441,42 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ContainerWidgetTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="+79"/> <source>Delete</source> <translation>Supprimer</translation> </message> <message> + <location line="+25"/> <source>Insert</source> <translation>Insérer</translation> </message> <message> + <location line="+3"/> <source>Insert Page Before Current Page</source> <translation>Insérer la page avant la page courante</translation> </message> <message> + <location line="+4"/> <source>Insert Page After Current Page</source> <translation>Insérer la page après la page courante</translation> </message> <message> + <location line="+8"/> <source>Add Subwindow</source> <translation>Ajouter sous-fenêtre</translation> </message> <message> + <location line="+38"/> <source>Subwindow</source> <translation>Sous fenêtre</translation> </message> <message> + <location line="+2"/> <source>Page</source> <translation>Page</translation> </message> <message> + <location line="+1"/> <source>Page %1 of %2</source> <translation>Page %1 de %2</translation> </message> @@ -3587,15 +4484,18 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::DPI_Chooser</name> <message> + <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="+27"/> <source>System (%1 x %2)</source> <extracomment>System resolution</extracomment> <translation>Système (%1 x %2)</translation> </message> <message> + <location line="+7"/> <source>User defined</source> <translation>Défini par l'utilisateur</translation> </message> <message> + <location line="+18"/> <source> x </source> <extracomment>DPI X/Y separator</extracomment> <translation> x </translation> @@ -3604,38 +4504,49 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::DesignerPropertyManager</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="+647"/> + <location line="+6"/> <source>AlignLeft</source> <translation>AlignementGauche</translation> </message> <message> + <location line="-5"/> <source>AlignHCenter</source> <translation>AlignementCentreH</translation> </message> <message> + <location line="+1"/> <source>AlignRight</source> <translation>AlignementDroite</translation> </message> <message> + <location line="+1"/> <source>AlignJustify</source> <translation>AlignementJustifié</translation> </message> <message> + <location line="+9"/> <source>AlignTop</source> <translation>AlignementSommet</translation> </message> <message> + <location line="+1"/> + <location line="+4"/> <source>AlignVCenter</source> <translation>AlignementCentreV</translation> </message> <message> + <location line="-3"/> <source>AlignBottom</source> <translation>AlignementDessous</translation> </message> <message> + <location line="+565"/> <source>%1, %2</source> <translation>%1, %2</translation> </message> <message numerus="yes"> + <location line="+6"/> <source>Customized (%n roles)</source> <translation> <numerusform>Personnalisé (%n rôle)</numerusform> @@ -3643,59 +4554,76 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message> + <location line="+1"/> <source>Inherited</source> <translatorcomment>pour la palette</translatorcomment> <translation>Héritée</translation> </message> <message> + <location line="+566"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> + <location line="+9"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> + <location line="+15"/> <source>Normal Off</source> <translation>Arrêt normal</translation> </message> <message> + <location line="+1"/> <source>Normal On</source> <translation>Marche normal</translation> </message> <message> + <location line="+1"/> <source>Disabled Off</source> <translation>Arrêt désactivé</translation> </message> <message> + <location line="+1"/> <source>Disabled On</source> <translation>Marche désactivé</translation> </message> <message> + <location line="+1"/> <source>Active Off</source> <translation>Arrêt activé</translation> </message> <message> + <location line="+1"/> <source>Active On</source> <translation>Marche activé</translation> </message> <message> + <location line="+1"/> <source>Selected Off</source> <translation>Arrêt sélectionné</translation> </message> <message> + <location line="+1"/> <source>Selected On</source> <translation>Marche sélectionné</translation> </message> <message> + <location line="+7"/> + <location line="+21"/> <source>translatable</source> <translation>Traduisible</translation> </message> <message> + <location line="-15"/> + <location line="+21"/> <source>disambiguation</source> <translation>désambiguation</translation> </message> <message> + <location line="-15"/> + <location line="+21"/> <source>comment</source> <translation>commentaire</translation> </message> @@ -3703,38 +4631,48 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::DeviceProfileDialog</name> <message> + <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="+63"/> <source>Device Profiles (*.%1)</source> <translation>Profils d'appareil (*.%1)</translation> </message> <message> + <location line="+31"/> <source>Default</source> <translation>Par défaut</translation> </message> <message> + <location line="+67"/> <source>Save Profile</source> <translation>Enregistrer le profil</translation> </message> <message> + <location line="+10"/> <source>Save Profile - Error</source> <translation>Enregistrer le profile - Erreur</translation> </message> <message> + <location line="+0"/> <source>Unable to open the file '%1' for writing: %2</source> <translation>Impossible d'ouvrir le fichier '%1' en écriture : %2</translation> </message> <message> + <location line="+8"/> <source>Open profile</source> <translation>Ouvrir profil</translation> </message> <message> + <location line="+6"/> + <location line="+6"/> <source>Open Profile - Error</source> <translation>Ouvrir profil - Erreur</translation> </message> <message> + <location line="-6"/> <source>Unable to open the file '%1' for reading: %2</source> <translation>Impossible d'ouvrir le fichier '%1' en lecture : %2</translation> </message> <message> + <location line="+6"/> <source>'%1' is not a valid profile: %2</source> <translation>'%1' n'est pas un profil valide : %2</translation> </message> @@ -3742,46 +4680,57 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::Dialog</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui"/> <source>Dialog</source> <translation>Boîte de dialogue</translation> </message> <message> + <location/> <source>StringList</source> <translation>Liste de chaîne de caractères</translation> </message> <message> + <location/> <source>New String</source> <translation>Nouvelle chaîne de caractères</translation> </message> <message> + <location/> <source>&New</source> <translation>&Nouveau</translation> </message> <message> + <location/> <source>Delete String</source> <translation>Supprimer la chaîne de caractères</translation> </message> <message> + <location/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> + <location/> <source>&Value:</source> <translation>&Valeur : </translation> </message> <message> + <location/> <source>Move String Up</source> <translation>Déplacer la chaîne de caractères vers le haut</translation> </message> <message> + <location/> <source>Up</source> <translation>Vers le haut</translation> </message> <message> + <location/> <source>Move String Down</source> <translation>Déplacer la chaîne de caractères vers le bas</translation> </message> <message> + <location/> <source>Down</source> <translation>Vers le bas</translation> </message> @@ -3789,42 +4738,52 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::EmbeddedOptionsControl</name> <message> + <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="-260"/> <source>None</source> <translation>Aucun</translation> </message> <message> + <location line="+4"/> <source>Add a profile</source> <translation>Ajouter un profil</translation> </message> <message> + <location line="+6"/> <source>Edit the selected profile</source> <translation>Éditer le profile sélectionné</translation> </message> <message> + <location line="+4"/> <source>Delete the selected profile</source> <translation>Supprimer le profil sélectionné</translation> </message> <message> + <location line="+22"/> <source>Add Profile</source> <translation>Ajouter profil</translation> </message> <message> + <location line="+7"/> <source>New profile</source> <translation>Nouveau profil</translation> </message> <message> + <location line="+35"/> <source>Edit Profile</source> <translation>Éditer profil</translation> </message> <message> + <location line="+26"/> <source>Delete Profile</source> <translation>Supprimer profil</translation> </message> <message> + <location line="+1"/> <source>Would you like to delete the profile '%1'?</source> <translation>Voulez-vous supprimer le profil '%1' ?</translation> </message> <message> + <location line="+55"/> <source>Default</source> <translation>Par défaut</translation> </message> @@ -3836,10 +4795,12 @@ Voulez-vous le remplacer ?</translation> <translation type="obsolete"><Filtre></translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/filterwidget.cpp" line="+163"/> <source>Filter</source> <translation>Filtre</translation> </message> <message> + <location line="+36"/> <source>Clear text</source> <translation>Effacer le texte</translation> </message> @@ -3847,10 +4808,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormEditor</name> <message> + <location filename="../tools/designer/src/components/formeditor/formeditor.cpp" line="+190"/> <source>Resource File Changed</source> <translation>Fichier de ressource modifié</translation> </message> <message> + <location line="+1"/> <source>The file "%1" has changed outside Designer. Do you want to reload it?</source> <translation>Le fichier "%1" a été modifié en dehors de Designer. Voulez-vous le recharger ?</translation> </message> @@ -3858,6 +4821,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormLayoutMenu</name> <message> + <location filename="../tools/designer/src/lib/shared/formlayoutmenu.cpp" line="+24"/> <source>Add form layout row...</source> <translation>Ajouter une ligne au layout du formulaire...</translation> </message> @@ -3865,30 +4829,37 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindow</name> <message> + <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="-1322"/> <source>Edit contents</source> <translation>Éditer le contenu</translation> </message> <message> + <location line="+1"/> <source>F2</source> <translation>F2</translation> </message> <message> + <location line="+775"/> <source>Insert widget '%1'</source> <translation>Insérer le widget '%1'</translation> </message> <message> + <location line="+65"/> <source>Resize</source> <translation>Redimensionner</translation> </message> <message> + <location line="+248"/> <source>Key Move</source> <translation>Déplacement au clavier</translation> </message> <message> + <location line="+0"/> <source>Key Resize</source> <translation>Redimensionnement au clavier</translation> </message> <message numerus="yes"> + <location line="+252"/> <source>Paste %n action(s)</source> <translation> <numerusform>Coller %n action</numerusform> @@ -3896,6 +4867,7 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message numerus="yes"> + <location line="+2"/> <source>Paste %n widget(s)</source> <translation> <numerusform>Coller %n widget</numerusform> @@ -3903,42 +4875,53 @@ Voulez-vous le remplacer ?</translation> </translation> </message> <message> + <location line="+1"/> <source>Paste (%1 widgets, %2 actions)</source> <translation>Coller (%1 widgets, %2 actions)</translation> </message> <message> + <location line="+56"/> <source>Cannot paste widgets. Designer could not find a container without a layout to paste into.</source> <translation>Impossible de coller les widgets. Designer n'a pas trouvé de conteneur sans layout pour coller.</translation> </message> <message> + <location line="+2"/> <source>Break the layout of the container you want to paste into, select this container and then paste again.</source> <translation>Retirez le layout du conteneur dans lequel vous voulez coller, sélectionnez ce conteneur et collez à nouveau.</translation> </message> <message> + <location line="+4"/> <source>Paste error</source> <translation>Erreur de collage</translation> </message> <message> + <location line="+181"/> <source>Raise widgets</source> <translation>Élever widgets</translation> </message> <message> + <location line="+17"/> <source>Lower widgets</source> <translation>Descendre widgets</translation> </message> <message> + <location line="+204"/> <source>Select Ancestor</source> <translation>Sélectionner les ancêtres</translation> </message> <message> + <location line="+46"/> <source>Lay out</source> <translation>Mettre en page</translation> </message> <message> + <location line="+485"/> + <location line="+55"/> <source>Drop widget</source> <translation>Supprimer widget</translation> </message> <message> + <location line="-13"/> <source>A QMainWindow-based form does not contain a central widget.</source> <translation>Un formulaire basé sur QMainWindow ne contenant pas de widget central.</translation> </message> @@ -3946,10 +4929,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindowBase</name> <message> + <location filename="../tools/designer/src/lib/shared/formwindowbase.cpp" line="+404"/> <source>Delete '%1'</source> <translation>Supprimer '%1'</translation> </message> <message> + <location line="+0"/> <source>Delete</source> <translation>Supprimer</translation> </message> @@ -3957,78 +4942,99 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindowManager</name> <message> + <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="+365"/> <source>Cu&t</source> <translation>Co&uper</translation> </message> <message> + <location line="+3"/> <source>Cuts the selected widgets and puts them on the clipboard</source> <translation>Coupe les widgets sélectionnés et les place dans le presse-papiers</translation> </message> <message> + <location line="+5"/> <source>&Copy</source> <translation>Cop&ier</translation> </message> <message> + <location line="+3"/> <source>Copies the selected widgets to the clipboard</source> <translation>Copie les widgets sélectionnés dans le presse-papiers</translation> </message> <message> + <location line="+5"/> <source>&Paste</source> <translation>C&oller</translation> </message> <message> + <location line="+3"/> <source>Pastes the clipboard's contents</source> <translation>Colle le contenu du presse-papiers</translation> </message> <message> + <location line="+5"/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> + <location line="+2"/> <source>Deletes the selected widgets</source> <translation>Supprime les widgets sélectionnés</translation> </message> <message> + <location line="+5"/> <source>Select &All</source> <translation>Tout &sélectionner</translation> </message> <message> + <location line="+3"/> <source>Selects all widgets</source> <translation>Sélectionne tous les widgets</translation> </message> <message> + <location line="+5"/> <source>Bring to &Front</source> <translation>Amener au premier &plan</translation> </message> <message> + <location line="+3"/> + <location line="+1"/> <source>Raises the selected widgets</source> <translation>Élève les widgets sélectionnés</translation> </message> <message> + <location line="+4"/> <source>Send to &Back</source> <translation>Placer en &arrière plan</translation> </message> <message> + <location line="+3"/> + <location line="+1"/> <source>Lowers the selected widgets</source> <translation>Descend les widgets sélectionnés</translation> </message> <message> + <location line="+4"/> <source>Adjust &Size</source> <translation>Ajuster les &dimensions</translation> </message> <message> + <location line="+3"/> <source>Adjusts the size of the selected widget</source> <translation>Ajuster les dimensions du widget sélectionné</translation> </message> <message> + <location line="+6"/> <source>Lay Out &Horizontally</source> <translation>Mettre en page &horizontalement</translation> </message> <message> + <location line="+3"/> <source>Lays out the selected widgets horizontally</source> <translation>Mettre en page horizontalement les widgets sélectionnés</translation> </message> <message> + <location line="+39"/> <source>Lays out the selected widgets horizontally in a splitter</source> <translation>Met en page les widgets sélectionnés horizontalement à l'aide d'un séparateur</translation> </message> @@ -4037,30 +5043,37 @@ Voulez-vous le remplacer ?</translation> <translation type="obsolete">Mettre en page horizontalement les widgets sélectionnés</translation> </message> <message> + <location line="-33"/> <source>Lay Out &Vertically</source> <translation>Mettre en page &verticalement</translation> </message> <message> + <location line="+3"/> <source>Lays out the selected widgets vertically</source> <translation>Mettre en page verticalement les widgets sélectionnés</translation> </message> <message> + <location line="+7"/> <source>Lay Out in a &Form Layout</source> <translation>Mettre en page dans un layout de &formulaire</translation> </message> <message> + <location line="+3"/> <source>Lays out the selected widgets in a form layout</source> <translation>Mettre en page les widgets sélectionnés dans un layout de formulaire</translation> </message> <message> + <location line="+7"/> <source>Lay Out in a &Grid</source> <translation>Mettre en page dans une &grille</translation> </message> <message> + <location line="+3"/> <source>Lays out the selected widgets in a grid</source> <translation>Mettre en page les widgets sélectionnés dans une grille</translation> </message> <message> + <location line="+7"/> <source>Lay Out Horizontally in S&plitter</source> <translation>Mettre en page horizontalement avec un sé&parateur</translation> </message> @@ -4069,55 +5082,68 @@ Voulez-vous le remplacer ?</translation> <translation type="obsolete">Met en page les widgets sélectionnés horizontalement à l'aide d'un séparateur</translation> </message> <message> + <location line="+10"/> <source>Lay Out Vertically in Sp&litter</source> <translation>Mettre en page verticalement avec un sépa&rateur</translation> </message> <message> + <location line="+3"/> <source>Lays out the selected widgets vertically in a splitter</source> <translation>Met en page les widgets sélectionnés verticalement à l'aide d'un séparateur</translation> </message> <message> + <location line="+7"/> <source>&Break Layout</source> <translation>&Casser la mise en page</translation> </message> <message> + <location line="+3"/> <source>Breaks the selected layout</source> <translation>Retire le layout sélectionné</translation> </message> <message> + <location line="+5"/> <source>Si&mplify Grid Layout</source> <translation>Si&mplifier le layout de grille</translation> </message> <message> + <location line="+2"/> <source>Removes empty columns and rows</source> <translation>Supprime les lignes et colonnes vides</translation> </message> <message> + <location line="+6"/> <source>&Preview...</source> <translation>&Prévisualisation...</translation> </message> <message> + <location line="+2"/> <source>Preview current form</source> <translation>Prévisualise le formulaire courant</translation> </message> <message> + <location line="+15"/> <source>Form &Settings...</source> <translation>Paramètres du &formulaire...</translation> </message> <message> + <location line="+94"/> <source>Break Layout</source> <translation>Casser la mise en page</translation> </message> <message> + <location line="+26"/> <source>Adjust Size</source> <translation>Ajuster les dimensions</translation> </message> <message> + <location line="+43"/> <source>Could not create form preview</source> <comment>Title of warning message box</comment> <translation>Impossible de créer la prévisualisation du formulaire</translation> </message> <message> + <location line="+341"/> <source>Form Settings - %1</source> <translation>Paramètres du formulaire - %1</translation> </message> @@ -4125,10 +5151,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::FormWindowSettings</name> <message> + <location filename="../tools/designer/src/components/formeditor/formwindowsettings.cpp" line="+193"/> <source>None</source> <translation>Aucun</translation> </message> <message> + <location line="+1"/> <source>Device Profile: %1</source> <translation>Profil de périphérique : %1</translation> </message> @@ -4136,30 +5164,37 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::GridPanel</name> <message> + <location filename="../tools/designer/src/lib/shared/gridpanel.ui"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> + <location/> <source>Grid</source> <translation>Grille</translation> </message> <message> + <location/> <source>Visible</source> <translation>Visible</translation> </message> <message> + <location/> <source>Grid &X</source> <translation>Grille &X</translation> </message> <message> + <location/> <source>Snap</source> <translation>Grille aimantée</translation> </message> <message> + <location/> <source>Reset</source> <translation>Réinitialisé</translation> </message> <message> + <location/> <source>Grid &Y</source> <translation>Grille &Y</translation> </message> @@ -4167,6 +5202,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::GroupBoxTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/groupbox_taskmenu.cpp" line="+82"/> <source>Change title...</source> <translation>Modifier le titre...</translation> </message> @@ -4174,6 +5210,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::HtmlTextEdit</name> <message> + <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="-58"/> <source>Insert HTML entity</source> <translation>Insérer une entité HTML</translation> </message> @@ -4181,74 +5218,92 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::IconSelector</name> <message> + <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="-24"/> <source>The pixmap file '%1' cannot be read.</source> <translation>Le fichier pixmap '%1' ne peut pas être lu.</translation> </message> <message> + <location line="+6"/> <source>The file '%1' does not appear to be a valid pixmap file: %2</source> <translation>Le fichier '%1' n'est pas un fichier de pixmap valide : %2</translation> </message> <message> + <location line="+9"/> <source>The file '%1' could not be read: %2</source> <translation>Le fichier '%1' ne peut pas être lu : %2</translation> </message> <message> + <location line="+33"/> <source>Choose a Pixmap</source> <translation>Choisissez un pixmap</translation> </message> <message> + <location line="+7"/> <source>Pixmap Read Error</source> <translation>Erreur de lecture de pixmap</translation> </message> <message> + <location line="+54"/> <source>...</source> <translation>...</translation> </message> <message> + <location line="+6"/> <source>Normal Off</source> <translation>Arrêt normal</translation> </message> <message> + <location line="+1"/> <source>Normal On</source> <translation>Marche normal</translation> </message> <message> + <location line="+1"/> <source>Disabled Off</source> <translation>Arrêt désactivé</translation> </message> <message> + <location line="+1"/> <source>Disabled On</source> <translation>Marche désactivé</translation> </message> <message> + <location line="+1"/> <source>Active Off</source> <translation>Arrêt activé</translation> </message> <message> + <location line="+1"/> <source>Active On</source> <translation>Marche activé</translation> </message> <message> + <location line="+1"/> <source>Selected Off</source> <translation>Arrêt sélectionné</translation> </message> <message> + <location line="+1"/> <source>Selected On</source> <translation>Marche sélectionné</translation> </message> <message> + <location line="+8"/> <source>Choose Resource...</source> <translation>Choisir ressource...</translation> </message> <message> + <location line="+1"/> <source>Choose File...</source> <translation>Choisir un fichier...</translation> </message> <message> + <location line="+1"/> <source>Reset</source> <translation>Réinitialiser</translation> </message> <message> + <location line="+1"/> <source>Reset All</source> <translation>Réinitialisé tout</translation> </message> @@ -4256,46 +5311,58 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ItemListEditor</name> <message> + <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui"/> <source>Items List</source> <translation>Liste d'éléments</translation> </message> <message> + <location/> <source>New Item</source> <translation>Nouvel élément</translation> </message> <message> + <location/> <source>&New</source> <translation>&Nouveau</translation> </message> <message> + <location/> <source>Delete Item</source> <translation>Supprimer élément</translation> </message> <message> + <location/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> + <location/> <source>Move Item Up</source> <translation>Déplacer l'élément vers le haut</translation> </message> <message> + <location/> <source>U</source> <translation>Monter</translation> </message> <message> + <location/> <source>Move Item Down</source> <translation>Déplacer l'élément vers le bas</translation> </message> <message> + <location/> <source>D</source> <translation>Descendre</translation> </message> <message> + <location/> + <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="+360"/> <source>Properties &>></source> <translation>Propriétés &>></translation> </message> <message> + <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="-2"/> <source>Properties &<<</source> <translation>Propriétés &<<</translation> </message> @@ -4303,10 +5370,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::LabelTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/label_taskmenu.cpp" line="+85"/> <source>Change rich text...</source> <translation>Modifier texte riche...</translation> </message> <message> + <location line="+1"/> <source>Change plain text...</source> <translation>Modifier texte simple...</translation> </message> @@ -4314,6 +5383,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::LanguageResourceDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="-343"/> <source>Choose Resource</source> <translation>Choisir ressource</translation> </message> @@ -4321,6 +5391,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::LineEditTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/lineedit_taskmenu.cpp" line="+80"/> <source>Change text...</source> <translation>Modifier texte...</translation> </message> @@ -4328,14 +5399,17 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ListWidgetEditor</name> <message> + <location filename="../tools/designer/src/components/taskmenu/listwidgeteditor.cpp" line="+69"/> <source>New Item</source> <translation>Nouvel élément</translation> </message> <message> + <location line="+32"/> <source>Edit List Widget</source> <translation>Éditer le widget de liste</translation> </message> <message> + <location line="+19"/> <source>Edit Combobox</source> <translation>Éditer le Combobox</translation> </message> @@ -4343,10 +5417,12 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::ListWidgetTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/listwidget_taskmenu.cpp" line="+67"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> <message> + <location line="+38"/> <source>Change List Contents</source> <translation>Modifier le contenu de la liste</translation> </message> @@ -4354,18 +5430,22 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::MdiContainerWidgetTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="+118"/> <source>Next Subwindow</source> <translation>Sous-fenêtre suivante</translation> </message> <message> + <location line="+1"/> <source>Previous Subwindow</source> <translation>Sous-fenêtre précédente</translation> </message> <message> + <location line="+1"/> <source>Tile</source> <translation>Côte à côte</translation> </message> <message> + <location line="+1"/> <source>Cascade</source> <translation>Cascade</translation> </message> @@ -4373,6 +5453,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::MenuTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/menutaskmenu.cpp" line="+56"/> <source>Remove</source> <translation>Supprimer</translation> </message> @@ -4380,6 +5461,7 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::MorphMenu</name> <message> + <location filename="../tools/designer/src/lib/shared/morphmenu.cpp" line="+264"/> <source>Morph into</source> <translation>Transformer en</translation> </message> @@ -4387,34 +5469,42 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::NewActionDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/newactiondialog.ui"/> <source>New Action...</source> <translation>Nouvelle action...</translation> </message> <message> + <location/> <source>&Text:</source> <translation>&Texte :</translation> </message> <message> + <location/> <source>Object &name:</source> <translation>&Nom de l'objet :</translation> </message> <message> + <location/> <source>&Icon:</source> <translation>&Icône :</translation> </message> <message> + <location/> <source>Shortcut:</source> <translation>Raccourci :</translation> </message> <message> + <location/> <source>Checkable:</source> <translation>Peut être cochée :</translation> </message> <message> + <location/> <source>ToolTip:</source> <translation>Info-bulle :</translation> </message> <message> + <location/> <source>...</source> <translation>...</translation> </message> @@ -4422,32 +5512,39 @@ Voulez-vous le remplacer ?</translation> <context> <name>qdesigner_internal::NewDynamicPropertyDialog</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.ui"/> <source>Create Dynamic Property</source> <translation>Créer une propriété dynamique</translation> </message> <message> + <location/> <source>Property Name</source> <translation>Nom de la propriété</translation> </message> <message> + <location/> <source>horizontalSpacer</source> <translation>Espaceur horizontal</translation> </message> <message> + <location/> <source>Property Type</source> <translation>Type de la propriété</translation> </message> <message> + <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.cpp" line="+134"/> <source>Set Property Name</source> <translation>Définir le nom de la propriété</translation> </message> <message> + <location line="+11"/> <source>The current object already has a property named '%1'. Please select another, unique one.</source> <translation>L'objet courant possède déjà une propriété nommée '%1'. Veuillez-sélectionner un autre nom.</translation> </message> <message> + <location line="+4"/> <source>The '_q_' prefix is reserved for the Qt library. Please select another name.</source> <translation>Le préfixe «_q_» est réservé pour la bibliothèque Qt. @@ -4457,67 +5554,83 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::NewFormWidget</name> <message> + <location filename="../tools/designer/src/lib/shared/newformwidget.ui"/> <source>0</source> <translation>0</translation> </message> <message> + <location/> <source>Choose a template for a preview</source> <translation>Choisir un modèle pour la prévisualisation</translation> </message> <message> + <location/> <source>Embedded Design</source> <translation>Design pour appareil mobile</translation> </message> <message> + <location/> <source>Device:</source> <translation>Appareil :</translation> </message> <message> + <location/> <source>Screen Size:</source> <translation>Dimensions de l'écran :</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="+104"/> <source>Default size</source> <translation>Dimensions par défaut</translation> </message> <message> + <location line="+1"/> <source>QVGA portrait (240x320)</source> <translation>QVGA portrait (240x320)</translation> </message> <message> + <location line="+1"/> <source>QVGA landscape (320x240)</source> <translation>QVGA paysage (320x240)</translation> </message> <message> + <location line="+1"/> <source>VGA portrait (480x640)</source> <translation>VGA portrait (480x640)</translation> </message> <message> + <location line="+1"/> <source>VGA landscape (640x480)</source> <translation>VGA paysage (640x480)</translation> </message> <message> + <location line="+66"/> <source>Widgets</source> <extracomment>New Form Dialog Categories</extracomment> <translation>Widgets</translation> </message> <message> + <location line="+1"/> <source>Custom Widgets</source> <translation>Widgets personnalisé</translation> </message> <message> + <location line="+18"/> <source>None</source> <translation>Aucun</translation> </message> <message> + <location line="+57"/> <source>Error loading form</source> <translation>Erreur de chargement du formulaire</translation> </message> <message> + <location line="+244"/> <source>Unable to open the form template file '%1': %2</source> <translation>Impossible d'ouvrir le fichier de modèle de formulaire '%1' : %2</translation> </message> <message> + <location line="+67"/> <source>Internal error: No template selected.</source> <translation>Erreur interne : aucun modèle sélectionné.</translation> </message> @@ -4525,30 +5638,37 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::NewPromotedClassPanel</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="+92"/> <source>Add</source> <translation>Ajouter</translation> </message> <message> + <location line="+2"/> <source>New Promoted Class</source> <translation>Nouvelle classe promue</translation> </message> <message> + <location line="+15"/> <source>Base class name:</source> <translation>Nom de la classe de base :</translation> </message> <message> + <location line="+1"/> <source>Promoted class name:</source> <translation>Nom de la classe promue :</translation> </message> <message> + <location line="+1"/> <source>Header file:</source> <translation>Fichier d'en-tête :</translation> </message> <message> + <location line="+1"/> <source>Global include</source> <translation>En-tête global</translation> </message> <message> + <location line="+11"/> <source>Reset</source> <translation>Réinitialiser</translation> </message> @@ -4556,10 +5676,12 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::ObjectInspector</name> <message> + <location filename="../tools/designer/src/components/objectinspector/objectinspector.cpp" line="+316"/> <source>Change Current Page</source> <translation>Modifier la page courante</translation> </message> <message> + <location line="+438"/> <source>&Find in Text...</source> <translation>&Rechercher dans le texte...</translation> </message> @@ -4574,26 +5696,32 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::OrderDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/orderdialog.ui"/> <source>Change Page Order</source> <translation>Modifier l'ordre des pages</translation> </message> <message> + <location/> <source>Page Order</source> <translation>Ordre des pages</translation> </message> <message> + <location/> <source>Move page up</source> <translation>Déplacer la page vers le haut</translation> </message> <message> + <location/> <source>Move page down</source> <translation>Déplacer la page vers le bas</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/orderdialog.cpp" line="+109"/> <source>Index %1 (%2)</source> <translation>Indice %1 (%2)</translation> </message> <message> + <location line="+3"/> <source>%1 %2</source> <translation>%1 %2</translation> </message> @@ -4601,38 +5729,47 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PaletteEditor</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui"/> <source>Edit Palette</source> <translation>Éditer la palette</translation> </message> <message> + <location/> <source>Tune Palette</source> <translation>Ajuster la palette</translation> </message> <message> + <location/> <source>Show Details</source> <translation>Afficher les détails</translation> </message> <message> + <location/> <source>Compute Details</source> <translation>Calculer les détails</translation> </message> <message> + <location/> <source>Quick</source> <translation>Rapide</translation> </message> <message> + <location/> <source>Preview</source> <translation>Prévisualisation</translation> </message> <message> + <location/> <source>Disabled</source> <translation>Désactivé</translation> </message> <message> + <location/> <source>Inactive</source> <translation>Inactif</translation> </message> <message> + <location/> <source>Active</source> <translation>Actif</translation> </message> @@ -4640,6 +5777,7 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PaletteEditorButton</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/paletteeditorbutton.cpp" line="+57"/> <source>Change Palette</source> <translation>Modifier la palette</translation> </message> @@ -4647,18 +5785,22 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PaletteModel</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.cpp" line="+374"/> <source>Color Role</source> <translation>Rôle de la couleur</translation> </message> <message> + <location line="+2"/> <source>Active</source> <translation>Actif</translation> </message> <message> + <location line="+2"/> <source>Inactive</source> <translation>Inactif</translation> </message> <message> + <location line="+2"/> <source>Disabled</source> <translation>Désactivé</translation> </message> @@ -4666,22 +5808,28 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PixmapEditor</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="-1541"/> <source>Choose Resource...</source> <translation>Choisir ressource...</translation> </message> <message> + <location line="+1"/> <source>Choose File...</source> <translation>Choisir fichier...</translation> </message> <message> + <location line="+1"/> <source>Copy Path</source> <translation>Chemin de copie</translation> </message> <message> + <location line="+1"/> <source>Paste Path</source> <translation>Chemin de collage</translation> </message> <message> + <location line="+6"/> + <location line="+16"/> <source>...</source> <translation>...</translation> </message> @@ -4689,6 +5837,7 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PlainTextEditorDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/plaintexteditor.cpp" line="+65"/> <source>Edit text</source> <translation>Éditer le texte</translation> </message> @@ -4696,30 +5845,37 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PluginDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="+72"/> <source>Components</source> <translation>Composants</translation> </message> <message> + <location line="+13"/> <source>Plugin Information</source> <translation>Information sur les plugins</translation> </message> <message> + <location line="+4"/> <source>Refresh</source> <translation>Rafraîchir</translation> </message> <message> + <location line="+1"/> <source>Scan for newly installed custom widget plugins.</source> <translation>Recherche des plugins personnalisés récemment installés.</translation> </message> <message> + <location line="+48"/> <source>Qt Designer couldn't find any plugins</source> <translation>Qt Designer n'a trouvé aucun plugin</translation> </message> <message> + <location line="+3"/> <source>Qt Designer found the following plugins</source> <translation>Qt Designer a trouvé les plugins suivants</translation> </message> <message> + <location line="+55"/> <source>New custom widget plugins have been found.</source> <translation>De nouveaux plugins de widgets ont été trouvés.</translation> </message> @@ -4727,6 +5883,7 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewActionGroup</name> <message> + <location filename="../tools/designer/src/components/formeditor/previewactiongroup.cpp" line="+95"/> <source>%1 Style</source> <translation>Style %1</translation> </message> @@ -4734,38 +5891,47 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewConfigurationWidget</name> <message> + <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="+139"/> <source>Default</source> <translation>Par défaut</translation> </message> <message> + <location line="+22"/> <source>None</source> <translation>Aucun</translation> </message> <message> + <location line="+6"/> <source>Browse...</source> <translation>Parcourir...</translation> </message> <message> + <location line="+118"/> <source>Load Custom Device Skin</source> <translation>Charger le revêtement d'appareil personnalisé</translation> </message> <message> + <location line="+2"/> <source>All QVFB Skins (*.%1)</source> <translation>Tous les revêtements QVFB (*.%1)</translation> </message> <message> + <location line="+16"/> <source>%1 - Duplicate Skin</source> <translation>%1 - Revêtement doublon</translation> </message> <message> + <location line="+1"/> <source>The skin '%1' already exists.</source> <translation>Le revêtement '%1' existe déjà.</translation> </message> <message> + <location line="+14"/> <source>%1 - Error</source> <translation>%1 - Erreur</translation> </message> <message> + <location line="+1"/> <source>%1 is not a valid skin directory: %2</source> <translation>%1 n'est pas un répertoire de revêtements valide : @@ -4804,20 +5970,24 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewDeviceSkin</name> <message> + <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="+259"/> <source>&Portrait</source> <translation>&Portrait</translation> </message> <message> + <location line="+2"/> <source>Landscape (&CCW)</source> <extracomment>Rotate form preview counter-clockwise</extracomment> <translation>Paysage (&dans le sens horaire)</translation> </message> <message> + <location line="+2"/> <source>&Landscape (CW)</source> <extracomment>Rotate form preview clockwise</extracomment> <translation>Paysage (&dans le sens anti-horaire)</translation> </message> <message> + <location line="+1"/> <source>&Close</source> <translation>&Fermer</translation> </message> @@ -4825,6 +5995,7 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewManager</name> <message> + <location line="+426"/> <source>%1 - [Preview]</source> <translation>%1 - [prévisualisation]</translation> </message> @@ -4832,6 +6003,7 @@ Veuillez sélectionner un autre nom.</translation> <context> <name>qdesigner_internal::PreviewMdiArea</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/previewframe.cpp" line="+72"/> <source>The moose in the noose ate the goose who was loose.</source> <extracomment>Palette editor background</extracomment> @@ -4842,46 +6014,57 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PreviewWidget</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui"/> <source>Preview Window</source> <translation>Fenêtre de prévisualisation</translation> </message> <message> + <location/> <source>LineEdit</source> <translation>LineEdit</translation> </message> <message> + <location/> <source>ComboBox</source> <translation>ComboBox</translation> </message> <message> + <location/> <source>PushButton</source> <translation>PushButton</translation> </message> <message> + <location/> <source>ButtonGroup2</source> <translation>ButtonGroup2</translation> </message> <message> + <location/> <source>CheckBox1</source> <translation>CheckBox1</translation> </message> <message> + <location/> <source>CheckBox2</source> <translation>CheckBox2</translation> </message> <message> + <location/> <source>ButtonGroup</source> <translation>ButtonGroup</translation> </message> <message> + <location/> <source>RadioButton1</source> <translation>RadioButton1</translation> </message> <message> + <location/> <source>RadioButton2</source> <translation>RadioButton2</translation> </message> <message> + <location/> <source>RadioButton3</source> <translation>BoutonRadio1</translation> </message> @@ -4889,18 +6072,22 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PromotionModel</name> <message> + <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="+17"/> <source>Name</source> <translation>Nom</translation> </message> <message> + <location line="+1"/> <source>Header file</source> <translation>Fichier d'en-tête</translation> </message> <message> + <location line="+1"/> <source>Global include</source> <translation>En-tête global</translation> </message> <message> + <location line="+1"/> <source>Usage</source> <translation>Usage</translation> </message> @@ -4908,22 +6095,27 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PromotionTaskMenu</name> <message> + <location filename="../tools/designer/src/lib/shared/promotiontaskmenu.cpp" line="+85"/> <source>Promoted widgets...</source> <translation>Widgets promus...</translation> </message> <message> + <location line="+1"/> <source>Promote to ...</source> <translation>Promouvoir en...</translation> </message> <message> + <location line="+1"/> <source>Change signals/slots...</source> <translation>Modifier signaux/slots...</translation> </message> <message> + <location line="+1"/> <source>Promote to</source> <translation>Promouvoir en</translation> </message> <message> + <location line="+1"/> <source>Demote to %1</source> <translation>Rétrograder en %1</translation> </message> @@ -4931,46 +6123,57 @@ je préfère les mines de Pompéi.</translation> <context> <name>qdesigner_internal::PropertyEditor</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="+231"/> <source>Add Dynamic Property...</source> <translation>Ajouter une propriété dynamique...</translation> </message> <message> + <location line="+1"/> <source>Remove Dynamic Property</source> <translation>Supprimer la propriété dynamique</translation> </message> <message> + <location line="+1"/> <source>Sorting</source> <translation>Tri</translation> </message> <message> + <location line="+1"/> <source>Color Groups</source> <translation>Groupes de couleur</translation> </message> <message> + <location line="+1"/> <source>Tree View</source> <translation>Vue arborescente</translation> </message> <message> + <location line="+1"/> <source>Drop Down Button View</source> <translation>Liste déroulante</translation> </message> <message> + <location line="+45"/> <source>String...</source> <translation>Chaîne de caractères...</translation> </message> <message> + <location line="+3"/> <source>Bool...</source> <translation>Booléen...</translation> </message> <message> + <location line="+4"/> <source>Other...</source> <translation>Autre...</translation> </message> <message> + <location line="+7"/> <source>Configure Property Editor</source> <translation>Configurer l'éditeur de propriétés</translation> </message> <message> + <location line="+539"/> <source>Object: %1 Class: %2</source> <translation>Objet : %1 @@ -4980,6 +6183,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::PropertyLineEdit</name> <message> + <location filename="../tools/designer/src/lib/shared/propertylineedit.cpp" line="+88"/> <source>Insert line break</source> <translation>Insérer saut de ligne</translation> </message> @@ -4987,22 +6191,27 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerPromotionDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="+85"/> <source>Promoted Widgets</source> <translation>Widgets promus</translation> </message> <message> + <location line="+7"/> <source>Promoted Classes</source> <translation>Classes promues</translation> </message> <message> + <location line="+60"/> <source>Promote</source> <translation>Promouvoir</translation> </message> <message> + <location line="+152"/> <source>Change signals/slots...</source> <translation>Modifier signaux/slots...</translation> </message> <message> + <location line="+17"/> <source>%1 - Error</source> <translation>%1 - Erreur</translation> </message> @@ -5010,18 +6219,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerResource</name> <message> + <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="+277"/> <source>Loading qrc file</source> <translation>Chargement du fichier qrc</translation> </message> <message> + <location line="+1"/> <source>The specified qrc file <p><b>%1</b></p><p>could not be found. Do you want to update the file location?</p></source> - <translation>Le fichier qrc spécifié <p><b>%1</b></p><p>n'a pas pu être trouvé. Voulez-vous mettre à jour l'emplacement du fichier?</p></translation> + <translation>Le fichier qrc spécifié <p><b>%1</b></p><p>n'a pas pu être trouvé. Voulez-vous mettre à jour l'emplacement du fichier ?</p></translation> </message> <message> + <location line="+6"/> <source>New location for %1</source> <translation>Nouvel emplacement pour %1</translation> </message> <message> + <location line="+1"/> <source>Resource files (*.qrc)</source> <translation>Fichier de ressource (*.qrc)</translation> </message> @@ -5029,90 +6242,112 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerTaskMenu</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="+68"/> <source>Change objectName...</source> <translation>Modifier objectName...</translation> </message> <message> + <location line="+1"/> <source>Change toolTip...</source> <translation>Modifier toolTip...</translation> </message> <message> + <location line="+1"/> <source>Change whatsThis...</source> <translation>Modifier whatsThis...</translation> </message> <message> + <location line="+1"/> <source>Change styleSheet...</source> <translation>Modifier la feuille de style...</translation> </message> <message> + <location line="+3"/> <source>Create Menu Bar</source> <translation>Créer une barre de menus</translation> </message> <message> + <location line="+1"/> <source>Add Tool Bar</source> <translation>Ajouter une barre d'outils</translation> </message> <message> + <location line="+1"/> <source>Create Status Bar</source> <translation>Créer une barre de status</translation> </message> <message> + <location line="+1"/> <source>Remove Status Bar</source> <translation>Supprimer la barre de status</translation> </message> <message> + <location line="+1"/> <source>Change script...</source> <translation>Modifier le script...</translation> </message> <message> + <location line="+1"/> <source>Change signals/slots...</source> <translation>Modifier signaux/slots...</translation> </message> <message> + <location line="+1"/> <source>Go to slot...</source> <translation>Aller au slot...</translation> </message> <message> + <location line="+3"/> <source>Size Constraints</source> <translation>Contrainte de taille</translation> </message> <message> + <location line="+4"/> <source>Set Minimum Width</source> <translation>Définir la largeur minimum</translation> </message> <message> + <location line="+4"/> <source>Set Minimum Height</source> <translation>Définir la hauteur minimum</translation> </message> <message> + <location line="+4"/> <source>Set Minimum Size</source> <translation>Définir la taille minimum</translation> </message> <message> + <location line="+6"/> <source>Set Maximum Width</source> <translation>Définir la largeur maximum</translation> </message> <message> + <location line="+4"/> <source>Set Maximum Height</source> <translation>Définir la hauteur maximum</translation> </message> <message> + <location line="+4"/> <source>Set Maximum Size</source> <translation>Définir la taille maximum</translation> </message> <message> + <location line="+235"/> <source>Edit ToolTip</source> <translation>Éditer l'info-bulle</translation> </message> <message> + <location line="+5"/> <source>Edit WhatsThis</source> <translation>Éditer «Qu'est-ce»</translation> </message> <message> + <location line="+144"/> <source>no signals available</source> <translation>Aucun signal disponible</translation> </message> <message numerus="yes"> + <location line="+67"/> <source>Set size constraint on %n widget(s)</source> <translation> <numerusform>Définir les contraintes de dimensions sur %n widget</numerusform> @@ -5123,32 +6358,40 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QDesignerWidgetBox</name> <message> + <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="+349"/> <source>An error has been encountered at line %1 of %2: %3</source> <translation>Une erreur a été rencontrée à la ligne %1 de %2 : %3</translation> </message> <message> + <location line="+139"/> <source>Unexpected element <%1> encountered when parsing for <widget> or <ui></source> <translation>L'élément inattendu <%1> a été rencontré lors de l'analyse des élements <widget> et <ui></translation> </message> <message> + <location line="+19"/> <source>Unexpected end of file encountered when parsing widgets.</source> <translation>Fin de fichier inattendue lors de l'analyse grammaticale des widgets.</translation> </message> <message> + <location line="+9"/> <source>A widget element could not be found.</source> <translation>Un élement de widget n'a pas pu être trouvé.</translation> </message> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_widgetbox.cpp" line="+123"/> + <location line="+13"/> <source>Unexpected element <%1></source> <translation>Élément <%1> inattendu</translation> </message> <message> + <location line="+7"/> <source>A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 %5</source> <translation>Une erreur d'analyse grammaticale est apparue à la ligne %1, colonne %2 du code XML spécifiant le widget %3 : %4 %5</translation> </message> <message> + <location line="+9"/> <source>The XML code specified for the widget %1 does not contain any widget elements. %2</source> <translation>Le code XML spécifié pour le widget %1 ne contient aucun élément widget. @@ -5158,58 +6401,73 @@ Classe : %2</translation> <context> <name>qdesigner_internal::QtGradientStopsController</name> <message> + <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="+173"/> <source>H</source> <translation>T</translation> </message> <message> + <location line="+1"/> <source>S</source> <translation>S</translation> </message> <message> + <location line="+1"/> <source>V</source> <translation>V</translation> </message> <message> + <location line="+6"/> + <location line="+4"/> <source>Hue</source> <translation>Teinte</translation> </message> <message> + <location line="-3"/> <source>Sat</source> <translation>Sat</translation> </message> <message> + <location line="+1"/> <source>Val</source> <translation>Val</translation> </message> <message> + <location line="+3"/> <source>Saturation</source> <translation>Saturation</translation> </message> <message> + <location line="+1"/> <source>Value</source> <translation>Valeur</translation> </message> <message> + <location line="+22"/> <source>R</source> <translation>R</translation> </message> <message> + <location line="+1"/> <source>G</source> <translation>V</translation> </message> <message> + <location line="+1"/> <source>B</source> <translation>B</translation> </message> <message> + <location line="+6"/> <source>Red</source> <translation>Rouge</translation> </message> <message> + <location line="+1"/> <source>Green</source> <translation>Vert</translation> </message> <message> + <location line="+1"/> <source>Blue</source> <translation>Bleu</translation> </message> @@ -5217,22 +6475,27 @@ Classe : %2</translation> <context> <name>qdesigner_internal::RichTextEditorDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="+436"/> <source>Edit text</source> <translation>Éditer le texte</translation> </message> <message> + <location line="+23"/> <source>Rich Text</source> <translation>Texte riche</translation> </message> <message> + <location line="+1"/> <source>Source</source> <translation>Source</translation> </message> <message> + <location line="+6"/> <source>&OK</source> <translation>&OK</translation> </message> <message> + <location line="+2"/> <source>&Cancel</source> <translation>&Annuler</translation> </message> @@ -5240,58 +6503,72 @@ Classe : %2</translation> <context> <name>qdesigner_internal::RichTextEditorToolBar</name> <message> + <location line="-302"/> <source>Bold</source> <translation>Gras</translation> </message> <message> + <location line="+1"/> <source>CTRL+B</source> <translation>CTRL+B</translation> </message> <message> + <location line="+5"/> <source>Italic</source> <translation>Italique</translation> </message> <message> + <location line="+1"/> <source>CTRL+I</source> <translation>CTRL+I</translation> </message> <message> + <location line="+5"/> <source>Underline</source> <translation>Souligné</translation> </message> <message> + <location line="+1"/> <source>CTRL+U</source> <translation>CTRL+U</translation> </message> <message> + <location line="+13"/> <source>Left Align</source> <translation>Aligner à gauche</translation> </message> <message> + <location line="+5"/> <source>Center</source> <translation>Centrer</translation> </message> <message> + <location line="+5"/> <source>Right Align</source> <translation>Aligner à droite</translation> </message> <message> + <location line="+5"/> <source>Justify</source> <translation>Justifier</translation> </message> <message> + <location line="+9"/> <source>Superscript</source> <translation>Exposant</translation> </message> <message> + <location line="+6"/> <source>Subscript</source> <translation>Indice</translation> </message> <message> + <location line="+9"/> <source>Insert &Link</source> <translation>Insérer &lien</translation> </message> <message> + <location line="+5"/> <source>Insert &Image</source> <translation>Insérer &image</translation> </message> @@ -5299,14 +6576,17 @@ Classe : %2</translation> <context> <name>qdesigner_internal::ScriptDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/scriptdialog.cpp" line="+66"/> <source>Edit script</source> <translation>Éditer le script</translation> </message> <message> + <location line="+5"/> <source><html>Enter a Qt Script snippet to be executed while loading the form.<br>The widget and its children are accessible via the variables <i>widget</i> and <i>childWidgets</i>, respectively.</source> <translation><html>Entrez un snippet de code Qt Script à exécuter lors du chargement du formulaire.<br>Le widget et ses enfants sont accessibles via les variables <i>widget</i> et <i>childWidgets</i>, respectivement.</translation> </message> <message> + <location line="+51"/> <source>Syntax error</source> <translation>Erreur de syntaxe</translation> </message> @@ -5314,6 +6594,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::ScriptErrorDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/scripterrordialog.cpp" line="+27"/> <source>Script errors</source> <translation>Erreurs de script</translation> </message> @@ -5321,18 +6602,23 @@ Classe : %2</translation> <context> <name>qdesigner_internal::SignalSlotDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="+199"/> <source>There is already a slot with the signature '%1'.</source> <translation>Un slot existe déjà avec la signature '%1'.</translation> </message> <message> + <location line="+5"/> <source>There is already a signal with the signature '%1'.</source> <translation>Un signal existe déjà avec la signature '%1'.</translation> </message> <message> + <location line="+7"/> <source>%1 - Duplicate Signature</source> <translation>%1 - Signature double</translation> </message> <message> + <location line="+21"/> + <location line="+76"/> <source>Signals/Slots of %1</source> <translation>Signaux/slots de %1</translation> </message> @@ -5340,10 +6626,12 @@ Classe : %2</translation> <context> <name>qdesigner_internal::SignalSlotEditorPlugin</name> <message> + <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor_plugin.cpp" line="+72"/> <source>Edit Signals/Slots</source> <translation>Éditer signaux/slots</translation> </message> <message> + <location line="+2"/> <source>F4</source> <translation>F4</translation> </message> @@ -5351,6 +6639,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::SignalSlotEditorTool</name> <message> + <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor_tool.cpp" line="+58"/> <source>Edit Signals/Slots</source> <translation>Éditer signaux/slots</translation> </message> @@ -5358,6 +6647,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::StatusBarTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/toolbar_taskmenu.cpp" line="+81"/> <source>Remove</source> <translation>Supprimer</translation> </message> @@ -5365,6 +6655,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::StringListEditorButton</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/stringlisteditorbutton.cpp" line="+56"/> <source>Change String List</source> <translation>Modifier la liste de chaîne de caractères</translation> </message> @@ -5372,30 +6663,38 @@ Classe : %2</translation> <context> <name>qdesigner_internal::StyleSheetEditorDialog</name> <message> + <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="+90"/> + <location line="+280"/> <source>Valid Style Sheet</source> <translation>Feuille de style valide</translation> </message> <message> + <location line="-278"/> <source>Add Resource...</source> <translation>Ajouter ressource...</translation> </message> <message> + <location line="+1"/> <source>Add Gradient...</source> <translation>Ajouter gradient...</translation> </message> <message> + <location line="+1"/> <source>Add Color...</source> <translation>Ajouter couleur...</translation> </message> <message> + <location line="+1"/> <source>Add Font...</source> <translation>Ajouter police...</translation> </message> <message> + <location line="+2"/> <source>Edit Style Sheet</source> <translation>Éditer feuille de style</translation> </message> <message> + <location line="+276"/> <source>Invalid Style Sheet</source> <translation>Feuille de style invalide</translation> </message> @@ -5403,22 +6702,27 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TabOrderEditor</name> <message> + <location filename="../tools/designer/src/components/tabordereditor/tabordereditor.cpp" line="+363"/> <source>Start from Here</source> <translation>Démarrer à partir d'ici</translation> </message> <message> + <location line="+3"/> <source>Restart</source> <translation>Redémarrer</translation> </message> <message> + <location line="+2"/> <source>Tab Order List...</source> <translation>Ordre de la liste de tabulation...</translation> </message> <message> + <location line="+44"/> <source>Tab Order List</source> <translation>Ordre de la liste de tabulation</translation> </message> <message> + <location line="+1"/> <source>Tab Order</source> <translation>Ordre des tabulations</translation> </message> @@ -5426,6 +6730,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TabOrderEditorPlugin</name> <message> + <location filename="../tools/designer/src/components/tabordereditor/tabordereditor_plugin.cpp" line="+73"/> <source>Edit Tab Order</source> <translation>Éditer l'ordre des tabulations</translation> </message> @@ -5433,6 +6738,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TabOrderEditorTool</name> <message> + <location filename="../tools/designer/src/components/tabordereditor/tabordereditor_tool.cpp" line="+57"/> <source>Edit Tab Order</source> <translation>Éditer l'ordre des tabulations</translation> </message> @@ -5440,38 +6746,48 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TableWidgetEditor</name> <message> + <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.ui"/> <source>Edit Table Widget</source> <translation>Éditer le widget de table</translation> </message> <message> + <location/> <source>&Items</source> <translation>&Éléments</translation> </message> <message> + <location/> <source>Table Items</source> <translation>Éléments de la table</translation> </message> <message> + <location/> + <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="+218"/> <source>Properties &>></source> <translation>Propriétés &>></translation> </message> <message> + <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="-151"/> <source>New Column</source> <translation>Nouvelle colonne</translation> </message> <message> + <location line="+3"/> <source>New Row</source> <translation>Nouvelle ligne</translation> </message> <message> + <location line="+8"/> <source>&Columns</source> <translation>&Colonne</translation> </message> <message> + <location line="+1"/> <source>&Rows</source> <translation>&Lignes</translation> </message> <message> + <location line="+137"/> <source>Properties &<<</source> <translation>Propriétés &<<</translation> </message> @@ -5479,6 +6795,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TableWidgetTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/tablewidget_taskmenu.cpp" line="+64"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> @@ -5486,18 +6803,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TemplateOptionsWidget</name> <message> + <location filename="../tools/designer/src/components/formeditor/templateoptionspage.ui"/> <source>Form</source> <translation>Formulaire</translation> </message> <message> + <location/> <source>Additional Template Paths</source> <translation>Chemins de modèles additionnels</translation> </message> <message> + <location/> <source>...</source> <translation>...</translation> </message> <message> + <location filename="../tools/designer/src/components/formeditor/templateoptionspage.cpp" line="-18"/> <source>Pick a directory to save templates in</source> <translation>Choisir un répertoire où enregistrer les modèles</translation> </message> @@ -5505,18 +6826,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TextEditTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/textedit_taskmenu.cpp" line="+58"/> <source>Edit HTML</source> <translation>Éditer le HTML</translation> </message> <message> + <location line="+1"/> <source>Change HTML...</source> <translation>Modifier le HTML...</translation> </message> <message> + <location line="+9"/> <source>Edit Text</source> <translation>Éditer le texte</translation> </message> <message> + <location line="+1"/> <source>Change Plain Text...</source> <translation>Modifier le texte simple...</translation> </message> @@ -5524,18 +6849,22 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TextEditor</name> <message> + <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="-204"/> <source>Choose Resource...</source> <translation>Choisir ressource...</translation> </message> <message> + <location line="+1"/> <source>Choose File...</source> <translation>Choisir fichier...</translation> </message> <message> + <location line="+5"/> <source>...</source> <translation>...</translation> </message> <message> + <location line="+118"/> <source>Choose a File</source> <translation>Choisir un fichier</translation> </message> @@ -5543,22 +6872,27 @@ Classe : %2</translation> <context> <name>qdesigner_internal::ToolBarEventFilter</name> <message> + <location filename="../tools/designer/src/lib/shared/qdesigner_toolbar.cpp" line="+148"/> <source>Insert Separator before '%1'</source> <translation>Insérer un séparateur avant '%1'</translation> </message> <message> + <location line="+9"/> <source>Append Separator</source> <translation>Ajouter un séparateur à la fin</translation> </message> <message> + <location line="+12"/> <source>Remove action '%1'</source> <translation>Supprimer l'action '%1'</translation> </message> <message> + <location line="+7"/> <source>Remove Toolbar '%1'</source> <translation>Supprimer la barre d'outils '%1'</translation> </message> <message> + <location line="+58"/> <source>Insert Separator</source> <translation>Insérer un séparateur</translation> </message> @@ -5566,98 +6900,125 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TreeWidgetEditor</name> <message> + <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui"/> <source>Edit Tree Widget</source> <translation>Éditer un widget d'arborescence</translation> </message> <message> + <location/> <source>&Items</source> <translation>&Éléments</translation> </message> <message> + <location/> <source>Tree Items</source> <translation>Élément de l'arbre</translation> </message> <message> + <location/> <source>1</source> <translation>1</translation> </message> <message> + <location/> + <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+199"/> <source>New Item</source> <translation>Nouvel élément</translation> </message> <message> + <location/> <source>&New</source> <translation>&Nouveau</translation> </message> <message> + <location/> + <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+19"/> <source>New Subitem</source> <translation>Nouveau sous-élément</translation> </message> <message> + <location/> <source>New &Subitem</source> <translation>Nouveau &sous-élément</translation> </message> <message> + <location/> <source>Delete Item</source> <translation>Supprimer l'élément</translation> </message> <message> + <location/> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> + <location/> <source>Move Item Left (before Parent Item)</source> <translation>Déplacer l'élément à gauche (avant l'élément parent)</translation> </message> <message> + <location/> <source>L</source> <translation>G</translation> </message> <message> + <location/> <source>Move Item Right (as a First Subitem of the Next Sibling Item)</source> <translation>Déplacer l'élément sur la droite (comme un premier sous-élément de l'élément à droite)</translation> </message> <message> + <location/> <source>R</source> <translation>D</translation> </message> <message> + <location/> <source>Move Item Up</source> <translation>Déplacer l'élément vers le haut</translation> </message> <message> + <location/> <source>U</source> <translation>H</translation> </message> <message> + <location/> <source>Move Item Down</source> <translation>Déplacer l'élément vers le bas</translation> </message> <message> + <location/> <source>D</source> <translation>B</translation> </message> <message> + <location/> + <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+177"/> <source>Properties &>></source> <translation>Propriétés &>></translation> </message> <message> + <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="-327"/> <source>New Column</source> <translation>Nouvelle colonne</translation> </message> <message> + <location line="+8"/> <source>&Columns</source> <translation>&Colonnes</translation> </message> <message> + <location line="+69"/> <source>Per column properties</source> <translation>Propriétés par colonnes</translation> </message> <message> + <location line="+1"/> <source>Common properties</source> <translation>Propritétés de colonnes</translation> </message> <message> + <location line="+247"/> <source>Properties &<<</source> <translation>Propriétés &<<</translation> </message> @@ -5665,6 +7026,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::TreeWidgetTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/treewidget_taskmenu.cpp" line="+63"/> <source>Edit Items...</source> <translation>Éditer les éléments...</translation> </message> @@ -5672,6 +7034,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetBox</name> <message> + <location filename="../tools/designer/src/components/widgetbox/widgetbox_dnditem.cpp" line="+115"/> <source>Warning: Widget creation failed in the widget box. This could be caused by invalid custom widget XML.</source> <translation>Avertissement : La création du widget a échoué dans la boîte de widget. Ceci peut être causé par un code XML invalide d'un widget personnalisé.</translation> </message> @@ -5679,34 +7042,42 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetBoxTreeWidget</name> <message> + <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="-268"/> <source>Scratchpad</source> <translation>bloc-notes</translation> </message> <message> + <location line="+370"/> <source>Custom Widgets</source> <translation>Widgets personnalisés</translation> </message> <message> + <location line="+263"/> <source>Expand all</source> <translation>Tout étendre</translation> </message> <message> + <location line="+1"/> <source>Collapse all</source> <translation>Tout replier</translation> </message> <message> + <location line="+3"/> <source>List View</source> <translation>Vue de liste</translation> </message> <message> + <location line="+1"/> <source>Icon View</source> <translation>Vue en icônes</translation> </message> <message> + <location line="+15"/> <source>Remove</source> <translation>Supprimer</translation> </message> <message> + <location line="+2"/> <source>Edit name</source> <translation>Éditer le nom</translation> </message> @@ -5714,6 +7085,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetDataBase</name> <message> + <location filename="../tools/designer/src/lib/shared/widgetdatabase.cpp" line="-411"/> <source>A custom widget plugin whose class name (%1) matches that of an existing class has been found.</source> <translation>Un plugin de widgets personnalisés dont un nom de classe (%1) correspond à une classe existante à été trouvé.</translation> </message> @@ -5721,6 +7093,7 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetEditorTool</name> <message> + <location filename="../tools/designer/src/components/formeditor/tool_widgeteditor.cpp" line="+67"/> <source>Edit Widgets</source> <translation>Éditer les widgets</translation> </message> @@ -5728,28 +7101,34 @@ Classe : %2</translation> <context> <name>qdesigner_internal::WidgetFactory</name> <message> + <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="+263"/> <source>The custom widget factory registered for widgets of class %1 returned 0.</source> <translation>La fabrique (factory) de widget personnalisé, enregistrée pour les widgets de classe %1, a retourné 0.</translation> </message> <message> + <location line="+44"/> <source>A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2.</source> <translation>Une discordance de nom de classe est apparue lors de la création d'un nouveau widget à l'aide de la fabrique de widget personnalisé enregistrée pour la classe %1. La fabrique a retourné un widget de classe %2.</translation> </message> <message> + <location line="+99"/> <source>%1 Widget</source> <translation>%1 Widget</translation> </message> <message> + <location line="+90"/> <source>The current page of the container '%1' (%2) could not be determined while creating a layout.This indicates an inconsistency in the ui-file, probably a layout being constructed on a container widget.</source> <translation>Le conteneur '%1' de la page courante (%2) n'a pas pu être déterminé lors de la création du layout. Ceci indique une incohérence dans le fichier ui, probablement un layout étant construit sur un widget conteneur.</translation> </message> <message> + <location line="+53"/> <source>Attempt to add a layout to a widget '%1' (%2) which already has an unmanaged layout of type %3. This indicates an inconsistency in the ui-file.</source> <translation>Temptative d'ajout d'un layout sur le widget '%1' (%2) qui a déjà un layout non pris en charge de type %3. Ceci indique une inconsistance dans le fichier ui.</translation> </message> <message> + <location line="+211"/> <source>Cannot create style '%1'.</source> <translation>Impossible de créer le style '%1'.</translation> </message> @@ -5757,10 +7136,12 @@ Ceci indique une inconsistance dans le fichier ui.</translation> <context> <name>qdesigner_internal::WizardContainerWidgetTaskMenu</name> <message> + <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="-49"/> <source>Next</source> <translation>Suivant</translation> </message> <message> + <location line="+1"/> <source>Back</source> <translation>Précédent</translation> </message> @@ -5768,6 +7149,7 @@ Ceci indique une inconsistance dans le fichier ui.</translation> <context> <name>qdesigner_internal::ZoomMenu</name> <message> + <location filename="../tools/designer/src/lib/shared/zoomwidget.cpp" line="+84"/> <source>%1 %</source> <extracomment>Zoom factor</extracomment> <translation>%1 %</translation> @@ -5776,6 +7158,7 @@ Ceci indique une inconsistance dans le fichier ui.</translation> <context> <name>qdesigner_internal::ZoomablePreviewDeviceSkin</name> <message> + <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="-270"/> <source>&Zoom</source> <translation>&Zoom</translation> </message> diff --git a/translations/linguist_fr.ts b/translations/linguist_fr.ts index 5b98904..c186adc 100644 --- a/translations/linguist_fr.ts +++ b/translations/linguist_fr.ts @@ -2,15 +2,9 @@ <!DOCTYPE TS> <TS version="2.0"> <context> - <name></name> - <message> - <source>(New Entry)</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> <name>AboutDialog</name> <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+1366"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> @@ -18,104 +12,134 @@ <context> <name>BatchTranslationDialog</name> <message> + <location filename="../tools/linguist/linguist/batchtranslationdialog.cpp" line="+79"/> <source>Batch Translation of '%1' - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location line="+37"/> <source>Searching, please wait...</source> <translation type="unfinished"></translation> </message> <message> + <location line="+0"/> <source>&Cancel</source> <translation type="unfinished"></translation> </message> <message> + <location line="+42"/> <source>Linguist batch translator</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> + <location line="+1"/> <source>Batch translated %n entries</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> + <location filename="../tools/linguist/linguist/batchtranslation.ui"/> <source>Qt Linguist - Batch Translation</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Options</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Set translated entries to finished</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Retranslate entries with existing translation</source> <translation type="unfinished"></translation> </message> <message> - <source>Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Translate also finished entries</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Phrase book preference</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Move up</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Move down</source> <translation type="unfinished"></translation> </message> <message> - <source>The batch translator will search through the selected phrase books in the order given above.</source> + <location/> + <source>&Run</source> <translation type="unfinished"></translation> </message> <message> - <source>&Run</source> + <location/> + <source>Cancel</source> <translation type="unfinished"></translation> </message> <message> - <source>Cancel</source> + <location/> + <source>Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>The batch translator will search through the selected phrase books in the order given above</source> <translation type="unfinished"></translation> </message> </context> <context> <name>DataModel</name> <message> + <location filename="../tools/linguist/linguist/messagemodel.cpp" line="+214"/> <source><qt>Duplicate messages found in '%1':</source> <translation type="unfinished"></translation> </message> <message> + <location line="+4"/> + <location line="+8"/> <source><p>[more duplicates omitted]</source> <translation type="unfinished"></translation> </message> <message> + <location line="-5"/> + <source><p>* ID: %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+8"/> <source><p>* Context: %1<br>* Source: %2</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source><br>* Comment: %3</source> <translation type="unfinished"></translation> </message> <message> + <location line="+71"/> <source>Linguist does not know the plural rules for '%1'. Will assume a single universal form.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+56"/> <source>Cannot create '%2': %1</source> <translation type="unfinished"></translation> </message> <message> + <location line="+56"/> <source>Universal Form</source> <translation type="unfinished"></translation> </message> @@ -123,30 +147,37 @@ Will assume a single universal form.</source> <context> <name>ErrorsView</name> <message> + <location filename="../tools/linguist/linguist/errorsview.cpp" line="+76"/> <source>Accelerator possibly superfluous in translation.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>Accelerator possibly missing in translation.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>Translation does not end with the same punctuation as the source text.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>A phrase book suggestion for '%1' was ignored.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>Translation does not refer to the same place markers as in the source text.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>Translation does not contain the necessary %n place marker.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>Unknown error</source> <translation type="unfinished"></translation> </message> @@ -154,95 +185,159 @@ Will assume a single universal form.</source> <context> <name>FindDialog</name> <message> + <location filename="../tools/linguist/linguist/finddialog.cpp" line="+14"/> <source></source> <comment>Choose Edit|Find from the menu bar or press Ctrl+F to pop up the Find dialog</comment> <translation></translation> </message> <message> + <location filename="../tools/linguist/linguist/finddialog.ui"/> <source>This window allows you to search for some text in the translation source file.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Type in the text to search for.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Options</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Source texts are searched when checked.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Translations are searched when checked.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Comments and contexts are searched when checked.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Find</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Find what:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Source texts</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Translations</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Match case</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Comments</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ignore &accelerators</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to find the next occurrence of the text you typed in.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Find Next</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to close this window.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Cancel</source> <translation type="unfinished"></translation> </message> </context> <context> + <name>FormMultiWidget</name> + <message> + <location filename="../tools/linguist/linguist/messageeditorwidgets.cpp" line="+302"/> + <source>Alt+Delete</source> + <extracomment>translate, but don't change</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Shift+Alt+Insert</source> + <extracomment>translate, but don't change</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Alt+Insert</source> + <extracomment>translate, but don't change</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+131"/> + <source>Confirmation - Qt Linguist</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Delete non-empty length variant?</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>LRelease</name> <message numerus="yes"> - <source> Generated %n translation(s) (%1 finished and %2 unfinished) -</source> + <location filename="../tools/linguist/shared/qm.cpp" line="+763"/> + <source>Dropped %n message(s) which had no ID.</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message numerus="yes"> - <source> Ignored %n untranslated source text(s) -</source> + <location line="+4"/> + <source>Excess context/disambiguation dropped from %n message(s).</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location line="+8"/> + <source> Generated %n translation(s) (%1 finished and %2 unfinished)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location line="+4"/> + <source> Ignored %n untranslated source text(s)</source> <translation type="unfinished"> <numerusform></numerusform> </translation> @@ -251,943 +346,1235 @@ Will assume a single universal form.</source> <context> <name>MainWindow</name> <message> + <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>MainWindow</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Phrases</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Close Phrase Book</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Edit Phrase Book</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Print Phrase Book</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>V&alidation</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&View</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Vie&ws</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Toolbars</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Help</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Translation</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&File</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Edit</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Open...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Open a Qt translation source file (TS file) for editing</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+O</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>E&xit</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Close this window and exit.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+Q</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+668"/> + <location line="+15"/> <source>&Save</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Save changes made to this Qt translation source file</source> <translation type="unfinished"></translation> </message> <message> - <source>Previous unfinished item.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Move to the previous unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <source>Next unfinished item.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Move to the next unfinished item.</source> <translation type="unfinished"></translation> </message> <message> - <source>Move to previous item.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Move to the previous item.</source> <translation type="unfinished"></translation> </message> <message> - <source>Next item.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Move to the next item.</source> <translation type="unfinished"></translation> </message> <message> - <source>Mark item as done and move to the next unfinished item.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Mark this item as done and move to the next unfinished item.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Copy from source text</source> <translation type="unfinished"></translation> </message> <message> - <source>Toggle the validity check of accelerators.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Toggle the validity check of accelerators, i.e. whether the number of ampersands in the source and translation text is the same. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> - <source>Toggle the validity check of ending punctuation.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Toggle the validity check of ending punctuation. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Toggle checking that phrase suggestions are used. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> - <source>Toggle the validity check of place markers.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Toggle the validity check of place markers, i.e. whether %1, %2, ... are used consistently in the source text and translation text. If the check fails, a message is shown in the warnings window.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Open Read-O&nly...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Save All</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+S</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-14"/> + <location line="+11"/> <source>Save &As...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Save As...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Save changes made to this Qt translation source file into a new file.</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+4"/> <source>&Release</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Create a Qt message file suitable for released applications from the current message file.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Print...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+P</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Undo</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Recently Opened &Files</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Save</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Print a list of all the translation units in the current translation source file.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Undo the last editing operation performed on the current translation.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+Z</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Redo</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Redo an undone editing operation performed on the translation.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+Y</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Cu&t</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Copy the selected translation text to the clipboard and deletes it.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+X</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Copy</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Copy the selected translation text to the clipboard.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+C</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Paste</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Paste the clipboard text into the translation.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+V</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Select &All</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Select the whole translation text.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+A</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Find...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Search for some text in the translation source file.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+F</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Find &Next</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Continue the search where it was left.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>F3</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Prev Unfinished</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Close</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Close All</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+W</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+K</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Next Unfinished</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>P&rev</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+Shift+K</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ne&xt</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Done and Next</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Copies the source text into the translation field.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+B</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Accelerators</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Ending Punctuation</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Phrase matches</source> <translation type="unfinished"></translation> </message> <message> - <source>Toggle checking that phrase suggestions are used.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>Place &Marker Matches</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&New Phrase Book...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Create a new phrase book.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+N</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Open Phrase Book...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Open a phrase book to assist translation.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+H</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Reset Sorting</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Sort the items back in the same order as in the message file.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Display guesses</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Set whether or not to display translation guesses.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Statistics</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Display translation statistics.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Manual</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>F1</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>About Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>About Qt</source> <translation type="unfinished"></translation> </message> <message> - <source>Display information about the Qt toolkit by Trolltech.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location/> <source>&What's This?</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>What's This?</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Enter What's This? mode.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Shift+F1</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Search And Translate...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Replace the translation on all entries that matches the search source text.</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+21"/> <source>&Batch Translation...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Batch translate all entries using the information in the phrase books.</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-34"/> + <location line="+10"/> <source>Release As...</source> <translation type="unfinished"></translation> </message> <message> - <source>Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the .ts file.</source> - <translation type="unfinished"></translation> - </message> - <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-2035"/> <source></source> <comment>This is the application's main window.</comment> <translation></translation> </message> <message> + <location line="+190"/> <source>Source text</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> + <location line="+25"/> <source>Index</source> <translation type="unfinished"></translation> </message> <message> + <location line="-2"/> + <location line="+63"/> <source>Context</source> <translation type="unfinished"></translation> </message> <message> + <location line="-62"/> <source>Items</source> <translation type="unfinished"></translation> </message> <message> + <location line="+79"/> <source>This panel lists the source contexts.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+13"/> <source>Strings</source> <translation type="unfinished"></translation> </message> <message> + <location line="+37"/> <source>Phrases and guesses</source> <translation type="unfinished"></translation> </message> <message> + <location line="+10"/> <source>Sources and Forms</source> <translation type="unfinished"></translation> </message> <message> + <location line="+15"/> <source>Warnings</source> <translation type="unfinished"></translation> </message> <message> + <location line="+59"/> <source> MOD </source> <comment>status bar: file(s) modified</comment> <translation type="unfinished"></translation> </message> <message> + <location line="+139"/> <source>Loading...</source> <translation type="unfinished"></translation> </message> <message> + <location line="+32"/> + <location line="+22"/> <source>Loading File - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location line="-21"/> <source>The file '%1' does not seem to be related to the currently open file(s) '%2'. Close the open file(s) first?</source> <translation type="unfinished"></translation> </message> <message> + <location line="+22"/> <source>The file '%1' does not seem to be related to the file '%2' which is being loaded as well. Skip loading the first named file?</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> + <location line="+61"/> <source>%n translation unit(s) loaded.</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> + <location line="+94"/> <source>Related files (%1);;</source> <translation type="unfinished"></translation> </message> <message> + <location line="+4"/> <source>Open Translation Files</source> <translation type="unfinished"></translation> </message> <message> + <location line="+10"/> + <location line="+31"/> <source>File saved.</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.ui"/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+15"/> + <location line="+1187"/> <source>Release</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-1186"/> <source>Qt message files for released applications (*.qm) All files (*)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> + <location line="+12"/> <source>File created.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+34"/> + <location line="+355"/> <source>Printing...</source> <translation type="unfinished"></translation> </message> <message> + <location line="-347"/> <source>Context: %1</source> <translation type="unfinished"></translation> </message> <message> + <location line="+32"/> <source>finished</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>unresolved</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>obsolete</source> <translation type="unfinished"></translation> </message> <message> + <location line="+15"/> + <location line="+307"/> <source>Printing... (page %1)</source> <translation type="unfinished"></translation> </message> <message> + <location line="-300"/> + <location line="+307"/> <source>Printing completed</source> <translation type="unfinished"></translation> </message> <message> + <location line="-305"/> + <location line="+307"/> <source>Printing aborted</source> <translation type="unfinished"></translation> </message> <message> + <location line="-232"/> <source>Search wrapped.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+17"/> + <location line="+278"/> + <location line="+34"/> + <location line="+24"/> + <location line="+22"/> + <location line="+538"/> + <location line="+1"/> + <location line="+274"/> + <location line="+40"/> + <location line="+10"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location line="-1220"/> + <location line="+102"/> <source>Cannot find the string '%1'.</source> <translation type="unfinished"></translation> </message> <message> + <location line="-82"/> <source>Search And Translate in '%1' - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location line="+34"/> + <location line="+23"/> + <location line="+24"/> <source>Translate - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> + <location line="-46"/> <source>Translated %n entry(s)</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> + <location line="+23"/> <source>No more occurrences of '%1'. Start over?</source> <translation type="unfinished"></translation> </message> <message> + <location line="+30"/> <source>Create New Phrase Book</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Qt phrase books (*.qph) All files (*)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+11"/> <source>Phrase book created.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+17"/> <source>Open Phrase Book</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Qt phrase books (*.qph);;All files (*)</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> + <location line="+7"/> <source>%n phrase(s) loaded.</source> <translation type="unfinished"> <numerusform></numerusform> </translation> </message> <message> + <location line="+93"/> + <location line="+3"/> + <location line="+7"/> <source>Add to phrase book</source> <translation type="unfinished"></translation> </message> <message> + <location line="-9"/> <source>No appropriate phrasebook found.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>Adding entry to phrasebook %1</source> <translation type="unfinished"></translation> </message> <message> + <location line="+7"/> <source>Select phrase book to add to</source> <translation type="unfinished"></translation> </message> <message> + <location line="+29"/> <source>Unable to launch Qt Assistant (%1)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+17"/> <source>Version %1</source> <translation type="unfinished"></translation> </message> <message> - <source><center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>%2</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.</p></source> + <location line="+3"/> + <source><center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> <translation type="unfinished"></translation> </message> <message> + <location line="+38"/> <source>Do you want to save the modified files?</source> <translation type="unfinished"></translation> </message> <message> + <location line="+22"/> <source>Do you want to save '%1'?</source> <translation type="unfinished"></translation> </message> <message> + <location line="+43"/> <source>Qt Linguist[*]</source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source>%1[*] - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location line="+267"/> + <location line="+12"/> <source>No untranslated translation units left.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+198"/> <source>&Window</source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source>Minimize</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Ctrl+M</source> <translation type="unfinished"></translation> </message> <message> + <location line="+12"/> <source>Display the manual for %1.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Display information about %1.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+70"/> <source>&Save '%1'</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Save '%1' &As...</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Release '%1'</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Release '%1' As...</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>&Close '%1'</source> <translation type="unfinished"></translation> </message> <message> + <location line="+6"/> + <location line="+13"/> <source>&Close</source> <translation type="unfinished"></translation> </message> <message> + <location line="-10"/> <source>Save All</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.ui"/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+1"/> <source>&Release All</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+1"/> <source>Close All</source> <translation type="unfinished"></translation> </message> <message> + <location line="+23"/> <source>Translation File &Settings for '%1'...</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>&Batch Translation of '%1'...</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Search And &Translate in '%1'...</source> <translation type="unfinished"></translation> </message> <message> + <location line="+4"/> <source>Search And &Translate...</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.ui"/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+51"/> <source>File</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+7"/> <source>Edit</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+6"/> <source>Translation</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+6"/> <source>Validation</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+7"/> <source>Help</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+84"/> <source>Cannot read from phrase book '%1'.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+15"/> <source>Close this phrase book.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+4"/> <source>Enables you to add, modify, or delete entries in this phrase book.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+5"/> <source>Print the entries in this phrase book.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+16"/> <source>Cannot create phrase book '%1'.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+10"/> <source>Do you want to save phrase book '%1'?</source> <translation type="unfinished"></translation> </message> <message> + <location line="+349"/> <source>All</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Open/Refresh Form &Preview</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Form Preview Tool</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>F5</source> <translation type="unfinished"></translation> </message> <message> + <location/> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-562"/> <source>Translation File &Settings...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Add to Phrase Book</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+T</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+J</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Ctrl+Shift+J</source> <translation type="unfinished"></translation> </message> + <message> + <location/> + <source>Previous unfinished item</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Next unfinished item</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Move to previous item</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Next item</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Mark item as done and move to the next unfinished item</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Copies the source text into the translation field</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Toggle the validity check of accelerators</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Toggle the validity check of ending punctuation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Toggle checking that phrase suggestions are used</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Toggle the validity check of place markers</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Display information about the Qt toolkit by Nokia.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the TS file.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location/> + <source>Length Variants</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>MessageEditor</name> <message> + <location filename="../tools/linguist/linguist/messageeditor.cpp" line="+42"/> + <source></source> + <comment>This is the right panel of the main window.</comment> + <translation></translation> + </message> + <message> + <location line="+30"/> + <source>Russian</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>German</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Japanese</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>French</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Polish</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Chinese</source> <translation type="unfinished"></translation> </message> <message> + <location line="+47"/> <source>This whole panel allows you to view and edit the translation of some source text.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+10"/> <source>Source text</source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source>This area shows the source text.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+4"/> <source>Source text (Plural)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source>This area shows the plural form of the source text.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+4"/> <source>Developer comments</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>This area shows a comment that may guide you, and the context in which the text occurs.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+59"/> <source>Here you can enter comments for your own use. They have no effect on the translated applications.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+234"/> <source>%1 translation (%2)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+9"/> <source>This is where you can enter or modify the translation of the above source text.</source> <translation type="unfinished"></translation> </message> <message> + <location line="+5"/> <source>%1 translation</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>%1 translator comments</source> <translation type="unfinished"></translation> </message> <message> + <location line="+157"/> <source>'%1' Line: %2</source> <translation type="unfinished"></translation> @@ -1196,18 +1583,22 @@ Line: %2</source> <context> <name>MessageModel</name> <message> + <location filename="../tools/linguist/linguist/messagemodel.cpp" line="+839"/> <source>Completion status for %1</source> <translation type="unfinished"></translation> </message> <message> + <location line="+15"/> <source><file header></source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source><context comment></source> <translation type="unfinished"></translation> </message> <message> + <location line="+71"/> <source><unnamed context></source> <translation type="unfinished"></translation> </message> @@ -1215,6 +1606,7 @@ Line: %2</source> <context> <name>MsgEdit</name> <message> + <location filename="../tools/linguist/linguist/messageeditor.cpp" line="-600"/> <source></source> <comment>This is the right panel of the main window.</comment> <translation></translation> @@ -1223,87 +1615,113 @@ Line: %2</source> <context> <name>PhraseBookBox</name> <message> + <location filename="../tools/linguist/linguist/phrasebookbox.cpp" line="+14"/> <source></source> <comment>Go to Phrase > Edit Phrase Book... The dialog that pops up is a PhraseBookBox.</comment> <translation></translation> </message> <message> + <location line="+52"/> + <source>(New Entry)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+3"/> <source>%1[*] - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location line="+90"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location line="+1"/> <source>Cannot save phrase book '%1'.</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/phrasebookbox.ui"/> <source>Edit Phrase Book</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>This window allows you to add, modify, or delete entries in a phrase book.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Translation:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>This is the phrase in the target language corresponding to the source phrase.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>S&ource phrase:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>This is a definition for the source phrase.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>This is the phrase in the source language.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Definition:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to add the phrase to the phrase book.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&New Entry</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to remove the entry from the phrase book.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Remove Entry</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Settin&gs...</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to save the changes made.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Save</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to close this window.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -1311,14 +1729,17 @@ Line: %2</source> <context> <name>PhraseModel</name> <message> + <location filename="../tools/linguist/linguist/phrasemodel.cpp" line="+117"/> <source>Source phrase</source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source>Translation</source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source>Definition</source> <translation type="unfinished"></translation> </message> @@ -1326,18 +1747,22 @@ Line: %2</source> <context> <name>PhraseView</name> <message> + <location filename="../tools/linguist/linguist/phraseview.cpp" line="+122"/> <source>Insert</source> <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> <source>Edit</source> <translation type="unfinished"></translation> </message> <message> + <location line="+113"/> <source>Guess (%1)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+2"/> <source>Guess</source> <translation type="unfinished"></translation> </message> @@ -1345,62 +1770,63 @@ Line: %2</source> <context> <name>QObject</name> <message> + <location filename="../tools/linguist/shared/qm.cpp" line="+12"/> <source>Compiled Qt translations</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-1302"/> <source>Translation files (%1);;</source> <translation type="unfinished"></translation> </message> <message> + <location line="+5"/> <source>All files (*)</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/messagemodel.cpp" line="-1134"/> + <location line="+27"/> + <location line="+67"/> + <location line="+39"/> + <location line="+17"/> + <location line="+15"/> + <location filename="../tools/linguist/linguist/phrase.cpp" line="+196"/> <source>Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> - <source>C++ source files</source> - <translation type="unfinished"></translation> - </message> - <message> - <source>Java source files</source> - <translation type="unfinished"></translation> - </message> - <message> + <location filename="../tools/linguist/shared/po.cpp" line="+870"/> <source>GNU Gettext localization files</source> <translation type="unfinished"></translation> </message> <message> - <source>Qt Script source files</source> + <location line="+7"/> + <source>GNU Gettext localization template files</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/shared/ts.cpp" line="+752"/> <source>Qt translation sources (format 1.1)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+8"/> <source>Qt translation sources (format 2.0)</source> <translation type="unfinished"></translation> </message> <message> + <location line="+9"/> <source>Qt translation sources (latest format)</source> <translation type="unfinished"></translation> </message> <message> - <source>Qt Designer form files</source> - <translation type="unfinished"></translation> - </message> - <message> - <source>Qt Jambi form files</source> - <translation type="unfinished"></translation> - </message> - <message> + <location filename="../tools/linguist/shared/xliff.cpp" line="+829"/> <source>XLIFF localization files</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/shared/qph.cpp" line="+195"/> <source>Qt Linguist 'Phrase Book'</source> <translation type="unfinished"></translation> </message> @@ -1408,14 +1834,17 @@ Line: %2</source> <context> <name>SourceCodeView</name> <message> + <location filename="../tools/linguist/linguist/sourcecodeview.cpp" line="+70"/> <source><i>Source code not available</i></source> <translation type="unfinished"></translation> </message> <message> + <location line="+33"/> <source><i>File %1 not available</i></source> <translation type="unfinished"></translation> </message> <message> + <location line="+5"/> <source><i>File %1 not readable</i></source> <translation type="unfinished"></translation> </message> @@ -1423,34 +1852,42 @@ Line: %2</source> <context> <name>Statistics</name> <message> + <location filename="../tools/linguist/linguist/statistics.ui"/> <source>Statistics</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Translation</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Source</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>0</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Words:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Characters:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Characters (with spaces):</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -1458,6 +1895,7 @@ Line: %2</source> <context> <name>TrWindow</name> <message> + <location filename="../tools/linguist/linguist/trwindow.cpp" line="+14"/> <source></source> <comment>This is the application's main window.</comment> <translation></translation> @@ -1466,58 +1904,72 @@ Line: %2</source> <context> <name>TranslateDialog</name> <message> + <location filename="../tools/linguist/linguist/translatedialog.ui"/> <source>This window allows you to search for some text in the translation source file.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Type in the text to search for.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Find &source text:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>&Translate to:</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Search options</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Match &case</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Mark new translation as &finished</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to find the next occurrence of the text you typed in.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Find Next</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Translate</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Translate All</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Click here to close this window.</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Cancel</source> <translation type="unfinished"></translation> </message> @@ -1525,26 +1977,33 @@ Line: %2</source> <context> <name>TranslationSettingsDialog</name> <message> + <location filename="../tools/linguist/linguist/translationsettingsdialog.cpp" line="+93"/> <source>Any Country</source> <translation type="unfinished"></translation> </message> <message> + <location line="-22"/> + <location line="+8"/> <source>Settings for '%1' - Qt Linguist</source> <translation type="unfinished"></translation> </message> <message> + <location filename="../tools/linguist/linguist/translationsettings.ui"/> <source>Source language</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Language</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Country/Region</source> <translation type="unfinished"></translation> </message> <message> + <location/> <source>Target language</source> <translation type="unfinished"></translation> </message> diff --git a/translations/qt_fr.ts b/translations/qt_fr.ts index 56a9e0e..1dd80be 100644 --- a/translations/qt_fr.ts +++ b/translations/qt_fr.ts @@ -39,15 +39,15 @@ </message> <message> <source>local audio file:</source> - <translation type="obsolete">Fichier audio local:</translation> + <translation type="obsolete">Fichier audio local : </translation> </message> <message> <source>local video file:</source> - <translation type="obsolete">Fichier vidéo local:</translation> + <translation type="obsolete">Fichier vidéo local : </translation> </message> <message> <source>remote media URL:</source> - <translation type="obsolete">URL distante :</translation> + <translation type="obsolete">URL distante : </translation> </message> <message> <source>run tests</source> @@ -69,11 +69,11 @@ <name>FakeReply</name> <message> <source>Fake error !</source> - <translation>Fausse erreur!</translation> + <translation>Fausse erreur !</translation> </message> <message> <source>Invalid URL</source> - <translation>URL non valide</translation> + <translation>URL invalide</translation> </message> </context> <context> @@ -96,7 +96,7 @@ </message> <message> <source>Preferences...</source> - <translation>Préférences…</translation> + <translation>Préférences...</translation> </message> <message> <source>Quit %1</source> @@ -115,7 +115,7 @@ </message> <message> <source>Location:</source> - <translation type="obsolete">Emplacement:</translation> + <translation type="obsolete">Emplacement : </translation> </message> </context> <context> @@ -224,13 +224,13 @@ so on.</source> <message> <source>Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.</source> - <translation>Attention: Vous n'avez apparemment pas installé le paquet gstreamer0.10-plugins-good. + <translation>Attention : Vous n'avez apparemment pas installé le paquet gstreamer0.10-plugins-good. Des fonctionnalités vidéo ont été desactivées.</translation> </message> <message> <source>Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabled</source> - <translation>Attention: Vous n'avez apparemment pas installées les plugins de base de GStreamer. + <translation>Attention : Vous n'avez apparemment pas installées les plugins de base de GStreamer. Le support audio et vidéo est désactivé</translation> </message> </context> @@ -286,7 +286,7 @@ have libgstreamer-plugins-base installed.</source> </message> <message> <source>A required codec is missing. You need to install the following codec(s) to play this content: %0</source> - <translation>Un codec requis est manquant. Vous devez installer le codec suivant pour jouer le contenu: %0</translation> + <translation>Un codec requis est manquant. Vous devez installer le codec suivant pour jouer le contenu : %0</translation> </message> <message> <source>Could not open media source.</source> @@ -371,7 +371,7 @@ d'avoir installé libgstreamer-plugins-base.</translation> </message> <message> <source>Access denied</source> - <translation>Accès refusé</translation> + <translation>Autorisation refusée</translation> </message> <message> <source>Could not connect</source> @@ -407,11 +407,11 @@ d'avoir installé libgstreamer-plugins-base.</translation> </message> <message> <source>Invalid protocol</source> - <translation>Protocole non valide</translation> + <translation>Protocole invalide</translation> </message> <message> <source>Invalid URL</source> - <translation>URL non valide</translation> + <translation>URL invalide</translation> </message> <message> <source>Multicast error</source> @@ -465,6 +465,14 @@ d'avoir installé libgstreamer-plugins-base.</translation> <translation>Erreur lors de l'ouverture de l'URL</translation> </message> <message> + <source>Error opening resource</source> + <translation>erreur lors de l'ouverture de la ressource</translation> + </message> + <message> + <source>Error opening source: resource not opened</source> + <translation>erreur lors de l'ouverture de la source : ressource non ouverte</translation> + </message> + <message> <source>Setting volume failed</source> <translation>Le réglage du volume a échoué</translation> </message> @@ -585,11 +593,19 @@ d'avoir installé libgstreamer-plugins-base.</translation> <name>Phonon::MMF::MediaObject</name> <message> <source>Error opening source: type not supported</source> - <translation>Erreur lors de l'ouverture de la source: type non supporté</translation> + <translation>Erreur lors de l'ouverture de la source : type non supporté</translation> + </message> + <message> + <source>Error opening source: resource is compressed</source> + <translation>Erreur lors de l'ouverture de la source : ressource compressée</translation> + </message> + <message> + <source>Error opening source: resource not valid</source> + <translation>Erreur lors de l'ouverture de la source : ressource invalide</translation> </message> <message> <source>Error opening source: media type could not be determined</source> - <translation>Erreur lors de l'ouverture de la source: type de média non déterminé</translation> + <translation>Erreur lors de l'ouverture de la source : type de média non déterminé</translation> </message> </context> <context> @@ -637,7 +653,7 @@ d'avoir installé libgstreamer-plugins-base.</translation> <name>Phonon::VolumeSlider</name> <message> <source>Volume: %1%</source> - <translation>Volume: %1%</translation> + <translation>Volume : %1%</translation> </message> <message> <source>Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%</source> @@ -730,15 +746,15 @@ d'avoir installé libgstreamer-plugins-base.</translation> </message> <message> <source>Look &in:</source> - <translation>Chercher &dans :</translation> + <translation>Chercher &dans : </translation> </message> <message> <source>File &name:</source> - <translation>&Nom de fichier :</translation> + <translation>&Nom de fichier : </translation> </message> <message> <source>File &type:</source> - <translation>&Type de fichier :</translation> + <translation>&Type de fichier : </translation> </message> <message> <source>Back</source> @@ -910,7 +926,7 @@ d'avoir installé libgstreamer-plugins-base.</translation> </message> <message> <source>Directory:</source> - <translation>Dossier :</translation> + <translation>Dossier : </translation> </message> <message> <source>Error</source> @@ -922,7 +938,7 @@ File not found. Check path and filename.</source> <translation>%1 Impossible de trouver le fichier. -Vérifier le chemin et le nom du fichier.</translation> +Vérifiez le chemin et le nom du fichier.</translation> </message> <message> <source>All Files (*.*)</source> @@ -1122,7 +1138,7 @@ en <name>Q3ToolBar</name> <message> <source>More...</source> - <translation>Reste...</translation> + <translation>Plus...</translation> </message> </context> <context> @@ -1284,7 +1300,7 @@ en </message> <message> <source>COM &Object:</source> - <translation>&Objet COM :</translation> + <translation>&Objet COM : </translation> </message> </context> <context> @@ -1306,31 +1322,31 @@ en <name>QColorDialog</name> <message> <source>Hu&e:</source> - <translation>&Teinte :</translation> + <translation>&Teinte : </translation> </message> <message> <source>&Sat:</source> - <translation>&Saturation :</translation> + <translation>&Saturation : </translation> </message> <message> <source>&Val:</source> - <translation>&Valeur :</translation> + <translation>&Valeur : </translation> </message> <message> <source>&Red:</source> - <translation>&Rouge :</translation> + <translation>&Rouge : </translation> </message> <message> <source>&Green:</source> - <translation>&Vert :</translation> + <translation>&Vert : </translation> </message> <message> <source>Bl&ue:</source> - <translation>Ble&u :</translation> + <translation>Ble&u : </translation> </message> <message> <source>A&lpha channel:</source> - <translation>Canal a&lpha :</translation> + <translation>Canal a&lpha : </translation> </message> <message> <source>Select Color</source> @@ -1389,7 +1405,7 @@ en <message> <source>%1: permission denied</source> <comment>QSystemSemaphore</comment> - <translation type="obsolete">%1: permission refusée</translation> + <translation type="obsolete">%1 : permission refusée</translation> </message> <message> <source>%1: already exists</source> @@ -1399,7 +1415,7 @@ en <message> <source>%1: doesn't exists</source> <comment>QSystemSemaphore</comment> - <translation type="obsolete">%1: n'existe pas</translation> + <translation type="obsolete">%1 : n'existe pas</translation> </message> <message> <source>%1: does not exist</source> @@ -1433,31 +1449,31 @@ en </message> <message> <source>%1: key is empty</source> - <translation type="obsolete">%1: clé vide</translation> + <translation type="obsolete">%1 : clé vide</translation> </message> <message> <source>%1: unable to make key</source> - <translation type="obsolete">%1: impossible de créer la clé</translation> + <translation type="obsolete">%1 : impossible de créer la clé</translation> </message> <message> <source>%1: ftok failed</source> - <translation type="obsolete">%1: ftok a échoué</translation> + <translation type="obsolete">%1 : ftok a échoué</translation> </message> <message> <source>%1: already exists</source> - <translation type="obsolete">%1: existe déjà</translation> + <translation type="obsolete">%1 : existe déjà</translation> </message> <message> <source>%1: does not exist</source> - <translation type="obsolete">%1: n'existe pas</translation> + <translation type="obsolete">%1 : n'existe pas</translation> </message> <message> <source>%1: out of resources</source> - <translation type="obsolete">%1: plus de ressources disponibles</translation> + <translation type="obsolete">%1 : plus de ressources disponibles</translation> </message> <message> <source>%1: unknown error %2</source> - <translation type="obsolete">%1: erreur inconnue %2</translation> + <translation type="obsolete">%1 : erreur inconnue %2</translation> </message> </context> <context> @@ -1487,7 +1503,7 @@ en </message> <message> <source>Unable to prepare statement</source> - <translation>Impossible de prépare la requête</translation> + <translation>Impossible de préparer la requête</translation> </message> <message> <source>Unable to bind variable</source> @@ -1575,7 +1591,7 @@ en </message> <message> <source>Cannot anchor to a null item.</source> - <translation>impossible d'ancrer à un élément nul.</translation> + <translation>Impossible d'ancrer à un élément nul.</translation> </message> <message> <source>Cannot anchor a horizontal edge to a vertical edge.</source> @@ -1620,10 +1636,10 @@ en </message> </context> <context> - <name>QDeclarativeCompiledBindings</name> + <name>QDeclarativeBindings</name> <message> <source>Binding loop detected for property "%1"</source> - <translation></translation> + <translation>Boucle détectée dans l'affectation pour la propriété "%1"</translation> </message> </context> <context> @@ -1654,11 +1670,15 @@ en </message> <message> <source>Invalid property assignment: float expected</source> - <translation>Affectation de propriété invalide : float attendu</translation> + <translation type="obsolete">Affectation de propriété invalide : float attendu</translation> </message> <message> <source>Invalid property assignment: double expected</source> - <translation>Affectation de propriété invalide : double attendu</translation> + <translation type="obsolete">Affectation de propriété invalide : double attendu</translation> + </message> + <message> + <source>Invalid property assignment: number expected</source> + <translation>Affectation de propriété invalide : nombre attendu</translation> </message> <message> <source>Invalid property assignment: color expected</source> @@ -1706,238 +1726,245 @@ en </message> <message> <source>Component elements may not contain properties other than id</source> - <translation type="unfinished">Les éléments du composant ne peuvent pas contenir des propriétés autres que id</translation> + <translation>Les éléments du composant ne peuvent pas contenir des propriétés autres que id</translation> </message> <message> <source>Invalid component id specification</source> - <translation type="unfinished">L'ID de composant spécifiée n'est pas valide</translation> + <translation>L'id de composant spécifiée n'est pas valide</translation> </message> <message> <source>id is not unique</source> - <translation type="unfinished">l'ID n'est pas unique</translation> + <translation>l'id n'est pas unique</translation> </message> <message> <source>Invalid component body specification</source> - <translation type="unfinished">Le corps de la spécification du composant n'est pas valide</translation> + <translation>Le corps de la spécification du composant n'est pas valide</translation> </message> <message> <source>Component objects cannot declare new properties.</source> - <translation type="unfinished">Les objets composants ne peuvent pas déclarer de nouvelles propriétés.</translation> + <translation>Les objets composants ne peuvent pas déclarer de nouvelles propriétés.</translation> </message> <message> <source>Component objects cannot declare new signals.</source> - <translation type="unfinished">Les objets composants ne peuvent pas déclarer de nouveaux signaux.</translation> + <translation>Les objets composants ne peuvent pas déclarer de nouveaux signaux.</translation> </message> <message> <source>Component objects cannot declare new functions.</source> - <translation type="unfinished">Les objets composants ne peuvent pas déclarer de nouvelles fonctions.</translation> + <translation>Les objets composants ne peuvent pas déclarer de nouvelles fonctions.</translation> </message> <message> <source>Cannot create empty component specification</source> - <translation type="unfinished">Impossible de créer une spécification du composant vide</translation> + <translation>Impossible de créer une spécification du composant vide</translation> </message> <message> <source>Incorrectly specified signal assignment</source> - <translation type="unfinished">L'affectation du signal est ncorrectement spécifiée</translation> + <translation>L'affectation du signal est incorrectement spécifiée</translation> </message> <message> <source>Cannot assign a value to a signal (expecting a script to be run)</source> - <translation type="unfinished">Impossible d'assigner une valeur à un signal (celà exige d'éxécuter un script)</translation> + <translation>Impossible d'assigner une valeur à un signal (un script à exécuter est attendu)</translation> </message> <message> <source>Empty signal assignment</source> - <translation type="unfinished">Signal d'affectation vide</translation> + <translation>Affectation de signal vide</translation> </message> <message> <source>Empty property assignment</source> - <translation type="unfinished">Propriété d'affectation vide</translation> + <translation>Affectation de propriété vide</translation> </message> <message> <source>Attached properties cannot be used here</source> - <translation type="unfinished">La configuration spécifiée ne peut être utilisée.ici</translation> + <translation>La configuration spécifiée ne peut être utilisée ici.</translation> </message> <message> <source>Non-existent attached object</source> - <translation type="unfinished">Objet attaché non existant</translation> + <translation>Objet attaché inexistant</translation> </message> <message> <source>Invalid attached object assignment</source> - <translation type="unfinished">L'affectation de l'objet attaché est invalide</translation> + <translation>L'affectation de l'objet attaché est invalide</translation> </message> <message> <source>Cannot assign to non-existent default property</source> - <translation type="unfinished">Impossible d'attacher à une propriété par défaut non existante</translation> + <translation>Impossible d'attacher à une propriété par défaut inexistante</translation> </message> <message> <source>Cannot assign to non-existent property "%1"</source> - <translation type="unfinished">Impossible d'attacher à une propriété non existante "%1"</translation> + <translation>Impossible d'attacher à une propriété inexistante "%1"</translation> </message> <message> <source>Invalid use of namespace</source> - <translation type="unfinished">Utilisation invalide d'espace de noms</translation> + <translation>Utilisation invalide d'espace de noms</translation> </message> <message> <source>Not an attached property name</source> - <translation type="unfinished">Ce n'est pas un nom de propriété attachée</translation> + <translation>Ce n'est pas un nom de propriété attachée</translation> </message> <message> <source>Invalid use of id property</source> - <translation type="unfinished">Utilisation invalide de la propriété id</translation> + <translation>Utilisation invalide de la propriété id</translation> </message> <message> <source>Property has already been assigned a value</source> - <translation type="unfinished">Une valeur a déjà été attribuée à la propriété</translation> + <translation>Une valeur a déjà été attribuée à la propriété</translation> </message> <message> <source>Invalid grouped property access</source> - <translation type="unfinished">Accès invalide à une propriété groupée</translation> + <translation>Accès invalide à une propriété groupée</translation> </message> <message> <source>Cannot assign a value directly to a grouped property</source> - <translation type="unfinished">Impossible d'assigner directement une valeur à une propriété groupée</translation> + <translation>Impossible d'assigner directement une valeur à une propriété groupée</translation> </message> <message> <source>Invalid property use</source> - <translation type="unfinished">La propriété utilisée est invalide</translation> + <translation>La propriété utilisée est invalide</translation> </message> <message> <source>Property assignment expected</source> - <translation type="unfinished">Propriété d'affectation attendue</translation> + <translation>Affectation de propriété attendue</translation> </message> <message> <source>Single property assignment expected</source> - <translation type="unfinished">Une seule propriété d'affectation est attendue</translation> + <translation>Une seule affectation de propriété est attendue</translation> </message> <message> <source>Unexpected object assignment</source> - <translation type="unfinished">Affectation d'objet innatendue</translation> + <translation>Affectation d'objet inattendue</translation> </message> <message> <source>Cannot assign object to list</source> - <translation type="unfinished">Impossible d'assigner un objet à une liste</translation> + <translation>Impossible d'assigner un objet à une liste</translation> </message> <message> <source>Can only assign one binding to lists</source> - <translation type="unfinished">Un seul lien peut être assigné à des listes</translation> + <translation>Un seul lien peut être assigné à des listes</translation> </message> <message> <source>Cannot assign primitives to lists</source> - <translation type="unfinished">Impossible d'assigner des primitives à des listes</translation> + <translation>Impossible d'assigner des primitives à des listes</translation> </message> <message> <source>Cannot assign multiple values to a script property</source> - <translation type="unfinished">Impossible d'assigner plusieurs valeurs à une propriété de script</translation> + <translation>Impossible d'assigner plusieurs valeurs à une propriété de script</translation> </message> <message> <source>Invalid property assignment: script expected</source> - <translation type="unfinished">Propriété d'affectation invalide: script attendu</translation> + <translation>Affectation de propriété invalide : script attendu</translation> </message> <message> <source>Cannot assign object to property</source> - <translation type="unfinished">Impossible d'assigner un objet à une propriété</translation> + <translation>Impossible d'assigner un objet à une propriété</translation> </message> <message> <source>"%1" cannot operate on "%2"</source> - <translation type="unfinished">"%1" ne peut pas fonctionner sur "%2"</translation> + <translation>"%1" ne peut pas opérer sur "%2"</translation> </message> <message> <source>Duplicate default property</source> - <translation type="unfinished">Propriété par défaut en double</translation> + <translation>Propriété par défaut en double</translation> </message> <message> <source>Duplicate property name</source> - <translation type="unfinished">Nom de propriété en double</translation> + <translation>Nom de propriété en double</translation> </message> <message> <source>Property names cannot begin with an upper case letter</source> - <translation type="unfinished">Les noms des propriétés ne peuvent pas commencer par une majuscule</translation> + <translation>Les noms des propriétés ne peuvent pas commencer par une majuscule</translation> + </message> + <message> + <source>Illegal property name</source> + <translation>Nom de propriété invalide</translation> </message> <message> <source>Duplicate signal name</source> - <translation type="unfinished">Nom de signal en double</translation> + <translation>Nom de signal en double</translation> </message> <message> <source>Signal names cannot begin with an upper case letter</source> - <translation type="unfinished">Les noms de signaux ne peuvent pas commencer par une majuscule</translation> + <translation>Les noms de signaux ne peuvent pas commencer par une majuscule</translation> + </message> + <message> + <source>Illegal signal name</source> + <translation>Nom de signal invalide</translation> </message> <message> <source>Duplicate method name</source> - <translation type="unfinished">Nom de méthode en double</translation> + <translation>Nom de méthode en double</translation> </message> <message> <source>Method names cannot begin with an upper case letter</source> - <translation type="unfinished">Les noms des méthodes ne peuvent pas commencer par une majuscule</translation> + <translation>Les noms des méthodes ne peuvent pas commencer par une majuscule</translation> + </message> + <message> + <source>Illegal method name</source> + <translation>Nom de méthode invalide</translation> </message> <message> <source>Property value set multiple times</source> - <translation type="unfinished">Valeur de propriété attribuée plusieurs fois</translation> + <translation>Valeur de propriété attribuée plusieurs fois</translation> </message> <message> <source>Invalid property nesting</source> - <translation type="unfinished">Propriété d'emboîtement invalide</translation> + <translation>Imbrication de propriété invalide</translation> </message> <message> <source>Cannot override FINAL property</source> - <translation type="unfinished">Impossible de remplacer la propriété FINAL</translation> + <translation>Impossible de remplacer la propriété FINAL</translation> </message> <message> <source>Invalid property type</source> - <translation type="unfinished">Type de propriété invalide</translation> + <translation>Type de propriété invalide</translation> </message> <message> <source>Invalid empty ID</source> - <translation>ID vide non valide</translation> + <translation>id vide invalide</translation> </message> <message> <source>IDs cannot start with an uppercase letter</source> - <translation type="unfinished">Les IDs ne peuvent pas commencer par une majuscule</translation> + <translation>Les ids ne peuvent pas commencer par une majuscule</translation> </message> <message> <source>IDs must start with a letter or underscore</source> - <translation type="unfinished">Les IDs doivent commencer par une lettre ou un souligné</translation> + <translation>Les ids doivent commencer par une lettre ou un tiret bas</translation> </message> <message> <source>IDs must contain only letters, numbers, and underscores</source> - <translation type="unfinished">Les IDs ne peuvent contenir que des lettres, des nombres ou des soulignés</translation> + <translation>Les ids ne peuvent contenir que des lettres, des nombres ou des tirets bas</translation> </message> <message> <source>ID illegally masks global JavaScript property</source> - <translation type="unfinished">ID masque illégalement la propriété JavaScript globale</translation> - </message> - <message> - <source>No property alias location</source> - <translatorcomment>??</translatorcomment> - <translation type="unfinished">La propriété de l'alias n'a pas d'emplacement</translation> + <translation>id masque illégalement la propriété JavaScript globale</translation> </message> <message> - <source>Invalid alias location</source> - <translation type="unfinished">Emplacement d'alias invalide</translation> + <source></source> + <translation>L'alias de propriété n'a pas d'emplacement</translation> </message> <message> <source>Invalid alias reference. An alias reference must be specified as <id> or <id>.<property></source> - <translation type="unfinished">Référence d'alias invalide. La référence d'alias doit être spécifiée comme <id> ou <id>.<property></translation> + <translation>Référence d'alias invalide. Les références d'alias doivent être spécifiées comme <id> ou <id>.<property></translation> </message> <message> <source>Invalid alias reference. Unable to find id "%1"</source> - <translation type="unfinished">Référence d'alias invalide. Impossible de trouver l'id "%1"</translation> + <translation>Référence d'alias invalide. Impossible de trouver l'id "%1"</translation> </message> </context> <context> <name>QDeclarativeComponent</name> <message> <source>Invalid empty URL</source> - <translation type="unfinished">URL vide non valide</translation> + <translation>URL vide invalide</translation> </message> </context> <context> <name>QDeclarativeCompositeTypeManager</name> <message> <source>Resource %1 unavailable</source> - <translation type="unfinished">La ressource %1 n'est pas disponible</translation> + <translation>La ressource %1 n'est pas disponible</translation> </message> <message> <source>Namespace %1 cannot be used as a type</source> - <translation type="unfinished">L'espace de noms %1 ne peut pas être utilisé comme un type</translation> + <translation>L'espace de noms %1 ne peut pas être utilisé comme un type</translation> </message> <message> <source>%1 %2</source> @@ -1945,130 +1972,130 @@ en </message> <message> <source>Type %1 unavailable</source> - <translation type="unfinished">Le type %1 n'est pas disponible</translation> + <translation>Le type %1 n'est pas disponible</translation> </message> </context> <context> <name>QDeclarativeConnections</name> <message> <source>Cannot assign to non-existent property "%1"</source> - <translation type="unfinished">Imposible d'assigner à la propriété inexistante "%1"</translation> + <translation>Imposible d'assigner à la propriété inexistante "%1"</translation> </message> <message> <source>Connections: nested objects not allowed</source> - <translation type="unfinished">Connexions: les éléments imbriqués ne sont pas autorisés</translation> + <translation>Connexions : les éléments imbriqués ne sont pas autorisés</translation> </message> <message> <source>Connections: syntax error</source> - <translation type="unfinished">Connexions: erreur de syntaxe</translation> + <translation>Connexions : erreur de syntaxe</translation> </message> <message> <source>Connections: script expected</source> - <translation type="unfinished">Connexions: script attendu</translation> + <translation>Connexions : script attendu</translation> </message> </context> <context> <name>QDeclarativeEngine</name> <message> <source>executeSql called outside transaction()</source> - <translation type="unfinished">executeSql a été 1.appelé en dehors de transaction()</translation> + <translation>executeSql a été appelé en dehors de transaction()</translation> </message> <message> <source>Read-only Transaction</source> - <translation type="unfinished">Transaction en lecture seule</translation> + <translation>Transaction en lecture seule</translation> </message> <message> <source>Version mismatch: expected %1, found %2</source> - <translation type="unfinished">Version incompatible:%1 attendue, %2 trouvée</translation> + <translation>Version incompatible : %1 attendue, %2 trouvée</translation> </message> <message> <source>SQL transaction failed</source> - <translation type="unfinished">la transaction SQL a échouée</translation> + <translation>la transaction SQL a échouée</translation> </message> <message> <source>transaction: missing callback</source> - <translation type="unfinished">transaction: le rappel est absent</translation> + <translation>transaction : la fonction de rappel est absente</translation> </message> <message> <source>SQL: database version mismatch</source> - <translation type="unfinished">SQL: la version de la base de données est incompatible</translation> + <translation>SQL : la version de la base de données est incompatible</translation> </message> </context> <context> <name>QDeclarativeFlipable</name> <message> <source>front is a write-once property</source> - <translation type="unfinished">avant est une propriété à écriture unique</translation> + <translation>front est une propriété à écriture unique</translation> </message> <message> <source>back is a write-once property</source> - <translation type="unfinished">arrière est une propriété à écriture unique</translation> + <translation>back est une propriété à écriture unique</translation> </message> </context> <context> <name>QDeclarativeImportDatabase</name> <message> <source>module "%1" definition "%2" not readable</source> - <translation type="unfinished">La définition "%2" du module "%1% n'est pas lisible</translation> + <translation>la définition "%2" du module "%1% n'est pas lisible</translation> </message> <message> <source>plugin cannot be loaded for module "%1": %2</source> - <translation type="unfinished">Impossible de charger le plugin pour le module "%1": %2</translation> + <translation>impossible de charger le plugin pour le module "%1" : %2</translation> </message> <message> <source>module "%1" plugin "%2" not found</source> - <translation type="unfinished">Le plugin "%2" du module "%1" n'a pas été trouvé</translation> + <translation>le plugin "%2" du module "%1" n'a pas été trouvé</translation> </message> <message> <source>module "%1" version %2.%3 is not installed</source> - <translation type="unfinished">la version %2.%3 du module "%1" n'est pas installée</translation> + <translation>la version %2.%3 du module "%1" n'est pas installée</translation> </message> <message> <source>module "%1" is not installed</source> - <translation type="unfinished">le module "%1" n'est pas installé</translation> + <translation>le module "%1" n'est pas installé</translation> </message> <message> <source>"%1": no such directory</source> - <translation type="unfinished">"%1": le répertoire n'existe pas</translation> + <translation>"%1" : le répertoire n'existe pas</translation> </message> <message> <source>import "%1" has no qmldir and no namespace</source> - <translation type="unfinished">l'importation "%1" n'a pas de qmldir ni d'espace de noms</translation> + <translation>l'importation "%1" n'a pas de qmldir ni d'espace de noms</translation> </message> <message> <source>- %1 is not a namespace</source> - <translation type="unfinished">- %1 n'est pas un espace de noms</translation> + <translation>- %1 n'est pas un espace de noms</translation> </message> <message> <source>- nested namespaces not allowed</source> - <translation type="unfinished">- les espaces de noms imbriqués ne sont pas autorisés</translation> + <translation>- les espaces de noms imbriqués ne sont pas autorisés</translation> </message> <message> <source>local directory</source> - <translation type="unfinished">répertoire local</translation> + <translation>répertoire local</translation> </message> <message> <source>is ambiguous. Found in %1 and in %2</source> - <translation type="unfinished">est ambigu. Trouvé dans %1 et dans %2</translation> + <translation>est ambigu. Trouvé dans %1 et dans %2</translation> </message> <message> <source>is ambiguous. Found in %1 in version %2.%3 and %4.%5</source> - <translation type="unfinished">est ambigu. Trouvé dans %1 dans les versions %2.%3 et %4.%5</translation> + <translation>est ambigu. Trouvé dans %1 dans les versions %2.%3 et %4.%5</translation> </message> <message> <source>is instantiated recursively</source> - <translation type="unfinished">est instancié récursivement</translation> + <translation>est instancié récursivement</translation> </message> <message> <source>is not a type</source> - <translation type="unfinished">n'est pas un type</translation> + <translation>n'est pas un type</translation> </message> </context> <context> <name>QDeclarativeKeyNavigationAttached</name> <message> <source>KeyNavigation is only available via attached properties</source> - <translation type="unfinished"></translation> + <translation>KeyNavigation est disponible uniquement via les propriétés attachées</translation> </message> </context> <context> @@ -2076,331 +2103,345 @@ en <message> <source>Keys is only available via attached properties</source> <translatorcomment>Keys, a verifier</translatorcomment> - <translation type="unfinished">Keys est disponible uniquement via les propriétés attachées</translation> + <translation>Keys est disponible uniquement via les propriétés attachées</translation> </message> </context> <context> <name>QDeclarativeListModel</name> <message> <source>remove: index %1 out of range</source> - <translation type="unfinished">supprimer: l'inder %1 est hors de la plage de valeurs admissible</translation> + <translation>remove : l'index %1 est hors de la plage de valeurs admissibles</translation> </message> <message> <source>insert: value is not an object</source> - <translation type="unfinished">insérer: une valeur n'est pas un objet</translation> + <translation>insert : une valeur n'est pas un objet</translation> </message> <message> <source>insert: index %1 out of range</source> - <translation type="unfinished">insérer: l'inder %1 est hors de la plage de valeurs admissible</translation> + <translation>insert : l'index %1 est hors de la plage de valeurs admissibles</translation> </message> <message> <source>move: out of range</source> - <translation type="unfinished">Déplacer: hors de la plage de valeurs admissible</translation> + <translation>move : hors de la plage de valeurs admissibles</translation> </message> <message> <source>append: value is not an object</source> - <translation type="unfinished">ajouter: une valeur n'est pas un objet</translation> + <translation>append : une valeur n'est pas un objet</translation> </message> <message> <source>set: value is not an object</source> - <translation type="unfinished">attribuer: une valeur n'est pas un objet</translation> + <translation>set : une valeur n'est pas un objet</translation> </message> <message> <source>set: index %1 out of range</source> - <translation type="unfinished">attribuer: l'index %1 est hors de la plage de valeurs admissible</translation> + <translation>set : l'index %1 est hors de la plage de valeurs admissible</translation> </message> <message> <source>ListElement: cannot contain nested elements</source> - <translation type="unfinished">ListElement: ne peut pas contenir des éléments imbriqués</translation> + <translation>ListElement : ne peut pas contenir des éléments imbriqués</translation> </message> <message> <source>ListElement: cannot use reserved "id" property</source> - <translation type="unfinished">ListElement: ne peut pas utiliser la propriété réservée "id"</translation> + <translation>ListElement : ne peut pas utiliser la propriété réservée "id"</translation> </message> <message> <source>ListElement: cannot use script for property value</source> - <translation type="unfinished">ListElement: ne peut pas utiliser script comme valeur pour une propriété</translation> + <translation>ListElement : ne peut pas utiliser script comme valeur pour une propriété</translation> </message> <message> <source>ListModel: undefined property '%1'</source> - <translation type="unfinished">ListModel: propriété indéfinie '%1'</translation> + <translation>ListModel : propriété indéfinie '%1'</translation> </message> </context> <context> <name>QDeclarativeLoader</name> <message> <source>Loader does not support loading non-visual elements.</source> - <translation type="unfinished">Le chargeur n'est pas compatible avec le chargement d'éléments non-visuels.</translation> + <translation>Le chargeur n'est pas compatible avec le chargement d'éléments non-visuels.</translation> </message> </context> <context> <name>QDeclarativeParentAnimation</name> <message> <source>Unable to preserve appearance under complex transform</source> - <translation type="unfinished">Impossible de conserver l'aspect lors d'une transformation complexe</translation> + <translation>Impossible de conserver l'aspect lors d'une transformation complexe</translation> </message> <message> <source>Unable to preserve appearance under non-uniform scale</source> - <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle non uniforme</translation> + <translation>Impossible de conserver l'aspect lors d'une mise à l'échelle non uniforme</translation> </message> <message> <source>Unable to preserve appearance under scale of 0</source> - <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle égale à 0</translation> + <translation>Impossible de conserver l'aspect lors d'une mise à l'échelle égale à 0</translation> </message> </context> <context> <name>QDeclarativeParentChange</name> <message> <source>Unable to preserve appearance under complex transform</source> - <translation type="unfinished">Impossible de conserver l'aspect lors d'une transformation complexe</translation> + <translation>Impossible de conserver l'aspect lors d'une transformation complexe</translation> </message> <message> <source>Unable to preserve appearance under non-uniform scale</source> - <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle non uniforme</translation> + <translation>Impossible de conserver l'aspect lors d'une mise à l'échelle non uniforme</translation> </message> <message> <source>Unable to preserve appearance under scale of 0</source> - <translation type="unfinished">Impossible de conserver l'aspect lors d'une mise à l'échelle égale à 0</translation> + <translation>Impossible de conserver l'aspect lors d'une mise à l'échelle égale à 0</translation> </message> </context> <context> <name>QDeclarativeParser</name> <message> <source>Illegal unicode escape sequence</source> - <translation type="unfinished">séquence d'échappement unicode illégale</translation> + <translation>Séquence d'échappement Unicode illégale</translation> </message> <message> <source>Illegal character</source> - <translation type="unfinished">caractère illégal</translation> + <translation>Caractère illégal</translation> </message> <message> <source>Unclosed string at end of line</source> - <translation type="unfinished">chaîne de caractères non fermée en fin de ligne</translation> + <translation>Chaîne de caractères non fermée en fin de ligne</translation> </message> <message> <source>Illegal escape squence</source> - <translation type="unfinished">séquence d'échappement illégale</translation> + <translation>Séquence d'échappement illégale</translation> </message> <message> <source>Unclosed comment at end of file</source> - <translation type="unfinished">commentaire non fermé en fin de ligne</translation> + <translation>Commentaire non fermé en fin de ligne</translation> </message> <message> <source>Illegal syntax for exponential number</source> - <translation type="unfinished">syntaxe illégale pour un nombre exponentiel</translation> + <translation>Syntaxe illégale pour un nombre exponentiel</translation> </message> <message> <source>Identifier cannot start with numeric literal</source> - <translatorcomment>??? </translatorcomment> - <translation type="unfinished">impossible de commencer un identifiant par un littéral numérique</translation> + <translation>Impossible de commencer un identifiant par un chiffre</translation> </message> <message> <source>Unterminated regular expression literal</source> - <translation type="unfinished">littéral non terminé pour l'expression régulière</translation> + <translation>Élément non terminé pour l'expression régulière</translation> </message> <message> <source>Invalid regular expression flag '%0'</source> - <translation type="unfinished">drapeau '%0' invalid pour l'expression régulière</translation> + <translation>Drapeau '%0' invalid pour l'expression régulière</translation> </message> <message> <source>Unterminated regular expression backslash sequence</source> - <translation type="unfinished">séquence antislash non terminée pour l'expression régulière</translation> + <translation>Séquence antislash non terminée pour l'expression régulière</translation> </message> <message> <source>Unterminated regular expression class</source> - <translation type="unfinished">class non terminé pour l'expression régulière</translation> + <translation>Classe non terminée pour l'expression régulière</translation> </message> <message> <source>Syntax error</source> - <translation type="unfinished">Erreur de syntaxe</translation> + <translation>Erreur de syntaxe</translation> </message> <message> <source>Unexpected token `%1'</source> - <translation type="unfinished">jeton inattendu '%1'</translation> + <translation>jeton inattendu '%1'</translation> </message> <message> <source>Expected token `%1'</source> - <translation type="unfinished">jeton attendu '%1'</translation> + <translation>jeton attendu '%1'</translation> </message> <message> <source>Property value set multiple times</source> - <translation type="unfinished">valeur de propriété attribuée à plusieurs reprises</translation> + <translation>valeur de propriété attribuée à plusieurs reprises</translation> </message> <message> <source>Expected type name</source> - <translation type="unfinished">Nom de type attendu</translation> + <translation>Nom de type attendu</translation> </message> <message> <source>Invalid import qualifier ID</source> - <translation type="unfinished">qualificatif ID d'importation invalide</translation> + <translation>qualificatif id d'importation invalide</translation> </message> <message> <source>Reserved name "Qt" cannot be used as an qualifier</source> - <translation type="unfinished">"Qt" est un nom réservé et ne peut pas être utilisé comme qualificatif</translation> + <translation>"Qt" est un nom réservé et ne peut pas être utilisé comme qualificatif</translation> </message> <message> <source>Script import qualifiers must be unique.</source> <translatorcomment>??</translatorcomment> - <translation type="unfinished">Les qualificatifs d'importation de script doivent être uniques.</translation> + <translation>Les qualificatifs d'importation de script doivent être uniques.</translation> </message> <message> <source>Script import requires a qualifier</source> - <translation type="unfinished">L'importation de script exige un qualificatif</translation> + <translation>L'importation de script exige un qualificatif</translation> </message> <message> <source>Library import requires a version</source> - <translation type="unfinished">L'importation de bibliothèque exige une version</translation> + <translation>L'importation de bibliothèque exige une version</translation> </message> <message> <source>Expected parameter type</source> - <translation type="unfinished">Type de paramètre attendu</translation> + <translation>Type de paramètre attendu</translation> </message> <message> <source>Invalid property type modifier</source> - <translation type="unfinished">Modificateur invalide pour le type de propriété</translation> + <translation>Modificateur invalide pour le type de propriété</translation> </message> <message> <source>Unexpected property type modifier</source> - <translation type="unfinished">Modificateur innatendu pour le type de propriété</translation> + <translation>Modificateur inattendu pour le type de propriété</translation> </message> <message> <source>Expected property type</source> - <translation type="unfinished">Type de propriété attendue</translation> + <translation>Type de propriété attendu</translation> </message> <message> <source>Readonly not yet supported</source> - <translation type="unfinished">La lecture seule n'est pas encore implémentée</translation> + <translation>La lecture seule n'est pas encore implémentée</translation> </message> <message> <source>JavaScript declaration outside Script element</source> - <translation type="unfinished">Déclaration JavaScript en edhors de l'élément Script</translation> + <translation>Déclaration JavaScript en dehors de l'élément Script</translation> </message> </context> <context> <name>QDeclarativePauseAnimation</name> <message> <source>Cannot set a duration of < 0</source> - <translation type="unfinished">Impossible d'attribuer une durée < 0</translation> + <translation>Impossible d'attribuer une durée < 0</translation> + </message> +</context> +<context> + <name>QDeclarativePixmap</name> + <message> + <source>Error decoding: %1: %2</source> + <translation>Erreur de décodage : %1 : %2</translation> + </message> + <message> + <source>Failed to get image from provider: %1</source> + <translation>Impossible d'obtenir l'image du fournisseur : %1</translation> + </message> + <message> + <source>Cannot open: %1</source> + <translation>Impossible d'ouvrir : %1</translation> </message> </context> <context> <name>QDeclarativePixmapCache</name> <message> <source>Error decoding: %1: %2</source> - <translation type="unfinished">Erreur de décodage: %1: %2</translation> + <translation type="obsolete">Erreur de décodage : %1 : %2</translation> </message> <message> <source>Failed to get image from provider: %1</source> - <translation type="unfinished">Impossible d'obtenir l'image du fournisseur: %1</translation> + <translation type="obsolete">Impossible d'obtenir l'image du fournisseur : %1</translation> </message> <message> <source>Cannot open: %1</source> - <translation type="unfinished">Impossible d'ouvrir: %1</translation> + <translation type="obsolete">Impossible d'ouvrir : %1</translation> </message> <message> <source>Unknown Error loading %1</source> - <translation type="unfinished">Erreur de chargement inconnue: %1</translation> + <translation type="obsolete">Erreur de chargement inconnue : %1</translation> </message> </context> <context> <name>QDeclarativePropertyAnimation</name> <message> <source>Cannot set a duration of < 0</source> - <translation type="unfinished">Impossible d'attribuer une durée < 0</translation> + <translation>Impossible d'attribuer une durée < 0</translation> </message> </context> <context> <name>QDeclarativePropertyChanges</name> <message> <source>PropertyChanges does not support creating state-specific objects.</source> - <translation type="unfinished">PropertyChanges n'est pas compatible avec la création d'objets spécifiques à un état.</translation> + <translation>PropertyChanges n'est pas compatible avec la création d'objets spécifiques à un état.</translation> </message> <message> <source>Cannot assign to non-existent property "%1"</source> - <translation type="unfinished">Ne peut pas assigner à la propriété inexistante "%1"</translation> + <translation>Ne peut pas assigner à la propriété inexistante "%1"</translation> </message> <message> <source>Cannot assign to read-only property "%1"</source> - <translation type="unfinished">Ne peut pas assigner à la propriété en lecture seule "%1"</translation> + <translation>Ne peut pas assigner à la propriété en lecture seule "%1"</translation> </message> </context> <context> <name>QDeclarativeTextInput</name> <message> <source>Could not load cursor delegate</source> - <translation type="unfinished">Impossible de charger le curseur délégué</translation> + <translation>Impossible de charger le délégué de curseur</translation> </message> <message> <source>Could not instantiate cursor delegate</source> - <translation type="unfinished">Impossible d'instancier le curseur délégué</translation> + <translation>Impossible d'instancier le délégué de curseur</translation> </message> </context> <context> <name>QDeclarativeVME</name> <message> <source>Unable to create object of type %1</source> - <translation type="unfinished">Impossible de créer un objet de type %1</translation> + <translation>Impossible de créer un objet de type %1</translation> </message> <message> <source>Cannot assign value %1 to property %2</source> - <translation type="unfinished">Impossible d'assigner la valeur %1 à la propriété %2</translation> + <translation>Impossible d'assigner la valeur %1 à la propriété %2</translation> </message> <message> <source>Cannot assign object type %1 with no default method</source> - <translation type="unfinished">Impossible d'assigner un objet de type %1 sans méthode défaut</translation> + <translation>Impossible d'assigner un objet de type %1 sans méthode par défaut</translation> </message> <message> <source>Cannot connect mismatched signal/slot %1 %vs. %2</source> <translatorcomment>le vs a confirmer</translatorcomment> - <translation type="unfinished">Impossible de connecter le signal/slot %1 %vs. %2 pour cause d'incompatibilité</translation> + <translation>Impossible de connecter le signal/slot %1 %vs. %2 pour cause d'incompatibilité</translation> </message> <message> <source>Cannot assign an object to signal property %1</source> - <translation type="unfinished">NImpossible d'assigner un objet à la propriété %1 d'un signal</translation> + <translation>Impossible d'assigner un objet à la propriété %1 d'un signal</translation> </message> <message> <source>Cannot assign object to list</source> - <translation type="unfinished">Impossible d'assigner un objet à une liste</translation> + <translation>Impossible d'assigner un objet à une liste</translation> </message> <message> <source>Cannot assign object to interface property</source> - <translation type="unfinished">Impossible d'assigner un objet à la propriété d'une interface</translation> + <translation>Impossible d'assigner un objet à la propriété d'une interface</translation> </message> <message> <source>Unable to create attached object</source> - <translation type="unfinished">Impossible de créer un object attaché</translation> + <translation>Impossible de créer un objet attaché</translation> </message> <message> <source>Cannot set properties on %1 as it is null</source> - <translation type="unfinished">Impossible d'attribuer les propriétés à %1 car ce dernier est nul</translation> + <translation>Impossible d'attribuer les propriétés à %1 car ce dernier est nul</translation> </message> </context> <context> <name>QDeclarativeVisualDataModel</name> <message> <source>Delegate component must be Item type.</source> - <translation type="unfinished">Un composant délégué doit être de type Item.</translation> + <translation>Un composant délégué doit être de type Item.</translation> </message> </context> <context> <name>QDeclarativeXmlListModel</name> <message> <source>Qt was built without support for xmlpatterns</source> - <translation type="unfinished">Qt a été généré sans support pour xmlpatterns</translation> + <translation>Qt a été compilé sans support pour xmlpatterns</translation> </message> </context> <context> <name>QDeclarativeXmlListModelRole</name> <message> <source>An XmlRole query must not start with '/'</source> - <translation type="unfinished">Une requête XmlRole ne doit pas commencer par '/'</translation> + <translation>Une requête XmlRole ne doit pas commencer par '/'</translation> </message> </context> <context> <name>QDeclarativeXmlRoleList</name> <message> <source>An XmlListModel query must start with '/' or "//"</source> - <translation type="unfinished">Une requête XmlListModel doit commencer par '/' ou "//"</translation> + <translation>Une requête XmlListModel doit commencer par '/' ou "//"</translation> </message> </context> <context> @@ -2415,7 +2456,7 @@ en </message> <message> <source>SliderHandle</source> - <translation>Poignée</translation> + <translation>Poignée du slider</translation> </message> </context> <context> @@ -2599,15 +2640,15 @@ en </message> <message> <source>Debug Message:</source> - <translation>Message de débogage:</translation> + <translation>Message de débogage : </translation> </message> <message> <source>Warning:</source> - <translation>Avertissement:</translation> + <translation>Avertissement : </translation> </message> <message> <source>Fatal Error:</source> - <translation>Erreur fatale:</translation> + <translation>Erreur fatale : </translation> </message> </context> <context> @@ -2638,7 +2679,7 @@ en </message> <message> <source>Will not rename sequential file using block copy</source> - <translation>Ne renommera pas le fichier séquentiel avec la copie bloc</translation> + <translation>Ne renommera pas le fichier séquentiel avec la copie par blocs</translation> </message> </context> <context> @@ -2714,11 +2755,11 @@ Veuillez vérifier que le nom du fichier est correct.</translation> </message> <message> <source>Files of type:</source> - <translation>Fichiers de type :</translation> + <translation>Fichiers de type : </translation> </message> <message> <source>Directory:</source> - <translation>Dossier :</translation> + <translation>Dossier : </translation> </message> <message> <source> @@ -2744,7 +2785,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Are sure you want to delete '%1'?</source> - <translation>Etes-vous sûr de vouloir supprimer '%1' ?</translation> + <translation>Êtes-vous sûr de vouloir supprimer '%1' ?</translation> </message> <message> <source>Could not delete directory.</source> @@ -2820,11 +2861,11 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>File &name:</source> - <translation>&Nom de fichier :</translation> + <translation>&Nom de fichier : </translation> </message> <message> <source>Look in:</source> - <translation>Voir dans:</translation> + <translation>Voir dans : </translation> </message> <message> <source>Create New Folder</source> @@ -2956,11 +2997,11 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Demi Bold</source> - <translation>Semi Gras</translation> + <translation>Demi-gras</translation> </message> <message> <source>Black</source> - <translation>Noir</translation> + <translation>Extra-gras</translation> </message> <message> <source>Demi</source> @@ -2968,7 +3009,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Light</source> - <translation>Léger</translation> + <translation>Maigre</translation> </message> <message> <source>Italic</source> @@ -3012,11 +3053,11 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Thaana</source> - <translation>Thaana</translation> + <translation>Thâna</translation> </message> <message> <source>Devanagari</source> - <translation>Devanagari</translation> + <translation>Dévanagari</translation> </message> <message> <source>Bengali</source> @@ -3036,7 +3077,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Tamil</source> - <translation>Tamil</translation> + <translation>Tamoul</translation> </message> <message> <source>Telugu</source> @@ -3176,11 +3217,11 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Connection to %1 closed</source> - <translation>Connexion à %1 arrêtée</translation> + <translation>Connexion à %1 fermée</translation> </message> <message> <source>Connection closed</source> - <translation>Connexion arrêtée</translation> + <translation>Connexion fermée</translation> </message> <message> <source>Host %1 not found</source> @@ -3207,7 +3248,7 @@ Voulez-vous quand même le supprimer ?</translation> <message> <source>Login failed: %1</source> - <translation>Échec du login: + <translation>Échec du login : %1</translation> </message> <message> @@ -3299,7 +3340,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Invalid hostname</source> - <translation>Nom d'hôte non valide</translation> + <translation>Nom d'hôte invalide</translation> </message> </context> <context> @@ -3338,11 +3379,11 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Connection to %1 closed</source> - <translation>Connexion à %1 arrêtée</translation> + <translation>Connexion à %1 fermée</translation> </message> <message> <source>Connection closed</source> - <translation>Connexion arrêtée</translation> + <translation>Connexion fermée</translation> </message> <message> <source>Unknown error</source> @@ -3402,7 +3443,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>SSL handshake failed</source> - <translation>le handshake SSL a échoué</translation> + <translation>La poignée de main SSL a échoué</translation> </message> <message> <source>Connection refused (or timed out)</source> @@ -3429,7 +3470,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Proxy denied connection</source> - <translation>Le Proxy a rejeté la connexion</translation> + <translation>Le proxy a rejeté la connexion</translation> </message> <message> <source>Error communicating with HTTP proxy</source> @@ -3546,7 +3587,7 @@ Voulez-vous quand même le supprimer ?</translation> <name>QIODevice</name> <message> <source>Permission denied</source> - <translation>Accès refusé</translation> + <translation>Autorisation refusée</translation> </message> <message> <source>Too many open files</source> @@ -3596,22 +3637,22 @@ Voulez-vous quand même le supprimer ?</translation> <name>QInputDialog</name> <message> <source>Enter a value:</source> - <translation>Entrer une valeur :</translation> + <translation>Entrer une valeur : </translation> </message> </context> <context> <name>QLibrary</name> <message> <source>QLibrary::load_sys: Cannot load %1 (%2)</source> - <translation type="obsolete">QLibrary::load_sys: Impossible de charger %1 (%2)</translation> + <translation type="obsolete">QLibrary::load_sys : Impossible de charger %1 (%2)</translation> </message> <message> <source>QLibrary::unload_sys: Cannot unload %1 (%2)</source> - <translation type="obsolete">QLibrary::unload_sys: Impossible de décharger %1 (%2)</translation> + <translation type="obsolete">QLibrary::unload_sys : Impossible de décharger %1 (%2)</translation> </message> <message> <source>QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3)</source> - <translation type="obsolete">QLibrary::resolve_sys: Symbole "%1" non défini dans %2 (%3)</translation> + <translation type="obsolete">QLibrary::resolve_sys : Symbole "%1" non défini dans %2 (%3)</translation> </message> <message> <source>Could not mmap '%1': %2</source> @@ -3697,58 +3738,58 @@ Voulez-vous quand même le supprimer ?</translation> <name>QLocalServer</name> <message> <source>%1: Name error</source> - <translation>%1: Erreur de nom</translation> + <translation>%1 : Erreur de nom</translation> </message> <message> <source>%1: Permission denied</source> - <translation>%1: Permission refusée</translation> + <translation>%1 : Permission refusée</translation> </message> <message> <source>%1: Address in use</source> - <translation>%1: Address déjà utilisée</translation> + <translation>%1 : Address déjà utilisée</translation> </message> <message> <source>%1: Unknown error %2</source> - <translation>%1: Erreur inconnue %2</translation> + <translation>%1 : Erreur inconnue %2</translation> </message> </context> <context> <name>QLocalSocket</name> <message> <source>%1: Connection refused</source> - <translation>%1: Connexion refusée</translation> + <translation>%1 : Connexion refusée</translation> </message> <message> <source>%1: Remote closed</source> - <translation>%1: Connexion fermée</translation> + <translation>%1 : Connexion fermée</translation> </message> <message> <source>%1: Invalid name</source> - <translation>%1: Nom invalide</translation> + <translation>%1 : Nom invalide</translation> </message> <message> <source>%1: Socket access error</source> - <translation>%1: Erreur d'accès au socket</translation> + <translation>%1 : Erreur d'accès au socket</translation> </message> <message> <source>%1: Socket resource error</source> - <translation>%1: Erreur de ressource du socket</translation> + <translation>%1 : Erreur de ressource du socket</translation> </message> <message> <source>%1: Socket operation timed out</source> - <translation>%1: L'opération socket a expiré</translation> + <translation>%1 : L'opération socket a expiré</translation> </message> <message> <source>%1: Datagram too large</source> - <translation>%1: Datagramme trop grand</translation> + <translation>%1 : Datagramme trop grand</translation> </message> <message> <source>%1: Connection error</source> - <translation>%1: Erreur de connexion</translation> + <translation>%1 : Erreur de connexion</translation> </message> <message> <source>%1: The socket operation is not supported</source> - <translation>%1: L'opération n'est pas supportée</translation> + <translation>%1 : L'opération n'est pas supportée</translation> </message> <message> <source>%1: Unknown error</source> @@ -3756,7 +3797,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>%1: Unknown error %2</source> - <translation>%1: Erreur inconnue %2</translation> + <translation>%1 : Erreur inconnue %2</translation> </message> </context> <context> @@ -3932,10 +3973,6 @@ Voulez-vous quand même le supprimer ?</translation> <source>The file could not be accessed.</source> <translation>Impossible d'accéder au fichier.</translation> </message> - <message> - <source>Playlist format is not supported.</source> - <translation></translation> - </message> </context> <context> <name>QMenu</name> @@ -3956,7 +3993,7 @@ Voulez-vous quand même le supprimer ?</translation> <name>QMenuBar</name> <message> <source>About</source> - <translation type="obsolete">A propos</translation> + <translation type="obsolete">À propos</translation> </message> <message> <source>Config</source> @@ -3988,7 +4025,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>About %1</source> - <translation type="obsolete">A propos de %1</translation> + <translation type="obsolete">À propos de %1</translation> </message> <message> <source>About Qt</source> @@ -4027,7 +4064,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qtopia Core.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com/</a> for more information.</p></source> - <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'applications multi-platformes.</p><p>Qt fournit la portabilité du code source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et toutes les variantes commerciales majeures d'Unix. Qt est aussi disponible pour les systèmes embarqués sous le nom Qtopia Core.</p><p>Qt est un produit de Trolltech. <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></translation> + <translation type="obsolete"><h3>À propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'applications multi-platformes.</p><p>Qt fournit la portabilité du code source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et toutes les variantes commerciales majeures d'Unix. Qt est aussi disponible pour les systèmes embarqués sous le nom Qtopia Core.</p><p>Qt est un produit de Trolltech. <a href="http : //qt.nokia.com/">qt.nokia.com</a> for more information.</p></translation> </message> <message> <source>Show Details...</source> @@ -4039,19 +4076,19 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source><h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation type="obsolete"><h3>À propos de Qt</h3><p>Ce programme utilise Qt version %1.</p><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés tels que Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> + <translation type="obsolete"><h3>À propos de Qt</h3><p>Ce programme utilise Qt version %1.</p><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés comme Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http : //qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http : //qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> </message> <message> <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un framework de développement d'applications multi-plateforme.</p><p>Qt fournit la portabilité du code source surMS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, et toutes les variantes majeures d'Unix. Qt est aussi disponible pour l'embarqué avec Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt est un produit de Nokia. Allez à <a href="http://qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> + <translation type="obsolete"><h3>À propos de Qt</h3>%1<p>Qt est un framework de développement d'applications multi-plateforme.</p><p>Qt fournit la portabilité du code source surMS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, et toutes les variantes majeures d'Unix. Qt est aussi disponible pour l'embarqué avec Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt est un produit de Nokia. Allez à <a href="http : //qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> </message> <message> <source><p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> for an overview of Qt licensing.</p></source> - <translation type="obsolete"><p>Ce programme utilise Qt Open Source Edition version %1.</p><p>Qt Open Source Edition est prévu pour le développement d'applications Open Source. Vous devez avoir un license commerciale de Qt pour développer des applications propiétaires (Closed Source).</p><p>Vous pouvez aller sur <a href="http://qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> pour plus d'informations sur les licenses Qt.</p></translation> + <translation type="obsolete"><p>Ce programme utilise Qt Open Source Edition version %1.</p><p>Qt Open Source Edition est prévu pour le développement d'applications Open Source. Vous devez avoir un license commerciale de Qt pour développer des applications propiétaires (Closed Source).</p><p>Vous pouvez aller sur <a href="http : //qt.nokia.com/company/model/">qt.nokia.com/company/model/</a> pour plus d'informations sur les licenses Qt.</p></translation> </message> <message> <source><h3>About Qt</h3>%1<p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt Embedded.</p><p>Qt is a Trolltech product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation type="obsolete"><h3>A propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'application multi-plateforme.</p><p>Qt fournit la portabilité de votre source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, toutes les variantes majeures d'Unix. Qt est aussi disponible pour les périphériques embarqués avec Qt Embedded.</p><p>Qt est un produit de Trolltech. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> + <translation type="obsolete"><h3>À propos de Qt</h3>%1<p>Qt est un toolkit C++ pour le développement d'application multi-plateforme.</p><p>Qt fournit la portabilité de votre source pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, toutes les variantes majeures d'Unix. Qt est aussi disponible pour les périphériques embarqués avec Qt Embedded.</p><p>Qt est un produit de Trolltech. Voir <a href="http : //qt.nokia.com/">qt.nokia.com</a> pour plus d'informations.</p></translation> </message> <message> <source><h3>About Qt</h3><p>This program uses Qt version %1.</p></source> @@ -4059,7 +4096,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> - <translation><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés tels que Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http://qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> + <translation><p>Qt est une bibliothèque logicielle C++ pour le développement d’applications multiplateformes.</p><p>Qt fournit une portabilité source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d’Unix. Qt est également disponible pour appareils intégrés comme Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence différentes conçues pour s’adapter aux besoins d’utilisateurs variés.</p><p>Qt concédée sous notre contrat de licence commerciale est destinée au développement de logiciels propriétaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concédée sous la LGPL GNU version 2.1 est destinée au développement d’applications Qt (propriétaires ou libres) à condition que vous vous conformiez aux conditions générales de la LGPL GNU version 2.1.</p><p>Qt concédée sous la licence publique générale GNU version 3.0 est destinée au développement d’applications Qt lorsque vous souhaitez utiliser ces applications avec d’autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http : //qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperçu des concessions de licences Qt.</p><p>Copyright (C) 2010 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http : //qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p></translation> </message> </context> <context> @@ -4112,7 +4149,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Permission denied</source> - <translation>Accès refusé</translation> + <translation>Autorisation refusée</translation> </message> <message> <source>Connection timed out</source> @@ -4209,7 +4246,7 @@ Voulez-vous quand même le supprimer ?</translation> <name>QNetworkAccessDebugPipeBackend</name> <message> <source>Write error writing to %1: %2</source> - <translation>Erreur lors de l'écriture dans %1: %2</translation> + <translation>Erreur lors de l'écriture dans %1 : %2</translation> </message> <message> <source>Socket error on %1: %2</source> @@ -4284,7 +4321,7 @@ Voulez-vous quand même le supprimer ?</translation> <name>QNetworkReply</name> <message> <source>Error downloading %1 - server replied: %2</source> - <translation>Erreur lors du téléchargement de %1 - le serveur a répondu: %2</translation> + <translation>Erreur lors du téléchargement de %1 - le serveur a répondu : %2</translation> </message> <message> <source>Protocol "%1" is unknown</source> @@ -4450,7 +4487,7 @@ Voulez-vous quand même le supprimer ?</translation> <name>QODBCResult</name> <message> <source>QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration</source> - <translation>QODBCResult::reset: Impossible d'utiliser 'SQL_CURSOR_STATIC' comme attribut de requête. Veuillez vérifier la configuration de votre pilote ODBC</translation> + <translation>QODBCResult::reset : Impossible d'utiliser 'SQL_CURSOR_STATIC' comme attribut de requête. Veuillez vérifier la configuration de votre pilote ODBC</translation> </message> <message> <source>Unable to execute statement</source> @@ -4517,7 +4554,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Protocol error: packet of size 0 received</source> - <translation type="obsolete">Erreur de protocole: paquet de taille 0 reçu</translation> + <translation type="obsolete">Erreur de protocole : paquet de taille 0 reçu</translation> </message> <message> <source>No host name given</source> @@ -4525,7 +4562,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Invalid hostname</source> - <translation type="obsolete">Nom d'hôte non valide</translation> + <translation type="obsolete">Nom d'hôte invalide</translation> </message> <message> <source>PulseAudio Sound Server</source> @@ -4617,19 +4654,19 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Page size:</source> - <translation>Dimensions :</translation> + <translation>Dimensions : </translation> </message> <message> <source>Width:</source> - <translation>Largeur :</translation> + <translation>Largeur : </translation> </message> <message> <source>Height:</source> - <translation>Hauteur :</translation> + <translation>Hauteur : </translation> </message> <message> <source>Paper source:</source> - <translation>Source du papier :</translation> + <translation>Source du papier : </translation> </message> <message> <source>Orientation</source> @@ -4719,7 +4756,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Number of copies:</source> - <translation type="obsolete">Nombre de copies :</translation> + <translation type="obsolete">Nombre de copies : </translation> </message> <message> <source>Paper format</source> @@ -4867,15 +4904,15 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Page size:</source> - <translation type="obsolete">Dimensions :</translation> + <translation type="obsolete">Dimensions : </translation> </message> <message> <source>Orientation:</source> - <translation type="obsolete">Orientation :</translation> + <translation type="obsolete">Orientation : </translation> </message> <message> <source>Paper source:</source> - <translation type="obsolete">Source du papier :</translation> + <translation type="obsolete">Source du papier : </translation> </message> <message> <source>Print</source> @@ -4899,7 +4936,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Size:</source> - <translation type="obsolete">Taille :</translation> + <translation type="obsolete">Taille : </translation> </message> <message> <source>Properties</source> @@ -4907,7 +4944,7 @@ Voulez-vous quand même le supprimer ?</translation> </message> <message> <source>Printer info:</source> - <translation type="obsolete">Informations sur l'imprimante :</translation> + <translation type="obsolete">Informations sur l'imprimante : </translation> </message> <message> <source>Browse</source> @@ -5281,7 +5318,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Copies:</source> - <translation>Copies :</translation> + <translation>Copies : </translation> </message> <message> <source>Collate</source> @@ -5340,7 +5377,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>&Name:</source> - <translation>&Nom :</translation> + <translation>&Nom : </translation> </message> <message> <source>P&roperties</source> @@ -5348,7 +5385,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Location:</source> - <translation>Emplacement :</translation> + <translation>Emplacement : </translation> </message> <message> <source>Preview</source> @@ -5356,11 +5393,11 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Type:</source> - <translation>Type :</translation> + <translation>Type : </translation> </message> <message> <source>Output &file:</source> - <translation>&Fichier de sortie:</translation> + <translation>&Fichier de sortie : </translation> </message> <message> <source>...</source> @@ -5407,7 +5444,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Process failed to start: %1</source> - <translation>Le démarrage du processus a échoué: %1</translation> + <translation>Le démarrage du processus a échoué : %1</translation> </message> </context> <context> @@ -5471,11 +5508,11 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>invalid interval</source> - <translation>intervalle non valide</translation> + <translation>intervalle invalide</translation> </message> <message> <source>invalid category</source> - <translation>catégorie non valide</translation> + <translation>catégorie invalide</translation> </message> </context> <context> @@ -5586,15 +5623,15 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Ignore-count</source> - <translation>Comptes d'ignorés</translation> + <translation>Nombre d'ignorés</translation> </message> <message> <source>Single-shot</source> - <translation>Un seul tir</translation> + <translation>Un seul coup</translation> </message> <message> <source>Hit-count</source> - <translation>Compte de coups</translation> + <translation>Nombre de coups</translation> </message> </context> <context> @@ -5616,7 +5653,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Line:</source> - <translation>Ligne:</translation> + <translation>Ligne : </translation> </message> <message> <source>Interrupt</source> @@ -5747,7 +5784,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped</source> - <translation><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;La recherche est revenue au début</translation> + <translation><img src=" : /qt/scripttools/debugging/images/wrap.png">&nbsp;La recherche est revenue au début</translation> </message> </context> <context> @@ -5773,7 +5810,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Location</source> - <translation>Lieu</translation> + <translation>Emplacement</translation> </message> </context> <context> @@ -5792,7 +5829,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Breakpoint Condition:</source> - <translation>Condition du point d'arrêt:</translation> + <translation>Condition du point d'arrêt : </translation> </message> </context> <context> @@ -5807,7 +5844,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Stack</source> - <translation>Empiler</translation> + <translation>Pile</translation> </message> <message> <source>Locals</source> @@ -5853,7 +5890,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Left edge</source> - <translation>Extrême gauche</translation> + <translation>Bord gauche</translation> </message> <message> <source>Top</source> @@ -5861,7 +5898,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Right edge</source> - <translation>Extrême droite</translation> + <translation>Bord droit</translation> </message> <message> <source>Bottom</source> @@ -5988,11 +6025,11 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>%1: doesn't exist</source> - <translation>%1: n'existe pas</translation> + <translation>%1 : n'existe pas</translation> </message> <message> <source>%1: UNIX key file doesn't exist</source> - <translation>%1: le fichier de clés UNIX n'existe pas</translation> + <translation>%1 : le fichier de clés UNIX n'existe pas</translation> </message> </context> <context> @@ -7100,7 +7137,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Unable to decrypt data: %1</source> - <translation>Impossible de décrypter les données: %1</translation> + <translation>Impossible de décrypter les données : %1</translation> </message> <message> <source>Private key does not certify public key, %1</source> @@ -7136,11 +7173,11 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>The certificate's notBefore field contains an invalid time</source> - <translation>Le champ pasAvant du certificat inclut une heure non valide</translation> + <translation>Le champ pasAvant du certificat inclut une heure invalide</translation> </message> <message> <source>The certificate's notAfter field contains an invalid time</source> - <translation>Le champ pasAprès du certificat inclut une heure non valide</translation> + <translation>Le champ pasAprès du certificat inclut une heure invalide</translation> </message> <message> <source>The certificate is self-signed, and untrusted</source> @@ -7222,11 +7259,11 @@ Veuillez choisir un nom de fichier différent.</translation> <name>QSystemSemaphore</name> <message> <source>%1: out of resources</source> - <translation>%1: plus de ressources disponibles</translation> + <translation>%1 : plus de ressources disponibles</translation> </message> <message> <source>%1: permission denied</source> - <translation>%1: permission refusée</translation> + <translation>%1 : permission refusée</translation> </message> <message> <source>%1: already exists</source> @@ -7238,7 +7275,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>%1: unknown error %2</source> - <translation>%1: erreur inconnue %2</translation> + <translation>%1 : erreur inconnue %2</translation> </message> </context> <context> @@ -7694,7 +7731,7 @@ Veuillez choisir un nom de fichier différent.</translation> <message> <source>Slider</source> <comment>Media controller element</comment> - <translation>Barre de défilement</translation> + <translation>Slider</translation> </message> <message> <source>Slider Thumb</source> @@ -7906,7 +7943,7 @@ Veuillez choisir un nom de fichier différent.</translation> <message> <source>This is a searchable index. Enter search keywords: </source> <comment>text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'</comment> - <translation>Ceci est un index. Veuillez saisir les mots-clé :</translation> + <translation>Ceci est un index. Veuillez saisir les mots-clé : </translation> </message> <message> <source>Scroll here</source> @@ -8438,7 +8475,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>This is a searchable index. Enter search keywords: </source> - <translation type="obsolete">Ceci est un index. Veuillez saisir les mots-clé :</translation> + <translation type="obsolete">Ceci est un index. Veuillez saisir les mots-clé : </translation> </message> <message> <source>JavaScript Problem - %1</source> @@ -8446,7 +8483,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>The script on this page appears to have a problem. Do you want to stop the script?</source> - <translation>Le script de cette page semble avoir un problème. Souhaitez-vous arrêter le script?</translation> + <translation>Le script de cette page semble avoir un problème. Souhaitez-vous arrêter le script ?</translation> </message> <message> <source>Paste and Match Style</source> @@ -8630,161 +8667,161 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>error triggered by consumer</source> - <translation type="unfinished">Erreur déclenchée par le consommateur</translation> + <translation>Erreur déclenchée par le consommateur</translation> </message> <message> <source>unexpected end of file</source> - <translation type="unfinished">Fin de fichier inattendue</translation> + <translation>Fin de fichier inattendue</translation> </message> <message> <source>more than one document type definition</source> - <translation type="unfinished">plus d'une définition de type de docuement</translation> + <translation>plus d'une définition de type de document</translation> </message> <message> <source>error occurred while parsing element</source> - <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique de l'élement</translation> + <translation>une erreur s'est produite pendant l'analyse syntaxique de l'élement</translation> </message> <message> <source>tag mismatch</source> - <translation type="unfinished">tag incongru</translation> + <translation>tag incongru</translation> </message> <message> <source>error occurred while parsing content</source> - <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique du contenu</translation> + <translation>une erreur s'est produite pendant l'analyse syntaxique du contenu</translation> </message> <message> <source>unexpected character</source> - <translation type="unfinished">caractère inattendu</translation> + <translation>caractère inattendu</translation> </message> <message> <source>invalid name for processing instruction</source> - <translation type="unfinished">nom d'instruction invalide</translation> + <translation>nom d'instruction invalide</translation> </message> <message> <source>version expected while reading the XML declaration</source> - <translation type="unfinished">Une version est attendue dans la déclaration XML</translation> + <translation>une version est attendue dans la déclaration XML</translation> </message> <message> <source>wrong value for standalone declaration</source> - <translation type="unfinished">Valeur incorrecte pour une déclaration autonome</translation> + <translation>valeur incorrecte pour une déclaration "standalone"</translation> </message> <message> <source>error occurred while parsing document type definition</source> - <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique de la définition du type de document</translation> + <translation>une erreur s'est produite pendant l'analyse syntaxique de la définition du type de document</translation> </message> <message> <source>letter is expected</source> - <translation type="unfinished">une lettre est attendue</translation> + <translation>une lettre est attendue</translation> </message> <message> <source>error occurred while parsing comment</source> - <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique du commentaire</translation> + <translation>une erreur s'est produite pendant l'analyse syntaxique du commentaire</translation> </message> <message> <source>error occurred while parsing reference</source> - <translation type="unfinished">une erreur s'est produite pendant l'analyse syntaxique d'une référence</translation> + <translation>une erreur s'est produite pendant l'analyse syntaxique d'une référence</translation> </message> <message> <source>internal general entity reference not allowed in DTD</source> - <translation type="unfinished"></translation> + <translation>référence à une entité générale interne non autorisée dans la DTD</translation> </message> <message> <source>external parsed general entity reference not allowed in attribute value</source> - <translation type="unfinished"></translation> + <translation>référence à une entité générale externe non autorisée dans la valeur d'attribut</translation> </message> <message> <source>external parsed general entity reference not allowed in DTD</source> - <translation type="unfinished"></translation> + <translation>référence à une entité générale externe non autorisée dans le DTD</translation> </message> <message> <source>unparsed entity reference in wrong context</source> - <translation type="unfinished"></translation> + <translation>référence à une entité non analysée dans le mauvais contexte</translation> </message> <message> <source>recursive entities</source> - <translation type="unfinished"></translation> + <translation>entités récursives</translation> </message> <message> <source>error in the text declaration of an external entity</source> - <translation type="unfinished"></translation> + <translation>erreur dans la déclaration texte d'une entité externe</translation> </message> <message> <source>encoding declaration or standalone declaration expected while reading the XML declaration</source> - <translation type="unfinished"></translation> + <translation>déclaration d'encodage ou déclaration "standalone" attendue lors de la lecture de la déclaration XML</translation> </message> <message> <source>standalone declaration expected while reading the XML declaration</source> - <translation type="unfinished"></translation> + <translation>déclaration "standalone" attendue lors de la lecture de la déclaration XML</translation> </message> </context> <context> <name>QXmlPatternistCLI</name> <message> <source>Warning in %1, at line %2, column %3: %4</source> - <translation>Avertissement dans %1, à la ligne %2, colonne %3: %4</translation> + <translation>Avertissement dans %1, à la ligne %2, colonne %3 : %4</translation> </message> <message> <source>Warning in %1: %2</source> - <translation>Avertissement dans %1: %2</translation> + <translation>Avertissement dans %1 : %2</translation> </message> <message> - <source>Unknown location</source> + <source></source> <translation>Lieu inconnu</translation> </message> <message> <source>Error %1 in %2, at line %3, column %4: %5</source> - <translation>Erreur %1 dans %2, à la ligne %3, colonne %4: %5</translation> + <translation>Erreur %1 dans %2, à la ligne %3, colonne %4 : %5</translation> </message> <message> <source>Error %1 in %2: %3</source> - <translation>Erreur %1 dans %2: %3</translation> + <translation>Erreur %1 dans %2 : %3</translation> </message> </context> <context> <name>QXmlStream</name> <message> <source>Extra content at end of document.</source> - <translation type="unfinished"></translation> + <translation>Contenu superflu à la fin du document.</translation> </message> <message> <source>Invalid entity value.</source> - <translation type="unfinished"></translation> + <translation>Valeur de l'entité invalide.</translation> </message> <message> <source>Invalid XML character.</source> - <translation type="unfinished"></translation> + <translation>Caractère XML invalide.</translation> </message> <message> <source>Sequence ']]>' not allowed in content.</source> - <translation type="unfinished"></translation> + <translation>séquence ']]>' non autorisée dans le contenu.</translation> </message> <message> <source>Namespace prefix '%1' not declared</source> - <translation type="unfinished"></translation> + <translation>Le préfixe d'espace de noms %1 n'a pas été déclaré</translation> </message> <message> <source>Attribute redefined.</source> - <translation type="unfinished"></translation> + <translation>Redéfinition d'attribut.</translation> </message> <message> <source>Unexpected character '%1' in public id literal.</source> - <translation type="unfinished"></translation> + <translation>Caractère '%1' inattendu pour une valeur d'identifiant public.</translation> </message> <message> <source>Invalid XML version string.</source> - <translation type="unfinished"></translation> + <translation>Chaîne de version XML invalide.</translation> </message> <message> <source>Unsupported XML version.</source> - <translation type="unfinished"></translation> + <translation>Version XML non supportée.</translation> </message> <message> <source>%1 is an invalid encoding name.</source> - <translation type="unfinished"></translation> + <translation>%1 n'est pas un nom d'encodage valide.</translation> </message> <message> <source>Encoding %1 is unsupported</source> - <translation type="unfinished"></translation> + <translation>%1 n'est pas un encodage supporté</translation> </message> <message> <source>Invalid XML encoding name.</source> @@ -8792,99 +8829,99 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Standalone accepts only yes or no.</source> - <translation type="unfinished"></translation> + <translation>Le seules valeurs possibles pour "standalone" sont "yes" ou "no".</translation> </message> <message> <source>Invalid attribute in XML declaration.</source> - <translation type="unfinished"></translation> + <translation>Attribut invalide dans une déclaration XML.</translation> </message> <message> <source>Premature end of document.</source> - <translation type="unfinished"></translation> + <translation>Fin de document inattendue.</translation> </message> <message> <source>Invalid document.</source> - <translation type="unfinished"></translation> + <translation>Document invalide.</translation> </message> <message> <source>Expected </source> - <translation type="unfinished"></translation> + <translation>Attendu(e)</translation> </message> <message> <source>, but got '</source> - <translation type="unfinished"></translation> + <translation>, mais trouvé '</translation> </message> <message> <source>Unexpected '</source> - <translation type="unfinished"></translation> + <translation>Inattendu(e)</translation> </message> <message> <source>Expected character data.</source> - <translation type="unfinished"></translation> + <translation>données texte attendues.</translation> </message> <message> <source>Recursive entity detected.</source> - <translation type="unfinished"></translation> + <translation>Entité récursive détectée.</translation> </message> <message> <source>Start tag expected.</source> - <translation type="unfinished"></translation> + <translation>Tag de départ attendu.</translation> </message> <message> <source>XML declaration not at start of document.</source> - <translation type="unfinished"></translation> + <translation>La déclaration XML doit être en début de document.</translation> </message> <message> <source>NDATA in parameter entity declaration.</source> - <translation type="unfinished"></translation> + <translation>NDATA dans une déclaration de paramètre d'entité.</translation> </message> <message> <source>%1 is an invalid processing instruction name.</source> - <translation type="unfinished"></translation> + <translation>%1 n'est pas un nom d'instruction valide.</translation> </message> <message> <source>Invalid processing instruction name.</source> - <translation type="unfinished"></translation> + <translation>nom d'instruction invalide.</translation> </message> <message> <source>Illegal namespace declaration.</source> - <translation type="unfinished"></translation> + <translation>Déclaration d'espace de noms non autorisée.</translation> </message> <message> <source>Invalid XML name.</source> - <translation type="unfinished"></translation> + <translation>Nom XML invalide.</translation> </message> <message> <source>Opening and ending tag mismatch.</source> - <translation type="unfinished"></translation> + <translation>Tags ouvrant et fermants ne correspondent pas.</translation> </message> <message> <source>Reference to unparsed entity '%1'.</source> - <translation type="unfinished"></translation> + <translation>Référence à l'entité '%1' non analysée.</translation> </message> <message> <source>Entity '%1' not declared.</source> - <translation type="unfinished"></translation> + <translation>Entité '%1' non déclarée.</translation> </message> <message> <source>Reference to external entity '%1' in attribute value.</source> - <translation type="unfinished"></translation> + <translation>Référence à l'entité externe '%1' en valeur d'attribut.</translation> </message> <message> <source>Invalid character reference.</source> - <translation type="unfinished"></translation> + <translation>Référence à un caractère invalide.</translation> </message> <message> <source>Encountered incorrectly encoded content.</source> - <translation type="unfinished"></translation> + <translation>Du contenu avec un encodage incorrect a été rencontré.</translation> </message> <message> <source>The standalone pseudo attribute must appear after the encoding.</source> - <translation type="unfinished"></translation> + <translation>Le pseudo-attribut "standalone" doit apparaître après l'encodage.</translation> </message> <message> <source>%1 is an invalid PUBLIC identifier.</source> - <translation type="unfinished"></translation> + <translation>%1 n'est pas un identifiant "PUBLIC" valide.</translation> </message> </context> <context> @@ -8923,7 +8960,7 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Overflow: Can't represent date %1.</source> - <translation>Overflow: ne peut pas représenter la date %1.</translation> + <translation>Overflow : impossible de représenter la date %1.</translation> </message> <message> <source>Day %1 is invalid for month %2.</source> @@ -8931,11 +8968,11 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; </source> - <translation>L'heure 24:%1:%2.%3 est invalide. L'heure est 24 mais les minutes, seconndes et millisecondes ne sont pas à 0;</translation> + <translation>Heure 24 : %1 : %2.%3 est invalide. L'heure est 24 mais les minutes, secondes et millisecondes ne sont pas à 0;</translation> </message> <message> <source>Time %1:%2:%3.%4 is invalid.</source> - <translation>L'heure %1:%2:%3.%4 est invalide.</translation> + <translation>L'heure %1 : %2 : %3.%4 est invalide.</translation> </message> <message> <source>Overflow: Date can't be represented.</source> @@ -9197,11 +9234,11 @@ Veuillez choisir un nom de fichier différent.</translation> </message> <message> <source>%1 is an invalid regular expression pattern: %2</source> - <translation>%1 est un modèle d'expression régulière invalide: %2</translation> + <translation>%1 est un modèle d'expression régulière invalide : %2</translation> </message> <message> <source>%1 is an invalid flag for regular expressions. Valid flags are:</source> - <translation>%1 est un flag invalide pour des expressions régulières. Les flags valides sont :</translation> + <translation>%1 est un flag invalide pour des expressions régulières. Les flags valides sont : </translation> </message> <message> <source>If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified.</source> @@ -9604,16 +9641,12 @@ Veuillez choisir un nom de fichier différent.</translation> <translation>L'URI ne peut pas avoir de fragments</translation> </message> <message> - <source>Element %1 is not allowed at this location.</source> + <source></source> <translation>L'élément %1 n'est pas autorisé à cet emplacement.</translation> </message> <message> - <source>Text nodes are not allowed at this location.</source> - <translation>Les noeuds de texte ne sont pas autorisés à cet emplacement.</translation> - </message> - <message> <source>Parse error: %1</source> - <translation>Erreur: %1</translation> + <translation>Erreur : %1</translation> </message> <message> <source>The value of the XSL-T version attribute must be a value of type %1, which %2 isn't.</source> diff --git a/translations/qt_help_fr.ts b/translations/qt_help_fr.ts index f0cabc2..62bfccc 100644 --- a/translations/qt_help_fr.ts +++ b/translations/qt_help_fr.ts @@ -4,87 +4,116 @@ <context> <name>QCLuceneResultWidget</name> <message> + <location filename="../tools/assistant/lib/qhelpsearchresultwidget.cpp" line="+110"/> <source>Search Results</source> <translation>Résultats de la recherche</translation> </message> <message> + <location line="+7"/> <source>Note:</source> <translation>Note :</translation> </message> <message> + <location line="+1"/> <source>The search results may not be complete since the documentation is still being indexed!</source> <translation>Les résultats de la recherche risquent d'être incomplets car l'indexation de la documentation est en cours !</translation> </message> <message> + <location line="+11"/> <source>Your search did not match any documents.</source> <translation>Votre recherche ne correspond à aucun document.</translation> </message> <message> + <location line="+4"/> <source>(The reason for this might be that the documentation is still being indexed.)</source> <translation>(Il est possible que cela soit dû au fait que la documentation est en cours d'indexation.)</translation> </message> </context> <context> + <name>QHelp</name> + <message> + <location filename="../tools/assistant/lib/qhelp_global.cpp" line="+64"/> + <source>Untitled</source> + <translation>Sans titre</translation> + </message> +</context> +<context> <name>QHelpCollectionHandler</name> <message> + <location filename="../tools/assistant/lib/qhelpcollectionhandler.cpp" line="+79"/> <source>The collection file '%1' is not set up yet!</source> <translation>Le fichier de collection '%1' n'est pas encore chargé !</translation> </message> <message> + <location line="+23"/> <source>Cannot load sqlite database driver!</source> <translatorcomment>driver ?</translatorcomment> <translation>Chargement du pilote de base de données sqlite impossible !</translation> </message> <message> + <location line="+11"/> + <location line="+52"/> <source>Cannot open collection file: %1</source> <translatorcomment>collection ?</translatorcomment> <translation>Impossible d'ouvrir le fichier collection : %1</translation> </message> <message> + <location line="-40"/> <source>Cannot create tables in file %1!</source> <translation>Impossible de créer les tables dans le fichier : %1 !</translation> </message> <message> + <location line="+16"/> <source>The collection file '%1' already exists!</source> <translation>Le fichier collection '%1' existe déjà !</translation> </message> <message> + <location line="+6"/> <source>Cannot create directory: %1</source> <translation>Impossible de créer le répertoire : %1</translation> </message> <message> + <location line="+26"/> <source>Cannot copy collection file: %1</source> <translation>Impossible de copier le fichier collection : %1</translation> </message> <message> + <location line="+119"/> <source>Unknown filter '%1'!</source> <translation>Filtre '%1' inconnu !</translation> </message> <message> + <location line="+53"/> <source>Cannot register filter %1!</source> <translation>Impossible d'enregistrer le filtre %1 !</translation> </message> <message> + <location line="+44"/> <source>Cannot open documentation file %1!</source> <translation>Impossible d'ouvrir le fichier de documentation %1 !</translation> </message> <message> + <location line="+6"/> <source>Invalid documentation file '%1'!</source> <translation>Fichier de documentation invalide : '%1' !</translation> </message> <message> + <location line="+34"/> <source>The namespace %1 was not registered!</source> <translation>L'espace de noms '%1' n'était pas référencé !</translation> </message> <message> + <location line="+120"/> <source>Namespace %1 already exists!</source> <translation>L'espace de noms %1 existe déjà !</translation> </message> <message> + <location line="+13"/> <source>Cannot register namespace '%1'!</source> <translation>Impossible d'enregistrer l'espace de noms '%1' !</translation> </message> <message> + <location line="+24"/> <source>Cannot open database '%1' to optimize!</source> <translation>Impossible d'ouvrir la base de données à optimiser '%1' !</translation> </message> @@ -92,6 +121,7 @@ <context> <name>QHelpDBReader</name> <message> + <location filename="../tools/assistant/lib/qhelpdbreader.cpp" line="+98"/> <source>Cannot open database '%1' '%2': %3</source> <extracomment>The placeholders are: %1 - The name of the database which cannot be opened %2 - The unique id for the connection %3 - The actual error string</extracomment> <translation>Impossible d'ouvrir la base de données '%1' '%2' : %3</translation> @@ -100,10 +130,12 @@ <context> <name>QHelpEngineCore</name> <message> + <location filename="../tools/assistant/lib/qhelpenginecore.cpp" line="+122"/> <source>Cannot open documentation file %1: %2!</source> <translation>Impossible d'ouvrir le fichier de documentation %1 : %2 !</translation> </message> <message> + <location line="+404"/> <source>The specified namespace does not exist!</source> <translation>L'espace de noms spécifié n'existe pas !</translation> </message> @@ -118,107 +150,133 @@ <context> <name>QHelpGenerator</name> <message> + <location filename="../tools/assistant/lib/qhelpgenerator.cpp" line="+158"/> <source>Invalid help data!</source> <translation>Données d'aide invalides !</translation> </message> <message> + <location line="+6"/> <source>No output file name specified!</source> <translation>Aucun nom de fichier de sortie spécifié !</translation> </message> <message> + <location line="+7"/> <source>The file %1 cannot be overwritten!</source> <translation>Le fichier %1 ne peut être écrasé !</translation> </message> <message> + <location line="+7"/> <source>Building up file structure...</source> - <translation>Construction de la structure de fichiers en cours…</translation> + <translation>Construction de la structure de fichiers en cours...</translation> </message> <message> + <location line="+11"/> <source>Cannot open data base file %1!</source> <translation>Impossible d'ouvrir le fichier de base de données %1 !</translation> </message> <message> + <location line="+14"/> <source>Cannot register namespace %1!</source> <translation>Impossible d'enregistrer l'espace de noms %1 !</translation> </message> <message> + <location line="+6"/> <source>Insert custom filters...</source> - <translation>Insértion des filtres personnalisés…</translation> + <translation>Insértion des filtres personnalisés...</translation> </message> <message> + <location line="+12"/> <source>Insert help data for filter section (%1 of %2)...</source> <translatorcomment>???</translatorcomment> - <translation>Insertion des données d'aide pour la section filtre (%1 de %2)…</translation> + <translation>Insertion des données d'aide pour la section filtre (%1 de %2)...</translation> </message> <message> + <location line="+18"/> <source>Documentation successfully generated.</source> <translation>Documentation générée avec succès.</translation> </message> <message> + <location line="+76"/> <source>Some tables already exist!</source> <translation>Certaines tables existent déjà !</translation> </message> <message> + <location line="+61"/> <source>Cannot create tables!</source> <translation>Impossible de créer les tables !</translation> </message> <message> + <location line="+86"/> <source>Cannot register virtual folder!</source> <translation>Impossible d'enregistrer le dossier virtuel !</translation> </message> <message> + <location line="+10"/> <source>Insert files...</source> <translation>Insertion des fichiers...</translation> </message> <message> + <location line="+42"/> <source>The referenced file %1 must be inside or within a subdirectory of (%2). Skipping it.</source> <translation>Le fichier référencé %1 doit être dans le dossier (%2) ou un de ses sous-dossiers. Fichier non pris en compte.</translation> </message> <message> + <location line="+7"/> <source>The file %1 does not exist! Skipping it.</source> <translation>Le fichier %1 n'existe pas ! Fichier non pris en compte.</translation> </message> <message> + <location line="+6"/> <source>Cannot open file %1! Skipping it.</source> <translation>Impossible d'ouvrir le fichier %1 ! Fichier non pris en compte.</translation> </message> <message> + <location line="+133"/> <source>The filter %1 is already registered!</source> <translation>Le filtre %1 est déjà enregistré !</translation> </message> <message> + <location line="+5"/> <source>Cannot register filter %1!</source> <translation>Impossible d'enregistrer le filtre %1 !</translation> </message> <message> + <location line="+24"/> <source>Insert indices...</source> - <translation>Insertion des index…</translation> + <translation>Insertion des index...</translation> </message> <message> + <location line="+91"/> <source>Insert contents...</source> - <translation>insertion du contenu…</translation> + <translation>insertion du contenu...</translation> </message> <message> + <location line="+8"/> <source>Cannot insert contents!</source> <translation>Impossible d'insérer le contenu !</translation> </message> <message> + <location line="+12"/> <source>Cannot register contents!</source> <translation>Impossible de référencer le contenu !</translation> </message> <message> + <location line="+56"/> <source>File '%1' does not exist.</source> <translation>Le fichier '%1' n'existe pas.</translation> </message> <message> + <location line="+19"/> <source>File '%1' cannot be opened.</source> <translation>Le fichier '%1' ne peut être ouvert.</translation> </message> <message> + <location line="+19"/> <source>File '%1' contains an invalid link to file '%2'</source> <translation>Le fichier '%1' contient un lien invalide vers le fichier '%2'</translation> </message> <message> + <location line="+9"/> <source>Invalid links in HTML files.</source> <translation>Liens invalides dans les fichiers HTML.</translation> </message> @@ -226,38 +284,47 @@ <context> <name>QHelpProject</name> <message> + <location filename="../tools/assistant/lib/qhelpprojectdata.cpp" line="+88"/> <source>Unknown token.</source> <translation>Identificateur inconnu.</translation> </message> <message> + <location line="+13"/> <source>Unknown token. Expected "QtHelpProject"!</source> <translation>Identificateur inconnu. "QtHelpProject" attendu !</translation> </message> <message> + <location line="+6"/> <source>Error in line %1: %2</source> <translation>Erreur à la ligne %1 : %2</translation> </message> <message> + <location line="+14"/> <source>Virtual folder has invalid syntax.</source> <translation>Syntaxe invalide pour le dossier virtuel.</translation> </message> <message> + <location line="+5"/> <source>Namespace has invalid syntax.</source> <translation>Syntaxe invalide pour l'espace de noms.</translation> </message> <message> + <location line="+19"/> <source>Missing namespace in QtHelpProject.</source> <translation>Espace de noms manquant dans QtHelpProject.</translation> </message> <message> + <location line="+3"/> <source>Missing virtual folder in QtHelpProject</source> <translation>Dossier virtuel manquant dans QtHelpProject</translation> </message> <message> + <location line="+89"/> <source>Missing attribute in keyword at line %1.</source> <translation>Attribut manquant pour le mot clé à la ligne %1.</translation> </message> <message> + <location line="+143"/> <source>The input file %1 could not be opened!</source> <translation>Le fichier source %1 n'a pas pu être ouvert !</translation> </message> @@ -265,42 +332,52 @@ <context> <name>QHelpSearchQueryWidget</name> <message> + <location filename="../tools/assistant/lib/qhelpsearchquerywidget.cpp" line="+124"/> <source>Search for:</source> <translation>Rechercher :</translation> </message> <message> + <location line="+1"/> <source>Previous search</source> <translation>Recherche précédente</translation> </message> <message> + <location line="+1"/> <source>Next search</source> <translation>Recherche suivante</translation> </message> <message> + <location line="+1"/> <source>Search</source> <translation>Recherche</translation> </message> <message> + <location line="+2"/> <source>Advanced search</source> <translation>Recherche avancée</translation> </message> <message> + <location line="+1"/> <source>words <B>similar</B> to:</source> <translation>mots <B>semblables</B> à :</translation> </message> <message> + <location line="+1"/> <source><B>without</B> the words:</source> <translation><B>sans</B> les mots :</translation> </message> <message> + <location line="+1"/> <source>with <B>exact phrase</B>:</source> <translation>avec la <B>phrase exacte</B> :</translation> </message> <message> + <location line="+1"/> <source>with <B>all</B> of the words:</source> <translation>avec <B>tous</B> les mots :</translation> </message> <message> + <location line="+1"/> <source>with <B>at least one</B> of the words:</source> <translation>avec <B>au moins un</B> des mots :</translation> </message> @@ -308,6 +385,7 @@ <context> <name>QHelpSearchResultWidget</name> <message numerus="yes"> + <location filename="../tools/assistant/lib/qhelpsearchresultwidget.cpp" line="+174"/> <source>%1 - %2 of %n Hits</source> <translation> <numerusform>%1 - %2 de %n résultat</numerusform> @@ -315,6 +393,7 @@ </translation> </message> <message> + <location line="+61"/> <source>0 - 0 of 0 Hits</source> <translation>0 - 0 de 0 résultats</translation> </message> -- cgit v0.12 From ab3ce23e3b5e28389b9f6f9bd5bc69cd42fcae5d Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Fri, 6 Aug 2010 17:07:51 +0200 Subject: Modified descriptions of QBasicTimer class and isActive() function. Reviewed by: David Boddie Task: QTBUG-12313 --- src/corelib/kernel/qbasictimer.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/corelib/kernel/qbasictimer.cpp b/src/corelib/kernel/qbasictimer.cpp index d176170..d595ac1 100644 --- a/src/corelib/kernel/qbasictimer.cpp +++ b/src/corelib/kernel/qbasictimer.cpp @@ -54,7 +54,8 @@ QT_BEGIN_NAMESPACE This is a fast, lightweight, and low-level class used by Qt internally. We recommend using the higher-level QTimer class rather than this class if you want to use timers in your - applications. + applications. Note that this timer is a repeating timer that + will send subsequent timer events unless the stop() function is called. To use this class, create a QBasicTimer, and call its start() function with a timeout interval and with a pointer to a QObject @@ -88,8 +89,8 @@ QT_BEGIN_NAMESPACE /*! \fn bool QBasicTimer::isActive() const - Returns true if the timer is running, has not yet timed - out, and has not been stopped; otherwise returns false. + Returns true if the timer is running and has not been stopped; otherwise + returns false. \sa start() stop() */ -- cgit v0.12 From 6eb7a210eed1b392431fc913d13d205b8ccc1933 Mon Sep 17 00:00:00 2001 From: Shane Kearns <shane.kearns@accenture.com> Date: Fri, 6 Aug 2010 16:25:15 +0100 Subject: Fixes for combining multiple Qt::ImhXXXOnly with S60 FEP When one restriction is a superset of another (e.g. ImhDigitsOnly | ImhDialableCharactersOnly), the less restrictive one is used When two restrictions are incompatible (e.g. ImhDialableCharactersOnly | ImhFormattedNumbersOnly), fall back to allowing all symbols Note for some combinations additional characters not in the union can be entered, this is a limitation of the API to AVKON FEP. Before this change, some characters in the union could not be entered at all, which is worse. Tested on I8510 (3.2), 5800XM (5.0), N8(symbian^3) Task Number: QTBUG-12726 Reviewed-by: Alessandro Portale --- src/gui/inputmethod/qcoefepinputcontext_s60.cpp | 52 ++++++++++++++----------- 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp index ae51b1c..44fe7da 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp +++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp @@ -359,10 +359,10 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) commitTemporaryPreeditString(); - bool numbersOnly = (hints & ImhDigitsOnly) || (hints & ImhFormattedNumbersOnly) - || (hints & ImhDialableCharactersOnly); - bool noOnlys = !(numbersOnly || (hints & ImhUppercaseOnly) - || (hints & ImhLowercaseOnly)); + const bool anynumbermodes = hints & (ImhDigitsOnly | ImhFormattedNumbersOnly | ImhDialableCharactersOnly); + const bool anytextmodes = hints & (ImhUppercaseOnly | ImhLowercaseOnly | ImhEmailCharactersOnly | ImhUrlCharactersOnly); + const bool numbersOnly = anynumbermodes && !anytextmodes; + const bool noOnlys = !(hints & ImhExclusiveInputMask); TInt flags; Qt::InputMethodHints oldHints = hints; @@ -374,8 +374,7 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) } if (!noOnlys) { // Make sure that the preference is within the permitted set. - if (hints & ImhPreferNumbers && !(hints & ImhDigitsOnly || hints & ImhFormattedNumbersOnly - || hints & ImhDialableCharactersOnly)) { + if (hints & ImhPreferNumbers && !anynumbermodes) { hints &= ~ImhPreferNumbers; } else if (hints & ImhPreferUppercase && !(hints & ImhUppercaseOnly)) { hints &= ~ImhPreferUppercase; @@ -402,18 +401,21 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) m_fepState->SetCurrentInputMode(EAknEditorTextInputMode); } flags = 0; - if (numbersOnly) { - flags |= EAknEditorNumericInputMode; + if (noOnlys || (anynumbermodes && anytextmodes)) { + flags = EAknEditorAllInputModes; } - if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 - && ((hints & ImhFormattedNumbersOnly) || (hints & ImhDialableCharactersOnly))) { - //workaround - the * key does not launch the symbols menu, making it impossible to use these modes unless text mode is enabled. - flags |= EAknEditorTextInputMode; + else if (anynumbermodes) { + flags |= EAknEditorNumericInputMode; + if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 + && ((hints & ImhFormattedNumbersOnly) || (hints & ImhDialableCharactersOnly))) { + //workaround - the * key does not launch the symbols menu, making it impossible to use these modes unless text mode is enabled. + flags |= EAknEditorTextInputMode; + } } - if (hints & ImhUppercaseOnly || hints & ImhLowercaseOnly) { + else if (anytextmodes) { flags |= EAknEditorTextInputMode; } - if (flags == 0) { + else { flags = EAknEditorAllInputModes; } m_fepState->SetPermittedInputModes(flags); @@ -460,27 +462,33 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints) if (hints & ImhNoPredictiveText || hints & ImhHiddenText) { flags |= EAknEditorFlagNoT9; } - // if alphanumeric input, then make all symbols available in numeric mode too. - if (!numbersOnly) + // if alphanumeric input, or if multiple incompatible number modes are selected; + // then make all symbols available in numeric mode too. + if (!numbersOnly || ((hints & ImhFormattedNumbersOnly) && (hints & ImhDialableCharactersOnly))) flags |= EAknEditorFlagUseSCTNumericCharmap; m_fepState->SetFlags(flags); ReportAknEdStateEvent(MAknEdStateObserver::EAknEdwinStateFlagsUpdate); - if (hints & ImhFormattedNumbersOnly) { + if (hints & ImhDialableCharactersOnly) { + // This is first, because if (ImhDialableCharactersOnly | ImhFormattedNumbersOnly) + // is specified, this one is more natural (# key enters a #) + flags = EAknEditorStandardNumberModeKeymap; + } else if (hints & ImhFormattedNumbersOnly) { + // # key enters decimal point flags = EAknEditorCalculatorNumberModeKeymap; } else if (hints & ImhDigitsOnly) { + // This is last, because it is most restrictive (# key is inactive) flags = EAknEditorPlainNumberModeKeymap; } else { - // ImhDialableCharactersOnly is the fallback as well, so we don't need to check for - // that flag. flags = EAknEditorStandardNumberModeKeymap; } m_fepState->SetNumericKeymap(static_cast<TAknEditorNumericKeymap>(flags)); - if (hints & ImhEmailCharactersOnly) { - m_fepState->SetSpecialCharacterTableResourceId(R_AVKON_EMAIL_ADDR_SPECIAL_CHARACTER_TABLE_DIALOG); - } else if (hints & ImhUrlCharactersOnly) { + if (hints & ImhUrlCharactersOnly) { + // URL characters is everything except space, so a superset of the other restrictions m_fepState->SetSpecialCharacterTableResourceId(R_AVKON_URL_SPECIAL_CHARACTER_TABLE_DIALOG); + } else if (hints & ImhEmailCharactersOnly) { + m_fepState->SetSpecialCharacterTableResourceId(R_AVKON_EMAIL_ADDR_SPECIAL_CHARACTER_TABLE_DIALOG); } else { m_fepState->SetSpecialCharacterTableResourceId(R_AVKON_SPECIAL_CHARACTER_TABLE_DIALOG); } -- cgit v0.12 From 1b0f790d27cda48137c7114fadc694432a104c90 Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Fri, 6 Aug 2010 17:48:28 +0200 Subject: QSharedPointer documentation: specify that it is not safe to operate on the same object in different threads Task-number: QTBUG-12700 Reviewed-by: thiago --- src/corelib/tools/qsharedpointer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/tools/qsharedpointer.cpp b/src/corelib/tools/qsharedpointer.cpp index f102598..5fac960 100644 --- a/src/corelib/tools/qsharedpointer.cpp +++ b/src/corelib/tools/qsharedpointer.cpp @@ -67,8 +67,8 @@ QSharedPointer and QWeakPointer are thread-safe and operate atomically on the pointer value. Different threads can also access - the same QSharedPointer or QWeakPointer object at the same time - without need for locking mechanisms. + the QSharedPointer or QWeakPointer pointing to the same object at + the same time without need for locking mechanisms. It should be noted that, while the pointer value can be accessed in this manner, QSharedPointer and QWeakPointer provide no -- cgit v0.12 From d81ab877bc4424d918c400af3f65509f80f22f67 Mon Sep 17 00:00:00 2001 From: Benjamin Poulain <benjamin.poulain@nokia.com> Date: Thu, 5 Aug 2010 14:45:49 +0200 Subject: Move the build of Neon file from painting.pri to gui.pro Move the build operation of files using Neon from painting.pri to gui.pro. This will make easier to add Neon files in the future. Reviewed-by: Andreas Kling --- src/gui/gui.pro | 18 ++++++++++++++++++ src/gui/painting/painting.pri | 21 +++------------------ 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/src/gui/gui.pro b/src/gui/gui.pro index 28440cc..89ae06f 100644 --- a/src/gui/gui.pro +++ b/src/gui/gui.pro @@ -77,6 +77,24 @@ symbian { DEPLOYMENT = partial_upgrade $$DEPLOYMENT } +neon: QMAKE_CXXFLAGS *= -mfpu=neon +neon:*-g++* { + HEADERS += $$NEON_HEADERS + SOURCES += $$NEON_SOURCES + + DRAWHELPER_NEON_ASM_FILES = $$NEON_ASM + + neon_compiler.commands = $$QMAKE_CXX -c + neon_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} + neon_compiler.dependency_type = TYPE_C + neon_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)} + neon_compiler.input = DRAWHELPER_NEON_ASM_FILES + neon_compiler.variable_out = OBJECTS + neon_compiler.name = compiling[neon] ${QMAKE_FILE_IN} + silent:neon_compiler.commands = @echo compiling[neon] ${QMAKE_FILE_IN} && $$neon_compiler.commands + QMAKE_EXTRA_COMPILERS += neon_compiler +} + contains(QMAKE_MAC_XARCH, no) { DEFINES += QT_NO_MAC_XARCH } else { diff --git a/src/gui/painting/painting.pri b/src/gui/painting/painting.pri index 4023f65..dfa4a48 100644 --- a/src/gui/painting/painting.pri +++ b/src/gui/painting/painting.pri @@ -246,23 +246,8 @@ symbian { QMAKE_CXXFLAGS.ARMCC *= -O3 } -neon:*-g++* { - DEFINES += QT_HAVE_NEON - HEADERS += painting/qdrawhelper_neon_p.h - SOURCES += painting/qdrawhelper_neon.cpp - QMAKE_CXXFLAGS *= -mfpu=neon - - DRAWHELPER_NEON_ASM_FILES = ../3rdparty/pixman/pixman-arm-neon-asm.S painting/qdrawhelper_neon_asm.S - - neon_compiler.commands = $$QMAKE_CXX -c - neon_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} - neon_compiler.dependency_type = TYPE_C - neon_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)} - neon_compiler.input = DRAWHELPER_NEON_ASM_FILES - neon_compiler.variable_out = OBJECTS - neon_compiler.name = compiling[neon] ${QMAKE_FILE_IN} - silent:neon_compiler.commands = @echo compiling[neon] ${QMAKE_FILE_IN} && $$neon_compiler.commands - QMAKE_EXTRA_COMPILERS += neon_compiler -} +NEON_SOURCES += painting/qdrawhelper_neon.cpp +NEON_HEADERS += painting/qdrawhelper_neon_p.h +NEON_ASM += ../3rdparty/pixman/pixman-arm-neon-asm.S painting/qdrawhelper_neon_asm.S include($$PWD/../../3rdparty/zlib_dependency.pri) -- cgit v0.12 From a0f155cdaf641d92acc8b61be89b96319d16ccba Mon Sep 17 00:00:00 2001 From: Benjamin Poulain <benjamin.poulain@nokia.com> Date: Thu, 5 Aug 2010 14:47:54 +0200 Subject: Do the conversion from RGB888 to RGB32 using Neon Doing the conversion with Neon is 700% faster. Help by Thiago Macieira on vacation. Reviewed-by: Thiago Macieira --- src/gui/image/image.pri | 1 + src/gui/image/qimage.cpp | 8 +++ src/gui/image/qimage_neon.cpp | 114 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 123 insertions(+) create mode 100644 src/gui/image/qimage_neon.cpp diff --git a/src/gui/image/image.pri b/src/gui/image/image.pri index b20a04f..f89706c 100644 --- a/src/gui/image/image.pri +++ b/src/gui/image/image.pri @@ -94,5 +94,6 @@ contains(QT_CONFIG, tiff):include($$PWD/qtiffhandler.pri) contains(QT_CONFIG, gif):include($$PWD/qgifhandler.pri) # SIMD +NEON_SOURCES += image/qimage_neon.cpp SSE2_SOURCES += image/qimage_sse2.cpp SSSE3_SOURCES += image/qimage_ssse3.cpp diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp index cb834c0..ac148ee 100644 --- a/src/gui/image/qimage.cpp +++ b/src/gui/image/qimage.cpp @@ -3769,6 +3769,14 @@ void qInitImageConversions() converter_map[QImage::Format_RGB888][QImage::Format_ARGB32_Premultiplied] = convert_RGB888_to_RGB32_ssse3; } #endif +#ifdef QT_HAVE_NEON + if (features & NEON) { + extern void convert_RGB888_to_RGB32_neon(QImageData *dest, const QImageData *src, Qt::ImageConversionFlags); + converter_map[QImage::Format_RGB888][QImage::Format_RGB32] = convert_RGB888_to_RGB32_neon; + converter_map[QImage::Format_RGB888][QImage::Format_ARGB32] = convert_RGB888_to_RGB32_neon; + converter_map[QImage::Format_RGB888][QImage::Format_ARGB32_Premultiplied] = convert_RGB888_to_RGB32_neon; + } +#endif } /*! diff --git a/src/gui/image/qimage_neon.cpp b/src/gui/image/qimage_neon.cpp new file mode 100644 index 0000000..15bf472 --- /dev/null +++ b/src/gui/image/qimage_neon.cpp @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, 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. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <qimage.h> +#include <private/qimage_p.h> +#include <private/qsimd_p.h> + +#ifdef QT_HAVE_NEON + +QT_BEGIN_NAMESPACE + +Q_GUI_EXPORT void QT_FASTCALL qt_convert_rgb888_to_rgb32_neon(quint32 *dst, const uchar *src, int len) +{ + if (!len) + return; + + const quint32 *const end = dst + len; + + // align dst on 64 bits + const int offsetToAlignOn8Bytes = (reinterpret_cast<quintptr>(dst) >> 2) & 0x1; + for (int i = 0; i < offsetToAlignOn8Bytes; ++i) { + *dst++ = qRgb(src[0], src[1], src[2]); + src += 3; + } + + if ((len - offsetToAlignOn8Bytes) >= 8) { + const quint32 *const simdEnd = end - 7; + register uint8x8_t fullVector asm ("d3") = vdup_n_u8(0xff); + do { +#if Q_BYTE_ORDER == Q_BIG_ENDIAN + asm volatile ( + "vld3.8 { d4, d5, d6 }, [%[SRC]] !\n\t" + "vst4.8 { d3, d4, d5, d6 }, [%[DST],:64] !\n\t" + : [DST]"+r" (dst), [SRC]"+r" (src) + : "w"(fullVector) + : "memory", "d4", "d5", "d6" + ); +#else + asm volatile ( + "vld3.8 { d0, d1, d2 }, [%[SRC]] !\n\t" + "vswp d0, d2\n\t" + "vst4.8 { d0, d1, d2, d3 }, [%[DST],:64] !\n\t" + : [DST]"+r" (dst), [SRC]"+r" (src) + : "w"(fullVector) + : "memory", "d0", "d1", "d2" + ); +#endif + } while (dst < simdEnd); + } + + while (dst != end) { + *dst++ = qRgb(src[0], src[1], src[2]); + src += 3; + } +} + +void convert_RGB888_to_RGB32_neon(QImageData *dest, const QImageData *src, Qt::ImageConversionFlags) +{ + Q_ASSERT(src->format == QImage::Format_RGB888); + Q_ASSERT(dest->format == QImage::Format_RGB32 || dest->format == QImage::Format_ARGB32 || dest->format == QImage::Format_ARGB32_Premultiplied); + Q_ASSERT(src->width == dest->width); + Q_ASSERT(src->height == dest->height); + + const uchar *src_data = (uchar *) src->data; + quint32 *dest_data = (quint32 *) dest->data; + + for (int i = 0; i < src->height; ++i) { + qt_convert_rgb888_to_rgb32_neon(dest_data, src_data, src->width); + src_data += src->bytes_per_line; + dest_data = (quint32 *)((uchar*)dest_data + dest->bytes_per_line); + } +} + +QT_END_NAMESPACE + +#endif // QT_HAVE_NEON -- cgit v0.12 From 296cf92e1047409a203294e81fb388cc6a0e5c85 Mon Sep 17 00:00:00 2001 From: Benjamin Poulain <benjamin.poulain@nokia.com> Date: Fri, 6 Aug 2010 15:50:38 +0200 Subject: Use the fast Neon conversion for converting colors of jpeg images. Reviewed-by: Andreas Kling --- src/gui/image/qjpeghandler.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/gui/image/qjpeghandler.cpp b/src/gui/image/qjpeghandler.cpp index d358a5e..eda5efb 100644 --- a/src/gui/image/qjpeghandler.cpp +++ b/src/gui/image/qjpeghandler.cpp @@ -803,9 +803,16 @@ bool QJpegHandlerPrivate::read(QImage *image) QJpegHandler::QJpegHandler() : d(new QJpegHandlerPrivate(this)) { -#if defined(QT_HAVE_SSSE3) const uint features = qDetectCPUFeatures(); - + Q_UNUSED(features); +#if defined(QT_HAVE_NEON) + // from qimage_neon.cpp + Q_GUI_EXPORT void QT_FASTCALL qt_convert_rgb888_to_rgb32_neon(quint32 *dst, const uchar *src, int len); + + if (features & NEON) + rgb888ToRgb32ConverterPtr = qt_convert_rgb888_to_rgb32_neon; +#endif // QT_HAVE_NEON +#if defined(QT_HAVE_SSSE3) // from qimage_ssse3.cpp Q_GUI_EXPORT void QT_FASTCALL qt_convert_rgb888_to_rgb32_ssse3(quint32 *dst, const uchar *src, int len); -- cgit v0.12 From c45516f1f3781dcb504158f730b98897c7f2f2a1 Mon Sep 17 00:00:00 2001 From: Benjamin Poulain <benjamin.poulain@nokia.com> Date: Fri, 6 Aug 2010 15:52:37 +0200 Subject: Remove the definition of QT_HAVE_NEON from qt.prf Since we cannot use NEON and VFP concurrently, it is better not to force neon all over the place :) Reviewed-by: Andreas Kling Reviewed-by: Thiago Macieira --- mkspecs/features/qt.prf | 1 - src/corelib/corelib.pro | 5 ++++- src/gui/gui.pro | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf index aa0f06e..84010a0 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -211,7 +211,6 @@ mac { } #SIMD defines: -neon: DEFINES += QT_HAVE_NEON mmx:DEFINES += QT_HAVE_MMX 3dnow:DEFINES += QT_HAVE_3DNOW sse:DEFINES += QT_HAVE_SSE QT_HAVE_MMXEXT diff --git a/src/corelib/corelib.pro b/src/corelib/corelib.pro index bc8ef9f..728bdf9 100644 --- a/src/corelib/corelib.pro +++ b/src/corelib/corelib.pro @@ -53,6 +53,9 @@ symbian: { DEPLOYMENT = partial_upgrade $$DEPLOYMENT } -neon: QMAKE_CXXFLAGS *= -mfpu=neon +neon { + DEFINES += QT_HAVE_NEON + QMAKE_CXXFLAGS *= -mfpu=neon +} diff --git a/src/gui/gui.pro b/src/gui/gui.pro index 89ae06f..3943e26 100644 --- a/src/gui/gui.pro +++ b/src/gui/gui.pro @@ -77,8 +77,9 @@ symbian { DEPLOYMENT = partial_upgrade $$DEPLOYMENT } -neon: QMAKE_CXXFLAGS *= -mfpu=neon neon:*-g++* { + DEFINES += QT_HAVE_NEON + QMAKE_CXXFLAGS *= -mfpu=neon HEADERS += $$NEON_HEADERS SOURCES += $$NEON_SOURCES -- cgit v0.12 From 44d5bcde1713a5f51b7140259e9fd4e426a868a8 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Mon, 9 Aug 2010 16:11:30 +1000 Subject: PathView required some diagonal movement before a drag was initiated. Any movement beyond the threshold is sufficient. Task-number: 12747 Reviewed-by: Joona Petrell --- src/declarative/graphicsitems/qdeclarativepathview.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp index 06ac275..5771f84 100644 --- a/src/declarative/graphicsitems/qdeclarativepathview.cpp +++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp @@ -1061,7 +1061,7 @@ void QDeclarativePathView::mouseMoveEvent(QGraphicsSceneMouseEvent *event) if (!d->stealMouse) { QPointF delta = event->pos() - d->startPoint; - if (qAbs(delta.x()) > QApplication::startDragDistance() && qAbs(delta.y()) > QApplication::startDragDistance()) + if (qAbs(delta.x()) > QApplication::startDragDistance() || qAbs(delta.y()) > QApplication::startDragDistance()) d->stealMouse = true; } -- cgit v0.12 From 8c4de17eb643af324a13b16d20c301772183022b Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 10:58:23 +1000 Subject: Explain Flipable example further --- src/declarative/graphicsitems/qdeclarativeflipable.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativeflipable.cpp b/src/declarative/graphicsitems/qdeclarativeflipable.cpp index 8c9d2dd..b266273 100644 --- a/src/declarative/graphicsitems/qdeclarativeflipable.cpp +++ b/src/declarative/graphicsitems/qdeclarativeflipable.cpp @@ -83,10 +83,16 @@ public: \image flipable.gif - The \l Rotation element is used to specify the angle and axis of the flip, - and the \l State defines the changes in angle which produce the flipping - effect. Finally, the \l Transition creates the animation that changes the - angle over one second. + The \l Rotation element is used to specify the angle and axis of the flip. + When \c flipped is \c true, the item changes to the "back" state, where + the angle is changed to 180 degrees to produce the flipping effect. + Finally, the \l Transition creates the animation that changes the + angle over one second: when the item changes between its "back" and + default states, the NumberAnimation animates the angle between + its old and new values. + + See the \l {QML States} and \l {QML Animation} documentation for more + details on state changes and how animations work within transitions. \sa {declarative/ui-components/flipable}{Flipable example} */ -- cgit v0.12 From 983882f68a8f7463aa4adf6d379fd4ef5dd4f915 Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 10:58:43 +1000 Subject: Merge sections about when property and default state --- doc/src/declarative/qdeclarativestates.qdoc | 95 ++++++++++++++++++----------- 1 file changed, 59 insertions(+), 36 deletions(-) diff --git a/doc/src/declarative/qdeclarativestates.qdoc b/doc/src/declarative/qdeclarativestates.qdoc index 0b91756..274040a 100644 --- a/doc/src/declarative/qdeclarativestates.qdoc +++ b/doc/src/declarative/qdeclarativestates.qdoc @@ -84,18 +84,34 @@ Rectangle. \snippet doc/src/snippets/declarative/states.qml 0 -A \l State item defines all the changes to be made in the new state. You +The \l State item defines all the changes to be made in the new state. It could specify additional properties to be changed, or create additional -PropertyChanges for other objects. (Note that a \l State can modify the -properties of other objects, not just the object that owns the state.) +PropertyChanges for other objects. It can also modify the properties of other +objects, not just the object that owns the state. For example: -For example: +\qml +Rectangle { + ... + states: [ + State { + name: "moved" + PropertyChanges { target: myRect; x: 50; y: 50; color: "blue" } + PropertyChanges { target: someOtherItem; width: 1000 } + } + ] +} +\endqml + +As a convenience, if an item only has one state, its \l {Item::}{states} +property can be defined as a single \l State, without the square-brace list +syntax: \qml -State { - name: "moved" - PropertyChanges { target: myRect; x: 50; y: 50; color: "blue" } - PropertyChanges { target: someOtherItem; width: 1000 } +Item { + ... + states: State { + ... + } } \endqml @@ -118,54 +134,61 @@ transitions between them. Of course, the \l Rectangle in the example above could have simply been moved by setting its position to (50, 50) in the mouse area's \c onClicked handler. -However, aside from enabling batched property changes, the use of states allows -an item to revert to its \e {default state}, which contains all of the items' -initial property values before they were modified in a state change. +However, aside from enabling batched property changes, one of the features of +QML states is the ability of an item to revert to its \e {default state}. +The default state contains all of an item's initial property values before +they were modified in a state change. -The default state is specified by an empty string. If the MouseArea in the -above example was changed to this: +For example, suppose the \l Rectangle should move to (50,50) when the mouse is +pressed, and then move back to its original position when the mouse is +released. This can be achieved by using the \l {State::}{when} property, +like this: -\qml -MouseArea { - anchors.fill: parent - onClicked: myRect.state == 'moved' ? myRect.state = "" : myRect.state = 'moved'; -} -\endqml - -This would toggle the \l Rectangle's state between the \e moved and \e default -states when clicked. The properties can be reverted to their initial -values without requiring the definition of another \l State that defines these -value changes. +\qml +Rectangle { + ... + MouseArea { + id: mouseArea + anchors.fill: parent + } + states: State { + name: "moved"; when: mouseArea.pressed + ... + } +} +\endqml -\section1 The "when" property +The \l {State::}{when} property is set to an expression that evaluates to +\c true when the item should be set to that state. When the mouse is pressed, +the state is changed to \e moved. When it is released, the item reverts to its +\e default state, which defines all of the item's original property values. -The \l {State::}{when} property is useful for specifying when a state should be -applied. This can be set to an expression that evaluates to \c true when an -item should change to a particular state. +Alternatively, an item can be explicitly set to its default state by setting its +\l {Item::}{state} property to an empty string (""). For example, instead of +using the \l {State::}{when} property, the above code could be changed to: -If the above example was changed to this: - \qml Rectangle { ... MouseArea { - id: mouseArea anchors.fill: parent + onPressed: myRect.state = 'moved'; + onReleased: myRect.state = ''; } states: State { - name: "moved"; when: mouseArea.pressed + name: "moved" ... } +} \endqml -The \l Rectangle would automatically change to the \e moved state when the -mouse is pressed, and revert to the default state when it is released. This is -simpler (and a better, more declarative method) than creating \c onPressed -and \c onReleased handlers in the MouseArea to set the current state. +Obviously it makes sense to use the \l {State::}{when} property when possible +as it provides a simpler (and a better, more declarative) solution than +assigning the state from signal handlers. \section1 Animating state changes -- cgit v0.12 From db91a8849bbe9581d096aa486708b9a655fc092f Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 11:10:22 +1000 Subject: Mention QML_IMPORT_TRACE in Modules docs --- doc/src/declarative/modules.qdoc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/doc/src/declarative/modules.qdoc b/doc/src/declarative/modules.qdoc index 9e51a40..467b7d0 100644 --- a/doc/src/declarative/modules.qdoc +++ b/doc/src/declarative/modules.qdoc @@ -302,5 +302,13 @@ For examples of \c qmldir files for plugins, see the \l {declarative/cppextensions/plugins}{Plugins} example and \l {Tutorial: Writing QML extensions with C++}. + +\section1 Debugging + +The \c QML_IMPORT_TRACE environment variable can be useful for debugging +when there are problems with finding and loading modules. See +\l{Debugging module imports} for more information. + + */ / -- cgit v0.12 From 0d060e71a5a03f21df5b2edbb4f6de1e928b9ada Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 17:08:23 +1000 Subject: XmlListModel doc fixes Task-number: QTBUG-12749 --- src/declarative/util/qdeclarativexmllistmodel.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/declarative/util/qdeclarativexmllistmodel.cpp b/src/declarative/util/qdeclarativexmllistmodel.cpp index 7c1e1fd..8bd829e 100644 --- a/src/declarative/util/qdeclarativexmllistmodel.cpp +++ b/src/declarative/util/qdeclarativexmllistmodel.cpp @@ -560,7 +560,7 @@ void QDeclarativeXmlListModelPrivate::clear_role(QDeclarativeListProperty<QDecla ListView { width: 180; height: 300 model: xmlModel - delegate: Text { text: title + " (" + pubDate + ")" } + delegate: Text { text: title + ": " + pubDate } } \endqml @@ -855,6 +855,12 @@ qreal QDeclarativeXmlListModel::progress() const return d->progress; } +/*! + \qmlmethod void XmlListModel::errorString() + + Returns a string description of the last error that occurred + if \l status is XmlListModel::Error. +*/ QString QDeclarativeXmlListModel::errorString() const { Q_D(const QDeclarativeXmlListModel); -- cgit v0.12 From 7ee7f19502bfd9193c624045bed07bdfdb23d1df Mon Sep 17 00:00:00 2001 From: Friedemann Kleint <Friedemann.Kleint@nokia.com> Date: Mon, 9 Aug 2010 09:17:27 +0200 Subject: I18N: Update German translations for 4.7.0. --- translations/assistant_de.ts | 345 +++--- translations/designer_de.ts | 1380 +--------------------- translations/linguist_de.ts | 438 +------ translations/qt_de.ts | 2666 +----------------------------------------- translations/qt_help_de.ts | 78 +- 5 files changed, 278 insertions(+), 4629 deletions(-) diff --git a/translations/assistant_de.ts b/translations/assistant_de.ts index bfafc71..0f4d0d6 100644 --- a/translations/assistant_de.ts +++ b/translations/assistant_de.ts @@ -4,7 +4,6 @@ <context> <name>AboutDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/aboutdialog.cpp" line="+117"/> <source>&Close</source> <translation>&Schließen</translation> </message> @@ -12,19 +11,16 @@ <context> <name>AboutLabel</name> <message> - <location line="-15"/> <source>Warning</source> <translation>Achtung</translation> </message> <message> - <location line="+1"/> <source>Unable to launch external application. </source> <translation>Fehler beim Starten der externen Anwendung. </translation> </message> <message> - <location line="+0"/> <source>OK</source> <translation>OK</translation> </message> @@ -32,17 +28,14 @@ <context> <name>Assistant</name> <message> - <location filename="../tools/assistant/tools/assistant/main.cpp" line="+177"/> <source>Error registering documentation file '%1': %2</source> <translation>Beim Registrieren der Dokumentationsdatei '%1' trat ein Fehler auf: %2</translation> </message> <message> - <location line="+39"/> <source>Error: %1</source> <translation>Fehler: %1</translation> </message> <message> - <location line="+42"/> <source>Could not register documentation file %1 @@ -54,12 +47,10 @@ Grund: %2</translation> </message> <message> - <location line="+6"/> <source>Documentation successfully registered.</source> <translation>Dokumentation erfolgreich registriert.</translation> </message> <message> - <location line="+12"/> <source>Could not unregister documentation file %1 @@ -71,27 +62,22 @@ Grund: %2</translation> </message> <message> - <location line="+8"/> <source>Documentation successfully unregistered.</source> <translation>Dokumentation erfolgreich entfernt.</translation> </message> <message> - <location line="+55"/> <source>Error reading collection file '%1': %2.</source> <translation>Fehler beim Lesen der Katalogdatei '%1': %2</translation> </message> <message> - <location line="+11"/> <source>Error creating collection file '%1': %2.</source> <translation>Fehler beim Erstellen der Katalogdatei '%1': %2.</translation> </message> <message> - <location line="+7"/> <source>Error reading collection file '%1': %2</source> <translation>Fehler beim Lesen der Katalogdatei '%1': %2</translation> </message> <message> - <location line="+53"/> <source>Cannot load sqlite database driver!</source> <translation>Der Datenbanktreiber für SQLite kann nicht geladen werden.</translation> </message> @@ -99,139 +85,229 @@ Grund: <context> <name>BookmarkDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/bookmarkdialog.ui"/> <source>Add Bookmark</source> <translation>Lesezeichen hinzufügen</translation> </message> <message> - <location/> <source>Bookmark:</source> <translation>Lesezeichen:</translation> </message> <message> - <location/> <source>Add in Folder:</source> <translation>Erstellen in:</translation> </message> <message> - <location/> <source>New Folder</source> <translation>Neuer Ordner</translation> </message> <message> - <location/> <source>+</source> <translation>+</translation> </message> + <message> + <source>Rename Folder</source> + <translation>Ordner umbenennen</translation> + </message> </context> <context> <name>BookmarkManager</name> <message> - <location filename="../tools/assistant/tools/assistant/bookmarkmanager.cpp" line="+151"/> <source>Untitled</source> <translation>Ohne Titel</translation> </message> <message> - <location line="+65"/> <source>Remove</source> <translation>Entfernen</translation> </message> <message> - <location line="+1"/> <source>You are going to delete a Folder, this will also<br>remove it's content. Are you sure to continue?</source> <translation>Wenn Sie diesen Ordner löschen, wird auch<br>dessen kompletter Inhalt gelöscht. Möchten Sie wirklich fortfahren?</translation> </message> <message> - <location line="+147"/> <source>Manage Bookmarks...</source> <translation>Lesezeichen verwalten...</translation> </message> <message> - <location line="+3"/> <source>Add Bookmark...</source> <translation>Lesezeichen hinzufügen ...</translation> </message> <message> - <location line="+1"/> <source>Ctrl+D</source> <translation>Ctrl+D</translation> </message> <message> - <location line="+68"/> <source>Delete Folder</source> <translation>Ordner löschen</translation> </message> <message> - <location line="+1"/> <source>Rename Folder</source> <translation>Ordner umbenennen</translation> </message> <message> - <location line="+2"/> <source>Show Bookmark</source> <translation>Lesezeichen öffnen</translation> </message> <message> - <location line="+1"/> <source>Show Bookmark in New Tab</source> <translation>Lesezeichen in neuem Reiter öffnen</translation> </message> <message> - <location line="+2"/> <source>Delete Bookmark</source> <translation>Lesezeichen löschen</translation> </message> <message> - <location line="+1"/> <source>Rename Bookmark</source> <translation>Lesezeichen umbenennen</translation> </message> </context> <context> + <name>BookmarkManagerWidget</name> + <message> + <source>Manage Bookmarks</source> + <translation>Lesezeichen verwalten</translation> + </message> + <message> + <source>Search:</source> + <translation>Suche:</translation> + </message> + <message> + <source>Remove</source> + <translation>Entfernen</translation> + </message> + <message> + <source>Import and Backup</source> + <translation>Importieren und Sichern</translation> + </message> + <message> + <source>OK</source> + <translation>OK</translation> + </message> + <message> + <source>Import...</source> + <translation>Importieren...</translation> + </message> + <message> + <source>Export...</source> + <translation>Exportieren...</translation> + </message> + <message> + <source>Open File</source> + <translation>Datei öffnen</translation> + </message> + <message> + <source>Files (*.xbel)</source> + <translation>Dateien (*.xbel)</translation> + </message> + <message> + <source>Save File</source> + <translation>Datei speichern</translation> + </message> + <message> + <source>Qt Assistant</source> + <translation>Qt Assistant</translation> + </message> + <message> + <source>Unable to save bookmarks.</source> + <translation>Die Lesezeichen konnten nicht gespeichert werden.</translation> + </message> + <message> + <source>You are goingto delete a Folder, this will also<br> remove it's content. Are you sure to continue?</source> + <translation>Beim Löschen des Ordners wird auch dessen Inhalt entfernt.<br>Möchten Sie fortsetzen?</translation> + </message> + <message> + <source>Delete Folder</source> + <translation>Ordner löschen</translation> + </message> + <message> + <source>Rename Folder</source> + <translation>Ordner umbenennen</translation> + </message> + <message> + <source>Show Bookmark</source> + <translation>Lesezeichen anzeigen</translation> + </message> + <message> + <source>Show Bookmark in New Tab</source> + <translation>Lesezeichen in neuem Reiter öffnen</translation> + </message> + <message> + <source>Delete Bookmark</source> + <translation>Lesezeichen löschen</translation> + </message> + <message> + <source>Rename Bookmark</source> + <translation>Lesezeichen umbenennen</translation> + </message> +</context> +<context> + <name>BookmarkModel</name> + <message> + <source>Name</source> + <translation>Name</translation> + </message> + <message> + <source>Address</source> + <translation>Adresse</translation> + </message> + <message> + <source>Bookmarks Menu</source> + <translation>Lesezeichen-Menü</translation> + </message> +</context> +<context> + <name>BookmarkWidget</name> + <message> + <source>Bookmarks</source> + <translation>Lesezeichen</translation> + </message> + <message> + <source>Filter:</source> + <translation>Filter:</translation> + </message> + <message> + <source>Add</source> + <translation>Hinzufügen</translation> + </message> + <message> + <source>Remove</source> + <translation>Entfernen</translation> + </message> +</context> +<context> <name>CentralWidget</name> <message> - <location filename="../tools/assistant/tools/assistant/centralwidget.cpp" line="+121"/> <source>Add new page</source> <translation>Neue Seite hinzufügen</translation> </message> <message> - <location line="+9"/> <source>Close current page</source> <translation>Aktuelle Seite schließen</translation> </message> <message> - <location line="+287"/> <source>Print Document</source> <translation>Drucken</translation> </message> <message> - <location line="+126"/> - <location line="+2"/> <source>unknown</source> <translation>unbekannt</translation> </message> <message> - <location line="+100"/> <source>Add New Page</source> <translation>Neue Seite hinzufügen</translation> </message> <message> - <location line="+3"/> <source>Close This Page</source> <translation>Aktuelle Seite schließen</translation> </message> <message> - <location line="+3"/> <source>Close Other Pages</source> <translation>Andere Seiten schließen</translation> </message> <message> - <location line="+5"/> <source>Add Bookmark for this Page...</source> <translation>Lesezeichen für diese Seite hinzufügen ...</translation> </message> <message> - <location line="+264"/> <source>Search</source> <translation>Suchen</translation> </message> @@ -239,62 +315,50 @@ Grund: <context> <name>CmdLineParser</name> <message> - <location filename="../tools/assistant/tools/assistant/cmdlineparser.cpp" line="+137"/> <source>Unknown option: %1</source> <translation>Unbekannte Option: %1</translation> </message> <message> - <location line="+87"/> <source>Unknown widget: %1</source> <translation>Unbekanntes Widget-Objekt: %1</translation> </message> <message> - <location line="-54"/> <source>The collection file '%1' does not exist.</source> <translation>Die Katalogdatei '%1' existiert nicht.</translation> </message> <message> - <location line="+3"/> <source>Missing collection file.</source> <translation>Fehlende Katalogdatei.</translation> </message> <message> - <location line="+13"/> <source>Invalid URL '%1'.</source> <translation>Ungültige URL '%1'.</translation> </message> <message> - <location line="+2"/> <source>Missing URL.</source> <translation>Fehlende URL.</translation> </message> <message> - <location line="+38"/> <source>Missing widget.</source> <translation>Fehlendes Widget-Objekt.</translation> </message> <message> - <location line="+23"/> <source>The Qt help file '%1' does not exist.</source> <translation>Die Hilfedatei '%1' existiert nicht.</translation> </message> <message> - <location line="+4"/> <source>Missing help file.</source> <translation>Fehlende Hilfedatei.</translation> </message> <message> - <location line="+10"/> <source>Missing filter argument.</source> <translation>Das Filter-Argument fehlt.</translation> </message> <message> - <location line="+20"/> <source>Error</source> <translation>Fehler</translation> </message> <message> - <location line="+2"/> <source>Notice</source> <translation>Hinweis</translation> </message> @@ -302,12 +366,10 @@ Grund: <context> <name>ContentWindow</name> <message> - <location filename="../tools/assistant/tools/assistant/contentwindow.cpp" line="+171"/> <source>Open Link</source> <translation>Link öffnen</translation> </message> <message> - <location line="+1"/> <source>Open Link in New Tab</source> <translation>Link in neuem Reiter öffnen</translation> </message> @@ -315,40 +377,52 @@ Grund: <context> <name>FilterNameDialogClass</name> <message> - <location filename="../tools/assistant/tools/assistant/filternamedialog.ui"/> <source>Add Filter Name</source> <translation>Filternamen hinzufügen</translation> </message> <message> - <location/> <source>Filter Name:</source> <translation>Filtername:</translation> </message> </context> <context> + <name>FindWidget</name> + <message> + <source>Previous</source> + <translation>Voriges</translation> + </message> + <message> + <source>Next</source> + <translation>Nächstes</translation> + </message> + <message> + <source>Case Sensitive</source> + <translation>Groß/Kleinschreibung beachten</translation> + </message> + <message> + <source><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Search wrapped</source> + <translation><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Seitenende erreicht</translation> + </message> +</context> +<context> <name>FontPanel</name> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="+63"/> <source>Font</source> <translation>Schriftart</translation> </message> <message> - <location line="+11"/> <source>&Writing system</source> <translation>S&kript</translation> </message> <message> - <location line="+3"/> <source>&Family</source> <translation>&Schriftart</translation> </message> <message> - <location line="+4"/> <source>&Style</source> <translation>S&chriftschnitt</translation> </message> <message> - <location line="+4"/> <source>&Point size</source> <translation>&Schriftgrad</translation> </message> @@ -356,30 +430,37 @@ Grund: <context> <name>HelpViewer</name> <message> - <location filename="../tools/assistant/tools/assistant/helpviewer.cpp" line="+56"/> <source><title>about:blank</title></source> <translation><title>about:blank</title></translation> </message> <message> - <location line="+6"/> <source><title>Error 404...</title><div align="center"><br><br><h1>The page could not be found</h1><br><h3>'%1'</h3></div></source> <translation><title>Fehler 404 ...</title><div align="center"><br><br><h1>Die Seite kann nicht gefunden werden.</h1><br><h3>'%1'</h3></div></translation> </message> + <message> + <source>Copy &Link Location</source> + <translation>&Link-Adresse kopieren</translation> + </message> + <message> + <source>Open Link in New Tab Ctrl+LMB</source> + <translation>Link in neuem Reiter öffnen (Strg + linke Maustaste)</translation> + </message> + <message> + <source>Open Link in New Tab</source> + <translation>Link in neuem Reiter öffnen</translation> + </message> </context> <context> <name>IndexWindow</name> <message> - <location filename="../tools/assistant/tools/assistant/indexwindow.cpp" line="+68"/> <source>&Look for:</source> <translation>Suchen &nach:</translation> </message> <message> - <location line="+74"/> <source>Open Link</source> <translation>Link öffnen</translation> </message> <message> - <location line="+1"/> <source>Open Link in New Tab</source> <translation>Link in neuem Reiter öffnen</translation> </message> @@ -387,99 +468,76 @@ Grund: <context> <name>InstallDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/installdialog.ui"/> - <location filename="../tools/assistant/tools/assistant/installdialog.cpp" line="+78"/> <source>Install Documentation</source> <translation>Dokumentation installieren</translation> </message> <message> - <location filename="../tools/assistant/tools/assistant/installdialog.cpp" line="+33"/> <source>Downloading documentation info...</source> <translation>Dokumentationsinformation herunterladen ...</translation> </message> <message> - <location line="+51"/> <source>Download canceled.</source> <translation>Herunterladen abgebrochen.</translation> </message> <message> - <location line="+28"/> - <location line="+79"/> - <location line="+27"/> <source>Done.</source> <translation>Fertig.</translation> </message> <message> - <location line="-91"/> <source>The file %1 already exists. Do you want to overwrite it?</source> <translation>Die Datei %1 existiert bereits. Möchten Sie sie überschreiben?</translation> </message> <message> - <location line="+11"/> <source>Unable to save the file %1: %2.</source> <translation>Die Datei %1 kann nicht gespeichert werden: %2.</translation> </message> <message> - <location line="+8"/> <source>Downloading %1...</source> <translation>Herunterladen der Datei %1 ...</translation> </message> <message> - <location line="+20"/> - <location line="+42"/> - <location line="+40"/> <source>Download failed: %1.</source> <translation>Herunterladen fehlgeschlagen: %1.</translation> </message> <message> - <location line="-72"/> <source>Documentation info file is corrupt!</source> <translation>Die Dokumentationsdatei ist beschädigt.</translation> </message> <message> - <location line="+37"/> <source>Download failed: Downloaded file is corrupted.</source> <translation>Herunterladen fehlgeschlagen: Die Datei ist wahrscheinlich beschädigt.</translation> </message> <message> - <location line="+2"/> <source>Installing documentation %1...</source> <translation>Dokumentation %1 installieren ...</translation> </message> <message> - <location line="+23"/> <source>Error while installing documentation: %1</source> <translation>Fehler bei der Installation von: %1</translation> </message> <message> - <location filename="../tools/assistant/tools/assistant/installdialog.ui"/> <source>Available Documentation:</source> <translation>Verfügbare Dokumentation:</translation> </message> <message> - <location/> <source>Install</source> <translation>Installieren</translation> </message> <message> - <location/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location/> <source>Installation Path:</source> <translation>Installationsordner:</translation> </message> <message> - <location/> <source>...</source> <translation>...</translation> </message> @@ -487,297 +545,234 @@ Grund: <context> <name>MainWindow</name> <message> - <location filename="../tools/assistant/tools/assistant/mainwindow.cpp" line="+123"/> - <location line="+369"/> <source>Index</source> <translation>Index</translation> </message> <message> - <location line="-363"/> - <location line="+361"/> <source>Contents</source> <translation>Inhalt</translation> </message> <message> - <location line="-354"/> - <location line="+358"/> <source>Bookmarks</source> <translation>Lesezeichen</translation> </message> <message> - <location line="+2"/> <source>Search</source> <translation>Suchen</translation> </message> <message> - <location line="-338"/> - <location line="+680"/> - <location line="+284"/> <source>Qt Assistant</source> <translation>Qt Assistant</translation> </message> <message> - <location line="-705"/> <source>Page Set&up...</source> <translation>S&eite einrichten ...</translation> </message> <message> - <location line="+2"/> <source>Print Preview...</source> <translation>Druckvorschau ...</translation> </message> <message> - <location line="+3"/> <source>&Print...</source> <translation>&Drucken ...</translation> </message> <message> - <location line="-10"/> <source>New &Tab</source> <translation>Neuer &Reiter</translation> </message> <message> - <location line="+17"/> <source>&Close Tab</source> <translation>Reiter &schließen</translation> </message> <message> - <location line="+5"/> <source>&Quit</source> <translation>&Beenden</translation> </message> <message> - <location line="+3"/> <source>CTRL+Q</source> <translation>CTRL+Q</translation> </message> <message> - <location line="+6"/> <source>&Copy selected Text</source> <translation>Ausgewählten Text &kopieren</translation> </message> <message> - <location line="+8"/> <source>&Find in Text...</source> <translation>&Textsuche ...</translation> </message> <message> - <location line="+2"/> <source>&Find</source> <translation>&Suchen</translation> </message> <message> - <location line="+4"/> <source>Find &Next</source> <translation>&Weitersuchen</translation> </message> <message> - <location line="+4"/> <source>Find &Previous</source> <translation>&Vorheriges suchen</translation> </message> <message> - <location line="+5"/> <source>Preferences...</source> <translation>Einstellungen ...</translation> </message> <message> - <location line="+4"/> <source>Zoom &in</source> <translation>&Vergrößern</translation> </message> <message> - <location line="+6"/> <source>Zoom &out</source> <translation>Ver&kleinern</translation> </message> <message> - <location line="+6"/> <source>Normal &Size</source> <translation>Standard&größe</translation> </message> <message> - <location line="+4"/> <source>Ctrl+0</source> <translation>Ctrl+0</translation> </message> <message> - <location line="+5"/> <source>ALT+C</source> <translation>ALT+C</translation> </message> <message> - <location line="+2"/> <source>ALT+I</source> <translation>ALT+I</translation> </message> <message> - <location line="+4"/> <source>ALT+S</source> <translation>ALT+S</translation> </message> <message> - <location line="+3"/> <source>&Home</source> <translation>&Startseite</translation> </message> <message> - <location line="+4"/> <source>&Back</source> <translation>&Rückwärts</translation> </message> <message> - <location line="+5"/> <source>&Forward</source> <translation>&Vorwärts</translation> </message> <message> - <location line="+6"/> <source>Sync with Table of Contents</source> <translation>Seite mit Inhaltsangabe abgleichen</translation> </message> <message> - <location line="+2"/> <source>Sync</source> <translation>Synchronisieren</translation> </message> <message> - <location line="+5"/> <source>Next Page</source> <translation>Nächste Seite</translation> </message> <message> - <location line="+1"/> <source>Ctrl+Alt+Right</source> <translation>Ctrl+Alt+Right</translation> </message> <message> - <location line="+3"/> <source>Previous Page</source> <translation>Vorherige Seite</translation> </message> <message> - <location line="+1"/> <source>Ctrl+Alt+Left</source> <translation>Ctrl+Alt+Left</translation> </message> <message> - <location line="+596"/> <source>Could not register file '%1': %2</source> <translation>Die Datei '%1' konnte nicht registriert werden: %2</translation> </message> <message> - <location line="-589"/> <source>About...</source> <translation>Über ...</translation> </message> <message> - <location line="+21"/> <source>Navigation Toolbar</source> <translation>Navigationsleiste</translation> </message> <message> - <location line="+69"/> <source>Toolbars</source> <translation>Werkzeugleisten</translation> </message> <message> - <location line="+16"/> <source>Filter Toolbar</source> <translation>Filterleiste</translation> </message> <message> - <location line="+2"/> <source>Filtered by:</source> <translation>Filter:</translation> </message> <message> - <location line="+26"/> <source>Address Toolbar</source> <translation>Adressleiste</translation> </message> <message> - <location line="+4"/> <source>Address:</source> <translation>Adresse:</translation> </message> <message> - <location line="+112"/> <source>Could not find the associated content item.</source> <translation>Der zugehörige Inhaltseintrag konnte nicht gefunden werden.</translation> </message> <message> - <location line="+60"/> <source>About %1</source> <translation>Über %1</translation> </message> <message> - <location line="+175"/> <source>Updating search index</source> <translation>Suchindex wird aufgebaut</translation> </message> <message> - <location line="-669"/> <source>Looking for Qt Documentation...</source> <translation>Suche nach Qt-Dokumentation ...</translation> </message> <message> - <location line="+227"/> <source>&Window</source> <translation>&Fenster</translation> </message> <message> - <location line="+3"/> <source>Minimize</source> <translation>Minimieren</translation> </message> <message> - <location line="+1"/> <source>Ctrl+M</source> <translation>Ctrl+M</translation> </message> <message> - <location line="-2"/> <source>Zoom</source> <translation>Zoom</translation> </message> <message> - <location line="-169"/> <source>&File</source> <translation>&Datei</translation> </message> <message> - <location line="+32"/> <source>&Edit</source> <translation>&Bearbeiten</translation> </message> <message> - <location line="+27"/> <source>&View</source> <translation>&Ansicht</translation> </message> <message> - <location line="+30"/> <source>&Go</source> <translation>&Gehe zu</translation> </message> <message> - <location line="+2"/> <source>ALT+Home</source> <translation>ALT+Home</translation> </message> <message> - <location line="+30"/> <source>&Bookmarks</source> <translation>&Lesezeichen</translation> </message> <message> - <location line="+2"/> <source>&Help</source> <translation>&Hilfe</translation> </message> <message> - <location line="-38"/> <source>ALT+O</source> <translation>ALT+O</translation> </message> @@ -785,48 +780,38 @@ Grund: <context> <name>PreferencesDialog</name> <message> - <location filename="../tools/assistant/tools/assistant/preferencesdialog.cpp" line="+252"/> - <location line="+44"/> <source>Add Documentation</source> <translation>Dokumentation hinzufügen</translation> </message> <message> - <location line="-44"/> <source>Qt Compressed Help Files (*.qch)</source> <translation>Komprimierte Hilfedateien (*.qch)</translation> </message> <message> - <location line="+38"/> <source>The specified file is not a valid Qt Help File!</source> <translation>Die angegebene Datei ist keine Qt-Hilfedatei.</translation> </message> <message> - <location line="-8"/> <source>The namespace %1 is already registered!</source> <translation>Der Namespace %1 ist bereits registriert.</translation> </message> <message> - <location line="+32"/> <source>Remove Documentation</source> <translation>Dokumentation entfernen</translation> </message> <message> - <location line="+1"/> <source>Some documents currently opened in Assistant reference the documentation you are attempting to remove. Removing the documentation will close those documents.</source> <translation>Einige der derzeit geöffneten Dokumente stammen aus der Dokumentation, die Sie gerade zu löschen versuchen. Sie werden beim Löschen geschlossen.</translation> </message> <message> - <location line="+2"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location line="+1"/> <source>OK</source> <translation>OK</translation> </message> <message> - <location line="+83"/> <source>Use custom settings</source> <translation>Benutzerdefinierte Einstellungen verwenden</translation> </message> @@ -834,117 +819,94 @@ Grund: <context> <name>PreferencesDialogClass</name> <message> - <location filename="../tools/assistant/tools/assistant/preferencesdialog.ui"/> <source>Preferences</source> <translation>Einstellungen</translation> </message> <message> - <location/> <source>Fonts</source> <translation>Schriftart</translation> </message> <message> - <location/> <source>Font settings:</source> <translation>Schriftart:</translation> </message> <message> - <location/> <source>Browser</source> <translation>Browser</translation> </message> <message> - <location/> <source>Application</source> <translation>Anwendung</translation> </message> <message> - <location/> <source>Filters</source> <translation>Filter</translation> </message> <message> - <location/> <source>Filter:</source> <translation>Filter:</translation> </message> <message> - <location/> <source>Attributes:</source> <translation>Attribute:</translation> </message> <message> - <location/> <source>1</source> <translation>1</translation> </message> <message> - <location/> <source>Add</source> <translation>Hinzufügen</translation> </message> <message> - <location/> <source>Remove</source> <translation>Entfernen</translation> </message> <message> - <location/> <source>Documentation</source> <translation>Dokumentation</translation> </message> <message> - <location/> <source>Registered Documentation:</source> <translation>Registrierte Dokumentation:</translation> </message> <message> - <location/> <source>Add...</source> <translation>Hinzufügen ...</translation> </message> <message> - <location/> <source>Options</source> <translation>Einstellungen</translation> </message> <message> - <location/> <source>Current Page</source> <translation>Aktuelle Seite</translation> </message> <message> - <location/> <source>Restore to default</source> <translation>Voreinstellung wiederherstellen</translation> </message> <message> - <location/> <source>Homepage</source> <translation>Startseite</translation> </message> <message> - <location/> <source>On help start:</source> <translation>Zu Beginn:</translation> </message> <message> - <location/> <source>Show my home page</source> <translation>Startseite zeigen</translation> </message> <message> - <location/> <source>Show a blank page</source> <translation>Leere Seite zeigen</translation> </message> <message> - <location/> <source>Show my tabs from last session</source> <translation>Reiter aus letzter Sitzung zeigen</translation> </message> <message> - <location/> <source>Blank Page</source> <translation>Leere Seite</translation> </message> @@ -952,12 +914,10 @@ Grund: <context> <name>RemoteControl</name> <message> - <location filename="../tools/assistant/tools/assistant/remotecontrol.cpp" line="+165"/> <source>Debugging Remote Control</source> <translation>Debugging Remote Control</translation> </message> <message> - <location line="+1"/> <source>Received Command: %1 %2</source> <translation>Empfangenes Kommando: %1 : %2</translation> </message> @@ -965,22 +925,18 @@ Grund: <context> <name>SearchWidget</name> <message> - <location filename="../tools/assistant/tools/assistant/searchwidget.cpp" line="+210"/> <source>&Copy</source> <translation>&Kopieren</translation> </message> <message> - <location line="+4"/> <source>Copy &Link Location</source> <translation>&Link-Adresse kopieren</translation> </message> <message> - <location line="+4"/> <source>Open Link in New Tab</source> <translation>Link in neuem Reiter öffnen</translation> </message> <message> - <location line="+8"/> <source>Select All</source> <translation>Alles markieren</translation> </message> @@ -988,27 +944,22 @@ Grund: <context> <name>TopicChooser</name> <message> - <location filename="../tools/assistant/tools/assistant/topicchooser.cpp" line="+53"/> <source>Choose a topic for <b>%1</b>:</source> <translation>Wählen Sie ein Thema für <b>%1</b>:</translation> </message> <message> - <location filename="../tools/assistant/tools/assistant/topicchooser.ui"/> <source>Choose Topic</source> <translation>Thema wählen</translation> </message> <message> - <location/> <source>&Topics</source> <translation>&Themen</translation> </message> <message> - <location/> <source>&Display</source> <translation>&Anzeigen</translation> </message> <message> - <location/> <source>&Close</source> <translation>&Schließen</translation> </message> diff --git a/translations/designer_de.ts b/translations/designer_de.ts index b508b7f..9ff5099 100644 --- a/translations/designer_de.ts +++ b/translations/designer_de.ts @@ -4,27 +4,22 @@ <context> <name>AbstractFindWidget</name> <message> - <location filename="../tools/shared/findwidget/abstractfindwidget.cpp" line="+127"/> <source>&Previous</source> <translation>&Vorige</translation> </message> <message> - <location line="+8"/> <source>&Next</source> <translation>&Nächste</translation> </message> <message> - <location line="+24"/> <source>&Case sensitive</source> <translation>&Groß/Kleinschreibung</translation> </message> <message> - <location line="+8"/> <source>Whole &words</source> <translation>Nur ganze &Worte</translation> </message> <message> - <location line="+12"/> <source><img src=":/trolltech/shared/images/wrap.png">&nbsp;Search wrapped</source> <translation><img src=":/trolltech/shared/images/wrap.png">&nbsp;Die Suche hat das Ende erreicht</translation> </message> @@ -32,17 +27,14 @@ <context> <name>AddLinkDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/addlinkdialog.ui"/> <source>Insert Link</source> <translation>Link einfügen</translation> </message> <message> - <location/> <source>Title:</source> <translation>Titel:</translation> </message> <message> - <location/> <source>URL:</source> <translation>URL:</translation> </message> @@ -50,7 +42,6 @@ <context> <name>AppFontDialog</name> <message> - <location filename="../tools/designer/src/designer/appfontdialog.cpp" line="+418"/> <source>Additional Fonts</source> <translation>Zusätzliche Schriftarten</translation> </message> @@ -58,37 +49,30 @@ <context> <name>AppFontManager</name> <message> - <location line="-267"/> <source>'%1' is not a file.</source> <translation>'%1' ist keine Datei.</translation> </message> <message> - <location line="+4"/> <source>The font file '%1' does not have read permissions.</source> <translation>Die Fontdatei '%1' hat keinen Lesezugriff.</translation> </message> <message> - <location line="+8"/> <source>The font file '%1' is already loaded.</source> <translation>Die Fontdatei ist bereits geladen.</translation> </message> <message> - <location line="+7"/> <source>The font file '%1' could not be loaded.</source> <translation>Die Fontdatei '%1' konnte nicht geladen werden.</translation> </message> <message> - <location line="+17"/> <source>'%1' is not a valid font id.</source> <translation>'%1' ist keine gültige Id einer Schriftart.</translation> </message> <message> - <location line="+11"/> <source>There is no loaded font matching the id '%1'.</source> <translation>Es ist keine Schriftart mit der Id '%1' geladen.</translation> </message> <message> - <location line="+15"/> <source>The font '%1' (%2) could not be unloaded.</source> <translation>Die Schriftart '%1' (%2) konnte nicht entladen werden.</translation> </message> @@ -96,52 +80,42 @@ <context> <name>AppFontWidget</name> <message> - <location line="+26"/> <source>Fonts</source> <translation>Schriftarten</translation> </message> <message> - <location line="+58"/> <source>Add font files</source> <translation>Schriftarten hinzufügen</translation> </message> <message> - <location line="+5"/> <source>Remove current font file</source> <translation>Schriftart entfernen</translation> </message> <message> - <location line="+4"/> <source>Remove all font files</source> <translation>Alle Schriftarten entfernen</translation> </message> <message> - <location line="+19"/> <source>Add Font Files</source> <translation>Schriftarten hinzufügen</translation> </message> <message> - <location line="+1"/> <source>Font files (*.ttf)</source> <translation>Schriftarten (*.ttf)</translation> </message> <message> - <location line="+13"/> <source>Error Adding Fonts</source> <translation>Fehler beim Hinzufügen einer Schriftart</translation> </message> <message> - <location line="+24"/> <source>Error Removing Fonts</source> <translation>Fehler beim Entfernen von Schriftarten</translation> </message> <message> - <location line="+22"/> <source>Remove Fonts</source> <translation>Schriftarten entfernen</translation> </message> <message> - <location line="+0"/> <source>Would you like to remove all fonts?</source> <translation>Möchten Sie alle Schriftarten entfernen?</translation> </message> @@ -149,12 +123,10 @@ <context> <name>AppearanceOptionsWidget</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.ui"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location/> <source>User Interface Mode</source> <translation>Fenstermodus</translation> </message> @@ -162,17 +134,14 @@ <context> <name>AssistantClient</name> <message> - <location filename="../tools/designer/src/designer/assistantclient.cpp" line="+100"/> <source>Unable to send request: Assistant is not responding.</source> <translation>Fehler beim Senden einer Anforderung: Das Programm Assistant antwortet nicht.</translation> </message> <message> - <location line="+39"/> <source>The binary '%1' does not exist.</source> <translation>Die ausführbare Datei '%1' existiert nicht.</translation> </message> <message> - <location line="+9"/> <source>Unable to launch assistant (%1).</source> <translation>Das Programm Assistant kann nicht gestartet werden (%1).</translation> </message> @@ -180,92 +149,74 @@ <context> <name>BrushPropertyManager</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/brushpropertymanager.cpp" line="+159"/> <source>Style</source> <translation>Stil</translation> </message> <message> - <location line="-107"/> <source>No brush</source> <translation>Kein Muster</translation> </message> <message> - <location line="+1"/> <source>Solid</source> <translation>Voll</translation> </message> <message> - <location line="+1"/> <source>Dense 1</source> <translation>Dichte 1</translation> </message> <message> - <location line="+1"/> <source>Dense 2</source> <translation>Dichte 2</translation> </message> <message> - <location line="+1"/> <source>Dense 3</source> <translation>Dichte 3</translation> </message> <message> - <location line="+1"/> <source>Dense 4</source> <translation>Dichte 4</translation> </message> <message> - <location line="+1"/> <source>Dense 5</source> <translation>Dichte 5</translation> </message> <message> - <location line="+1"/> <source>Dense 6</source> <translation>Dichte 6</translation> </message> <message> - <location line="+1"/> <source>Dense 7</source> <translation>Dichte 7</translation> </message> <message> - <location line="+1"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location line="+1"/> <source>Vertical</source> <translation>Vertikal</translation> </message> <message> - <location line="+1"/> <source>Cross</source> <translation>Kreuzende Linien</translation> </message> <message> - <location line="+1"/> <source>Backward diagonal</source> <translation>Rückwärtslehnende Diagonalen</translation> </message> <message> - <location line="+1"/> <source>Forward diagonal</source> <translation>Vorwärtslehnende Diagonalen</translation> </message> <message> - <location line="+1"/> <source>Crossing diagonal</source> <translation>Kreuzende Diagonalen</translation> </message> <message> - <location line="+104"/> <source>Color</source> <translation>Farbe</translation> </message> <message> - <location line="+105"/> <source>[%1, %2]</source> <translation>[%1, %2]</translation> </message> @@ -273,360 +224,277 @@ <context> <name>Command</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="+208"/> - <location line="+258"/> <source>Change signal</source> <translation>Signal ändern</translation> </message> <message> - <location line="-256"/> - <location line="+268"/> <source>Change slot</source> <translation>Slot ändern</translation> </message> <message> - <location line="-220"/> <source>Change signal-slot connection</source> <translation>Signale-Slotverbindung ändern</translation> </message> <message> - <location line="+234"/> <source>Change sender</source> <translation>Sender ändern</translation> </message> <message> - <location line="+18"/> <source>Change receiver</source> <translation>Empfänger ändern</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="+143"/> <source>Add connection</source> <translation>Verbindung hinzufügen</translation> </message> <message> - <location line="+54"/> <source>Adjust connection</source> <translation>Verbindung anpassen</translation> </message> <message> - <location line="+19"/> <source>Delete connections</source> <translation>Verbindungen löschen</translation> </message> <message> - <location line="+58"/> <source>Change source</source> <translation>Startpunkt ändern</translation> </message> <message> - <location line="+2"/> <source>Change target</source> <translation>Endpunkt ändern</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="+149"/> <source>Insert '%1'</source> <translation>'%1' einfügen</translation> </message> <message> - <location line="+167"/> <source>Raise '%1'</source> <translation>'%1' nach vorn</translation> </message> <message> - <location line="+33"/> <source>Lower '%1'</source> <translation>'%1' nach hinten</translation> </message> <message> - <location line="+113"/> <source>Delete '%1'</source> <translation> '%1' löschen</translation> </message> <message> - <location line="+119"/> <source>Reparent '%1'</source> <translation> '%1' einem anderen Widget zuordnen</translation> </message> <message> - <location line="+53"/> <source>Promote to custom widget</source> <translation>Platzhalter für benutzerdefinierte Klasse erzeugen</translation> </message> <message> - <location line="+42"/> <source>Demote from custom widget</source> <translation>Platzhalter für benutzerdefinierte Klasse entfernen</translation> </message> <message> - <location line="+79"/> <source>Lay out using grid</source> <translation>Objekte tabellarisch anordnen</translation> </message> <message> - <location line="+3"/> <source>Lay out vertically</source> <translation>Objekte senkrecht anordnen</translation> </message> <message> - <location line="+3"/> <source>Lay out horizontally</source> <translation>Objekte waagrecht anordnen</translation> </message> <message> - <location line="+41"/> <source>Break layout</source> <translation>Layout auflösen</translation> </message> <message> - <location line="+240"/> - <location line="+235"/> - <location line="+78"/> <source>Move Page</source> <translation>Seite verschieben</translation> </message> <message> - <location line="-279"/> - <location line="+123"/> - <location line="+188"/> - <location line="+666"/> <source>Delete Page</source> <translation>Seite löschen</translation> </message> <message> - <location line="-939"/> - <location line="+123"/> <source>Page</source> <translation>Seite</translation> </message> <message> - <location line="+860"/> <source>page</source> <translation>Seite</translation> </message> <message> - <location line="-978"/> - <location line="+123"/> - <location line="+186"/> - <location line="+667"/> <source>Insert Page</source> <translation>Seite einfügen</translation> </message> <message> - <location line="-647"/> <source>Change Tab order</source> <translation>Seite ändern</translation> </message> <message> - <location line="+28"/> <source>Create Menu Bar</source> <translation>Menü erzeugen</translation> </message> <message> - <location line="+44"/> <source>Delete Menu Bar</source> <translation>Menüleiste löschen</translation> </message> <message> - <location line="+47"/> <source>Create Status Bar</source> <translation>Statuszeile erzeugen</translation> </message> <message> - <location line="+42"/> <source>Delete Status Bar</source> <translation>Statuszeile löschen</translation> </message> <message> - <location line="+45"/> <source>Add Tool Bar</source> <translation>Werkzeugleiste hinzufügen</translation> </message> <message> - <location line="+59"/> <source>Add Dock Window</source> <translation>Dockfenster hinzufügen</translation> </message> <message> - <location line="+53"/> <source>Adjust Size of '%1'</source> <translation>Größe von '%1' anpassen</translation> </message> <message> - <location line="+57"/> <source>Change Form Layout Item Geometry</source> <translation>Ändern des Formularlayout-Elements</translation> </message> <message> - <location line="+95"/> <source>Change Layout Item Geometry</source> <translation>Geometrie des Layoutelements ändern</translation> </message> <message> - <location line="+576"/> <source>Change Table Contents</source> <translation>Tabelleninhalt ändern</translation> </message> <message> - <location line="+107"/> <source>Change Tree Contents</source> <translation>Bauminhalt ändern</translation> </message> <message> - <location line="+74"/> - <location line="+146"/> <source>Add action</source> <translation>Aktion hinzufügen</translation> </message> <message> - <location line="-120"/> - <location line="+126"/> <source>Remove action</source> <translation> Aktion löschen</translation> </message> <message> - <location line="+53"/> <source>Add menu</source> <translation>Menü hinzufügen</translation> </message> <message> - <location line="+6"/> <source>Remove menu</source> <translation>Menü löschen</translation> </message> <message> - <location line="+6"/> <source>Create submenu</source> <translation>Untermenü erzeugen</translation> </message> <message> - <location line="+31"/> <source>Delete Tool Bar</source> <translation>Werkzeugleiste löschen</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="+1194"/> <source>Set action text</source> <translation>Text der Aktion setzen</translation> </message> <message> - <location line="+3"/> <source>Insert action</source> <translation>Aktion einfügen</translation> </message> <message> - <location line="+89"/> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="+915"/> <source>Move action</source> <translation>Aktion verschieben</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="-432"/> <source>Change Title</source> <translation>Titel ändern</translation> </message> <message> - <location line="+2"/> <source>Insert Menu</source> <translation>Menü einfügen</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="+202"/> <source>Change signals/slots</source> <translation>Signale/Slots ändern</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command.cpp" line="-867"/> <source>Delete Subwindow</source> <translation>Subfenster löschen</translation> </message> <message> - <location line="+44"/> <source>Insert Subwindow</source> <translation>Subfenster einfügen</translation> </message> <message> - <location line="+2"/> <source>subwindow</source> <translation>subwindow</translation> </message> <message> - <location line="+1"/> <source>Subwindow</source> <translation>Subwindow</translation> </message> <message> - <location line="-1821"/> <source>Change Z-order of '%1'</source> <translation>Z-Reihenfolge von '%1' ändern</translation> </message> <message> - <location line="+625"/> <source>Simplify Grid Layout</source> <translation>Tabellarisches Layout vereinfachen</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+221"/> <source>Create button group</source> <translation>Buttons gruppieren</translation> </message> <message> - <location line="+27"/> <source>Break button group</source> <translation>Button-Gruppierung aufheben</translation> </message> <message> - <location line="+9"/> <source>Break button group '%1'</source> <translation>Gruppierung '%1' aufheben</translation> </message> <message> - <location line="+17"/> <source>Add buttons to group</source> <translation>Buttons zur Gruppierung hinzufügen</translation> </message> <message> - <location line="+22"/> <source>Remove buttons from group</source> <translation>Buttons aus Gruppierung entfernen</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/morphmenu.cpp" line="+349"/> <source>Morph %1/'%2' into %3</source> <extracomment>MorphWidgetCommand description</extracomment> <translation>%1/'%2' in %3 umwandeln</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_command2.cpp" line="+154"/> <source>Change layout of '%1' from %2 to %3</source> <translation>Layout von '%1' von %2 in %3 umwandeln</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="-14"/> - <location filename="../tools/designer/src/lib/shared/formlayoutmenu.cpp" line="+458"/> <source>Add '%1' to '%2'</source> <extracomment>Command description for adding buttons to a QButtonGroup</extracomment> <translation>'%1' zu '%2' hinzufügen</translation> </message> <message> - <location line="+29"/> <source>Remove '%1' from '%2'</source> <extracomment>Command description for removing buttons from a QButtonGroup</extracomment> <translation> '%1' aus '%2' entfernen</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/scriptcommand.cpp" line="+55"/> <source>Change script</source> <translation>Skript ändern</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertycommand.cpp" line="+1225"/> <source>Changed '%1' of '%2'</source> <translation>'%1' von '%2' geändert</translation> </message> <message numerus="yes"> - <location line="+3"/> <source>Changed '%1' of %n objects</source> <translatorcomment>Singular will never be shown</translatorcomment> <translation> @@ -635,12 +503,10 @@ </translation> </message> <message> - <location line="+84"/> <source>Reset '%1' of '%2'</source> <translation>'%1' von '%2' zurücksetzen</translation> </message> <message numerus="yes"> - <location line="+3"/> <source>Reset '%1' of %n objects</source> <translatorcomment>Singular will never be shown</translatorcomment> <translation> @@ -649,12 +515,10 @@ </translation> </message> <message> - <location line="+89"/> <source>Add dynamic property '%1' to '%2'</source> <translation>Dynamische Eigenschaft '%1' zu '%2' hinzufügen</translation> </message> <message numerus="yes"> - <location line="+3"/> <source>Add dynamic property '%1' to %n objects</source> <translatorcomment>Singular will never be shown</translatorcomment> <translation> @@ -663,12 +527,10 @@ </translation> </message> <message> - <location line="+86"/> <source>Remove dynamic property '%1' from '%2'</source> <translation>Dynamische Eigenschaft '%1' von '%2' entfernen</translation> </message> <message numerus="yes"> - <location line="+3"/> <source>Remove dynamic property '%1' from %n objects</source> <translation> <numerusform>Dynamische Eigenschaft '%1' des Objektes entfernen</numerusform> @@ -679,22 +541,18 @@ <context> <name>ConnectDialog</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/connectdialog.ui"/> <source>Configure Connection</source> <translation>Verbindung bearbeiten</translation> </message> <message> - <location/> <source>GroupBox</source> <translation>GroupBox</translation> </message> <message> - <location/> <source>Edit...</source> <translation>Ändern...</translation> </message> <message> - <location/> <source>Show signals and slots inherited from QWidget</source> <translation>Signale und Slots von QWidget anzeigen</translation> </message> @@ -702,17 +560,14 @@ <context> <name>ConnectionDelegate</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="+644"/> <source><object></source> <translation><Objekt></translation> </message> <message> - <location line="+18"/> <source><signal></source> <translation><Signal></translation> </message> <message> - <location line="+0"/> <source><slot></source> <translation><Slot></translation> </message> @@ -720,19 +575,16 @@ <context> <name>DPI_Chooser</name> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="+69"/> <source>Standard (96 x 96)</source> <extracomment>Embedded device standard screen resolution</extracomment> <translation>Standardauflösung (96 x 96)</translation> </message> <message> - <location line="+2"/> <source>Greenphone (179 x 185)</source> <extracomment>Embedded device screen resolution</extracomment> <translation>Greenphone (179 x 185)</translation> </message> <message> - <location line="+2"/> <source>High (192 x 192)</source> <extracomment>Embedded device high definition screen resolution</extracomment> <translation>Hohe Auflösung (192 x 192)</translation> @@ -741,89 +593,72 @@ <context> <name>Designer</name> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="+446"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="+682"/> <source>Unable to launch %1.</source> <translation>%1 konnte nicht gestartet werden.</translation> </message> <message> - <location line="+4"/> <source>%1 timed out.</source> <translation>Zeitüberschreitung bei der Ausführung von %1.</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="+10"/> <source>This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form.</source> <translation>Das Formular enthält freistehende Layoutelemente, die <b>nicht</b> gespeichert wurden.</translation> </message> <message> - <location line="+2"/> <source>Perhaps you forgot to create a layout?</source> <translation>Haben Sie ein Layout eingefügt?</translation> </message> <message> - <location line="+205"/> <source>This file cannot be read because it was created using %1.</source> <translation>Die Datei kann nicht gelesen werden, da sie mit %1 erzeugt wurde.</translation> </message> <message> - <location line="+14"/> <source>This file was created using Designer from Qt-%1 and cannot be read.</source> <translation>Die Datei kann nicht gelesen werden, da sie mit dem Designer der Version %1 erzeugt wurde.</translation> </message> <message> - <location line="+82"/> <source>This file cannot be read because the extra info extension failed to load.</source> <translation>Die Datei kann nicht gelesen werden (Fehler beim Laden der Daten der ExtraInfoExtension).</translation> </message> <message> - <location line="-52"/> <source>The converted file could not be read.</source> <translation>Die konvertierte Datei konnte nicht gelesen werden.</translation> </message> <message> - <location line="-76"/> <source>Invalid UI file: The root element <ui> is missing.</source> <translation>Fehler beim Lesen der ui-Datei: Das Wurzelelement <ui> fehlt.</translation> </message> <message> - <location line="+6"/> <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> <translation>Fehler beim Lesen der ui-Datei bei Zeile %1, Spalte %2: %3</translation> </message> <message> - <location line="+74"/> <source>This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer.</source> <translation>Die Datei wurde mit dem Designer der Version %1 erzeugt und wird zu einem neuen Formular konvertiert.</translation> </message> <message> - <location line="+3"/> <source>The old form has not been touched, but you will have to save the form under a new name.</source> <translation>Sie bleibt unverändert.Das neue Formular muss unter einem neuen Namen abgespeichert werden. </translation> </message> <message> - <location line="+11"/> <source>This file was created using Designer from Qt-%1 and could not be read: %2</source> <translation>Das Lesen der von Designer %1 erzeugten Datei schlug fehl: %2</translation> </message> <message> - <location line="+3"/> <source>Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format.</source> <translation>Bitte wandeln Sie sie mit dem Befehl <b>uic3&nbsp;-convert</b> zum Format von Qt 4.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qsimpleresource.cpp" line="+339"/> <source>Custom Widgets</source> <translation>Benutzerdefinierte Widgets</translation> </message> <message> - <location line="+12"/> <source>Promoted Widgets</source> <translation>Platzhalter für benutzerdefinierte Klassen</translation> </message> @@ -831,12 +666,10 @@ <context> <name>DesignerMetaEnum</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_utils.cpp" line="-513"/> <source>%1 is not a valid enumeration value of '%2'.</source> <translation>%1 ist kein gültiger Wert der Aufzählung '%2'.</translation> </message> <message> - <location line="+5"/> <source>'%1' could not be converted to an enumeration value of type '%2'.</source> <translation>'%1' konnte nicht in einen Wert der Aufzählung '%2' konvertiert werden.</translation> </message> @@ -844,7 +677,6 @@ <context> <name>DesignerMetaFlags</name> <message> - <location line="+78"/> <source>'%1' could not be converted to a flag value of type '%2'.</source> <translation>'%1' konnte nicht in einen Wert des Maskentyps '%2' konvertiert werden.</translation> </message> @@ -852,13 +684,11 @@ <context> <name>DeviceProfile</name> <message> - <location filename="../tools/designer/src/lib/shared/deviceprofile.cpp" line="+397"/> <source>'%1' is not a number.</source> <extracomment>Reading a number for an embedded device profile</extracomment> <translation>'%1' ist keine gültige Zahl.</translation> </message> <message> - <location line="+23"/> <source>An invalid tag <%1> was encountered.</source> <translation>Ein ungültiges Element '%1' wurde festgestellt.</translation> </message> @@ -866,27 +696,22 @@ <context> <name>DeviceProfileDialog</name> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.ui"/> <source>&Family</source> <translation>Schrift&familie</translation> </message> <message> - <location/> <source>&Point Size</source> <translation>Punktgröße</translation> </message> <message> - <location/> <source>Style</source> <translation>Stil</translation> </message> <message> - <location/> <source>Device DPI</source> <translation>Bildschirmauflösung</translation> </message> <message> - <location/> <source>Name</source> <translation>Name</translation> </message> @@ -894,57 +719,46 @@ <context> <name>DeviceSkin</name> <message> - <location filename="../tools/shared/deviceskin/deviceskin.cpp" line="+79"/> <source>The image file '%1' could not be loaded.</source> <translation>Die Pixmap-Datei '%1' konnte nicht geladen werden.</translation> </message> <message> - <location line="+64"/> <source>The skin directory '%1' does not contain a configuration file.</source> <translation>Das Skin-Verzeichnis '%1' enthält keine Konfigurationsdatei.</translation> </message> <message> - <location line="+5"/> <source>The skin configuration file '%1' could not be opened.</source> <translation>Die Skin-Konfigurationsdatei '%1' konnte nicht geöffnet werden.</translation> </message> <message> - <location line="+76"/> <source>Syntax error: %1</source> <translation>Syntaxfehler: %1</translation> </message> <message> - <location line="+54"/> <source>The skin cursor image file '%1' does not exist.</source> <translation>Die Skin-Bilddatei '%1' für den Cursor existiert nicht.</translation> </message> <message> - <location line="+25"/> <source>Syntax error in area definition: %1</source> <translation>Die Bereichsdefinition enthält einen Syntaxfehler: %1</translation> </message> <message> - <location line="+38"/> <source>Mismatch in number of areas, expected %1, got %2.</source> <translation>Die angegebene Anzahl der Bereiche (%1) stimmt nicht; es wurden %2 Bereiche gefunden.</translation> </message> <message> - <location line="-187"/> <source>The skin configuration file '%1' could not be read: %2</source> <translation>Die Skin-Konfigurationsdatei '%1' konnte nicht gelesen werden: %2</translation> </message> <message> - <location line="+91"/> <source>The skin "up" image file '%1' does not exist.</source> <translation>Die Skin-Konfigurationsdatei '%1' (oben) existiert nicht.</translation> </message> <message> - <location line="+10"/> <source>The skin "down" image file '%1' does not exist.</source> <translation>Die Skin-Konfigurationsdatei '%1' (unten) existiert nicht.</translation> </message> <message> - <location line="+11"/> <source>The skin "closed" image file '%1' does not exist.</source> <translation>Die Skin-Konfigurationsdatei '%1' (geschlossen) existiert nicht.</translation> </message> @@ -952,7 +766,6 @@ <context> <name>EmbeddedOptionsControl</name> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="+307"/> <source><html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Resolution</b></td><td>%4 x %5</td></tr></table></html></source> <extracomment>Format embedded device profile description</extracomment> <translation><html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Stil</b></td><td>%3</td></tr><tr><td><b>Auflösung</b></td><td>%4 x %5</td></tr></table></html></translation> @@ -961,13 +774,11 @@ <context> <name>EmbeddedOptionsPage</name> <message> - <location line="+103"/> <source>Embedded Design</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Embedded-Entwurf</translation> </message> <message> - <location line="+10"/> <source>Device Profiles</source> <extracomment>EmbeddedOptionsControl group box"</extracomment> <translation>Profile</translation> @@ -976,27 +787,22 @@ <context> <name>FontPanel</name> <message> - <location filename="../tools/shared/fontpanel/fontpanel.cpp" line="+63"/> <source>Font</source> <translation>Schriftart</translation> </message> <message> - <location line="+11"/> <source>&Writing system</source> <translation>Schrifts&ystem</translation> </message> <message> - <location line="+3"/> <source>&Family</source> <translation>Schrift&familie</translation> </message> <message> - <location line="+4"/> <source>&Style</source> <translation>&Stil</translation> </message> <message> - <location line="+4"/> <source>&Point size</source> <translation>&Punktgröße</translation> </message> @@ -1004,22 +810,18 @@ <context> <name>FontPropertyManager</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/fontpropertymanager.cpp" line="+62"/> <source>PreferDefault</source> <translation>Voreinstellung bevorzugt</translation> </message> <message> - <location line="+1"/> <source>NoAntialias</source> <translation>Keine Kantenglättung</translation> </message> <message> - <location line="+1"/> <source>PreferAntialias</source> <translation>Kantenglättung bevorzugen</translation> </message> <message> - <location line="+61"/> <source>Antialiasing</source> <translation>Kantenglättung</translation> </message> @@ -1027,43 +829,44 @@ <context> <name>FormBuilder</name> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilderextra.cpp" line="+375"/> <source>Invalid stretch value for '%1': '%2'</source> - <extracomment>Parsing layout stretch values</extracomment> + <extracomment>Parsing layout stretch values +---------- +Parsing layout stretch values +---------- +Parsing layout stretch values</extracomment> <translation>Ungültiger Stretch-Wert für '%1': '%2'</translation> </message> <message> - <location line="+62"/> <source>Invalid minimum size for '%1': '%2'</source> - <extracomment>Parsing grid layout minimum size values</extracomment> + <extracomment>Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values</extracomment> <translation></translation> </message> </context> <context> <name>FormEditorOptionsPage</name> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor_optionspage.cpp" line="+91"/> <source>%1 %</source> <translation>%1 %</translation> </message> <message> - <location line="+4"/> <source>Preview Zoom</source> <translation>Vergrößerungsfaktor für Vorschau</translation> </message> <message> - <location line="+2"/> <source>Default Zoom</source> <translation>Vorgabe für Vergrößerungsfaktor</translation> </message> <message> - <location line="+29"/> <source>Forms</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Formulare</translation> </message> <message> - <location line="+13"/> <source>Default Grid</source> <translation>Raster für neue Formulare</translation> </message> @@ -1071,37 +874,30 @@ <context> <name>FormLayoutRowDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutrowdialog.ui"/> <source>Add Form Layout Row</source> <translation>Formularlayoutzeile hinzufügen</translation> </message> <message> - <location/> <source>&Label text:</source> <translation>Be&schriftung:</translation> </message> <message> - <location/> <source>Field &type:</source> <translation>&Datentyp:</translation> </message> <message> - <location/> <source>&Field name:</source> <translation>&Feldname:</translation> </message> <message> - <location/> <source>&Buddy:</source> <translation>&Buddy:</translation> </message> <message> - <location/> <source>&Row:</source> <translation>&Zeile:</translation> </message> <message> - <location/> <source>Label &name:</source> <translation>&Label-Name:</translation> </message> @@ -1109,12 +905,10 @@ <context> <name>FormWindow</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="+1754"/> <source>Unexpected element <%1></source> <translation>Ungültiges Element <%1></translation> </message> <message> - <location line="+7"/> <source>Error while pasting clipboard contents at line %1, column %2: %3</source> <translation>Fehler beim Einfügen der Zwischenablage, Zeile %1, Spalte %2: %3</translation> </message> @@ -1122,62 +916,50 @@ <context> <name>FormWindowSettings</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.ui"/> <source>Form Settings</source> <translation>Formulareinstellungen</translation> </message> <message> - <location/> <source>Layout &Default</source> <translation>&Layout-Standardwerte</translation> </message> <message> - <location/> <source>&Spacing:</source> <translation>A&bstand:</translation> </message> <message> - <location/> <source>&Margin:</source> <translation>&Rand:</translation> </message> <message> - <location/> <source>&Layout Function</source> <translation>Layout&funktion</translation> </message> <message> - <location/> <source>Ma&rgin:</source> <translation>Ra&nd:</translation> </message> <message> - <location/> <source>Spa&cing:</source> <translation>Abstan&d:</translation> </message> <message> - <location/> <source>Embedded Design</source> <translation>Embedded-Entwurf</translation> </message> <message> - <location/> <source>&Author</source> <translation>&Autor</translation> </message> <message> - <location/> <source>&Include Hints</source> <translation>&Include-Dateien</translation> </message> <message> - <location/> <source>&Pixmap Function</source> <translation>&Pixmapfunktion</translation> </message> <message> - <location/> <source>Grid</source> <translation>Raster</translation> </message> @@ -1185,7 +967,6 @@ <context> <name>IconSelector</name> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="+352"/> <source>All Pixmaps (</source> <translation>Alle Pixmap-Dateien (</translation> </message> @@ -1193,7 +974,6 @@ <context> <name>ItemPropertyBrowser</name> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="+66"/> <source>XX Icon Selected off</source> <extracomment>Sample string to determinate the width for the first column of the list item property browser</extracomment> <translation>Ausgewähltes Icon, aus</translation> @@ -1202,33 +982,27 @@ <context> <name>MainWindowBase</name> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="+121"/> <source>Main</source> <extracomment>Not currently used (main tool bar)</extracomment> <translation>Haupt-Werkzeugleiste</translation> </message> <message> - <location line="+6"/> <source>File</source> <translation>Datei</translation> </message> <message> - <location line="+1"/> <source>Edit</source> <translation>Bearbeiten</translation> </message> <message> - <location line="+1"/> <source>Tools</source> <translation>Werkzeuge</translation> </message> <message> - <location line="+1"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location line="+7"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> @@ -1236,52 +1010,42 @@ <context> <name>NewForm</name> <message> - <location filename="../tools/designer/src/designer/newform.cpp" line="+79"/> <source>C&reate</source> <translation>&Neu von Vorlage</translation> </message> <message> - <location line="+1"/> <source>Recent</source> <translation>Zuletzt bearbeitet</translation> </message> <message> - <location line="+32"/> <source>&Close</source> <translation>&Schließen</translation> </message> <message> - <location line="+3"/> <source>&Open...</source> <translation>&Öffnen...</translation> </message> <message> - <location line="+4"/> <source>&Recent Forms</source> <translation>&Zuletzt bearbeitete Formulare</translation> </message> <message> - <location line="+64"/> <source>Read error</source> <translation>Lesefehler</translation> </message> <message> - <location line="-100"/> <source>New Form</source> <translation>Neues Formular</translation> </message> <message> - <location line="-5"/> <source>Show this Dialog on Startup</source> <translation>Diesen Dialog zu Beginn anzeigen</translation> </message> <message> - <location line="+128"/> <source>A temporary form file could not be created in %1.</source> <translation>In dem Verzeichnis %1 konnte keine temporäre Formulardatei angelegt werden.</translation> </message> <message> - <location line="+6"/> <source>The temporary form file %1 could not be written.</source> <translation>Die temporäre Formulardatei %1 konnte nicht geschrieben werden.</translation> </message> @@ -1289,22 +1053,18 @@ <context> <name>ObjectInspectorModel</name> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspectormodel.cpp" line="+360"/> <source>Object</source> <translation>Objekt</translation> </message> <message> - <location line="+1"/> <source>Class</source> <translation>Klasse</translation> </message> <message> - <location line="+35"/> <source>separator</source> <translation>Trenner</translation> </message> <message> - <location line="+98"/> <source><noname></source> <translation><unbenannt></translation> </message> @@ -1312,12 +1072,10 @@ <context> <name>ObjectNameDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="+158"/> <source>Change Object Name</source> <translation>Objektnamen bearbeiten</translation> </message> <message> - <location line="+4"/> <source>Object Name</source> <translation>Objektname</translation> </message> @@ -1325,12 +1083,10 @@ <context> <name>PluginDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.ui"/> <source>Plugin Information</source> <translation>Plugins</translation> </message> <message> - <location/> <source>1</source> <translation>1</translation> </message> @@ -1338,7 +1094,6 @@ <context> <name>PreferencesDialog</name> <message> - <location filename="../tools/designer/src/designer/preferencesdialog.ui"/> <source>Preferences</source> <translation>Einstellungen</translation> </message> @@ -1346,32 +1101,26 @@ <context> <name>PreviewConfigurationWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.ui"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location/> <source>Print/Preview Configuration</source> <translation>Druck/Vorschau</translation> </message> <message> - <location/> <source>Style</source> <translation>Stil</translation> </message> <message> - <location/> <source>Style sheet</source> <translation>Style sheet</translation> </message> <message> - <location/> <source>...</source> <translation>...</translation> </message> <message> - <location/> <source>Device skin</source> <translation>Geräte-Skin</translation> </message> @@ -1379,7 +1128,6 @@ <context> <name>PromotionModel</name> <message> - <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="+112"/> <source>Not used</source> <extracomment>Usage of promoted widgets</extracomment> <translation>Nicht verwendet</translation> @@ -1388,8 +1136,6 @@ <context> <name>Q3WizardContainer</name> <message> - <location filename="../tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.cpp" line="+172"/> - <location line="+5"/> <source>Page</source> <translation>Seite</translation> </message> @@ -1397,58 +1143,47 @@ <context> <name>QAbstractFormBuilder</name> <message> - <location filename="../tools/designer/src/lib/uilib/abstractformbuilder.cpp" line="+206"/> <source>Unexpected element <%1></source> <translation>Ungültiges Element <%1></translation> </message> <message> - <location line="+5"/> <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> <translation>Fehler beim Lesen der ui-Datei bei Zeile %1, Spalte %2: %3</translation> </message> <message> - <location line="+6"/> <source>Invalid UI file: The root element <ui> is missing.</source> <translation>Fehler beim Lesen der ui-Datei: Das Wurzelelement <ui> fehlt.</translation> </message> <message> - <location line="+104"/> <source>The creation of a widget of the class '%1' failed.</source> <translation>Es konnte kein Widget der Klasse '%1' erzeugt werden.</translation> </message> <message> - <location line="+296"/> <source>Attempt to add child that is not of class QWizardPage to QWizard.</source> <translation>Es wurde versucht, einem Objekt der Klasse QWizard eine Seite hinzuzufügen, die nicht vom Typ QWizardPage ist.</translation> </message> <message> - <location line="+86"/> <source>Attempt to add a layout to a widget '%1' (%2) which already has a layout of non-box type %3. This indicates an inconsistency in the ui-file.</source> <translation>Es wurde versucht, ein Layout auf das Widget '%1' (%2) zu setzen, welches bereits ein Layout vom Typ %3 hat. Das deutet auf eine Inkonsistenz in der ui-Datei hin.</translation> </message> <message> - <location line="+144"/> <source>Empty widget item in %1 '%2'.</source> <translation>Leeres Widget-Item in %1 '%2'.</translation> </message> <message> - <location line="+680"/> <source>Flags property are not supported yet.</source> <translation>Eigenschaften des Typs "Flag" werden nicht unterstützt.</translation> </message> <message> - <location line="+81"/> <source>While applying tab stops: The widget '%1' could not be found.</source> <translation>Fehler beim Setzen der Tabulatorreihenfolge: Es konnte kein Widget mit dem Namen '%1' gefunden werden.</translation> </message> <message> - <location line="+908"/> <source>Invalid QButtonGroup reference '%1' referenced by '%2'.</source> <translation>Ungültige Referenz der Buttongruppe '%1', referenziert von '%2'.</translation> </message> <message> - <location line="+511"/> <source>This version of the uitools library is linked without script support.</source> <translation>Dies Version der uitools-Bibliothek unterstützt keine Skripte.</translation> </message> @@ -1456,12 +1191,10 @@ This indicates an inconsistency in the ui-file.</source> <context> <name>QAxWidgetPlugin</name> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgetplugin.cpp" line="+75"/> <source>ActiveX control</source> <translation>ActiveX-Steuerelement</translation> </message> <message> - <location line="+5"/> <source>ActiveX control widget</source> <translation>ActiveX-Widget</translation> </message> @@ -1469,22 +1202,18 @@ This indicates an inconsistency in the ui-file.</source> <context> <name>QAxWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="+119"/> <source>Set Control</source> <translation>Steuerelement setzen</translation> </message> <message> - <location line="+1"/> <source>Reset Control</source> <translation>Steuerelement zurücksetzen</translation> </message> <message> - <location line="+41"/> <source>Licensed Control</source> <translation>Lizensiertes Steuerelement</translation> </message> <message> - <location line="+1"/> <source>The control requires a design-time license</source> <translation>Das Steuerelement erfordert eine Lizenz zur Entwurfszeit</translation> </message> @@ -1492,67 +1221,54 @@ This indicates an inconsistency in the ui-file.</source> <context> <name>QCoreApplication</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotion.cpp" line="+83"/> <source>%1 is not a promoted class.</source> <translation>%1 ist kein Platzhalter für eine benutzerdefinierte Klasse.</translation> </message> <message> - <location line="+65"/> <source>The base class %1 is invalid.</source> <translation>%1 ist keine gültige Basisklasse.</translation> </message> <message> - <location line="+7"/> <source>The class %1 already exists.</source> <translation>Es existiert bereits eine Klasse namens %1.</translation> </message> <message> - <location line="+9"/> <source>Promoted Widgets</source> <translation>Platzhalter für benutzerdefinierte Klassen</translation> </message> <message> - <location line="+126"/> <source>The class %1 cannot be removed</source> <translation>Die Klasse %1 kann nicht gelöscht werden</translation> </message> <message> - <location line="+9"/> <source>The class %1 cannot be removed because it is still referenced.</source> <translation>Die Klasse %1 kann nicht gelöscht werden, da sie gegenwärtig verwendet wird.</translation> </message> <message> - <location line="+10"/> <source>The class %1 cannot be renamed</source> <translation>Die Klasse %1 kann nicht umbenannt werden</translation> </message> <message> - <location line="+7"/> <source>The class %1 cannot be renamed to an empty name.</source> <translation>Der Klassennamen darf nicht leer sein (%1).</translation> </message> <message> - <location line="+5"/> <source>There is already a class named %1.</source> <translation>Es existiert bereits eine Klasse namens %1.</translation> </message> <message> - <location line="+29"/> <source>Cannot set an empty include file.</source> <translation>Der Name der Include-Datei darf nicht leer sein.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/formscriptrunner.cpp" line="+88"/> <source>Exception at line %1: %2</source> <translation>Ausnahmefehler bei Zeile %1: %2</translation> </message> <message> - <location line="+36"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location line="+50"/> <source>An error occurred while running the script for %1: %2 Script: %3</source> <translation>Bei der Ausführung des Skripts für %1 trat ein Fehler auf: %2Skript: %3</translation> @@ -1561,17 +1277,14 @@ Script: %3</source> <context> <name>QDesigner</name> <message> - <location filename="../tools/designer/src/designer/qdesigner.cpp" line="+141"/> <source>%1 - warning</source> <translation>%1 - Warnung</translation> </message> <message> - <location line="+96"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> - <location line="+1"/> <source>This application cannot be used for the Console edition of Qt</source> <translation>Diese Anwendung kann in der Qt-Konsolen-Edition nicht benutzt werden</translation> </message> @@ -1579,207 +1292,162 @@ Script: %3</source> <context> <name>QDesignerActions</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_actions.cpp" line="+180"/> <source>Edit Widgets</source> <translation>Widgets bearbeiten</translation> </message> <message> - <location line="+10"/> <source>&Quit</source> <translation>&Beenden</translation> </message> <message> - <location line="+3"/> <source>&Minimize</source> <translation>&Minimieren</translation> </message> <message> - <location line="+2"/> <source>Bring All to Front</source> <translation>Alle Formulare anzeigen</translation> </message> <message> - <location line="+2"/> <source>Preferences...</source> <translation>Einstellungen...</translation> </message> <message> - <location line="+321"/> <source>Clear &Menu</source> <translation>Menü &löschen</translation> </message> <message> - <location line="-246"/> <source>CTRL+SHIFT+S</source> <translation>CTRL+SHIFT+S</translation> </message> <message> - <location line="+126"/> <source>CTRL+R</source> <translation>CTRL+R</translation> </message> <message> - <location line="+18"/> <source>CTRL+M</source> <translation>CTRL+M</translation> </message> <message> - <location line="+31"/> <source>Qt Designer &Help</source> <translation>&Hilfe zum Qt Designer</translation> </message> <message> - <location line="+7"/> <source>Current Widget Help</source> <translation>Hilfe zum ausgewählten Widget</translation> </message> <message> - <location line="+7"/> <source>What's New in Qt Designer?</source> <translation>Was gibt es Neues beim Qt Designer?</translation> </message> <message> - <location line="+7"/> <source>About Plugins</source> <translation>Plugins</translation> </message> <message> - <location line="+6"/> - <location line="+601"/> <source>About Qt Designer</source> <translation>Über Qt Designer</translation> </message> <message> - <location line="-595"/> <source>About Qt</source> <translation>Über Qt</translation> </message> <message> - <location line="+121"/> - <location line="+197"/> <source>Open Form</source> <translation>Formular öffnen</translation> </message> <message> - <location line="-196"/> - <location line="+37"/> - <location line="+160"/> <source>Designer UI files (*.%1);;All Files (*)</source> <translation>Designer-UI-Dateien (*.%1);;Alle Dateien (*)</translation> </message> <message> - <location line="-643"/> <source>%1 already exists. Do you want to replace it?</source> <translation>Die Datei %1 existiert bereits. Möchten Sie sie überschreiben?</translation> </message> <message> - <location line="-26"/> <source>Saved %1.</source> <translation>Das Formular %1 wurde gespeichert...</translation> </message> <message> - <location line="+394"/> <source>&Recent Forms</source> <translation>&Zuletzt bearbeitete Formulare</translation> </message> <message> - <location line="+202"/> <source>Designer</source> <translation>Designer</translation> </message> <message> - <location line="+0"/> <source>Feature not implemented yet!</source> <translation>Diese Funktionalität ist noch nicht implementiert.</translation> </message> <message> - <location line="+59"/> <source>Read error</source> <translation>Lesefehler</translation> </message> <message> - <location line="+1"/> <source>%1 Do you want to update the file location or generate a new form?</source> <translation>%1 Möchten Sie einen anderen Namen eingeben oder ein neues Formular erzeugen?</translation> </message> <message> - <location line="+3"/> <source>&Update</source> <translation>&Anderer Name</translation> </message> <message> - <location line="+1"/> <source>&New Form</source> <translation>&Neues Formular</translation> </message> <message> - <location line="+77"/> - <location line="+40"/> <source>Save Form?</source> <translation>Formular speichern?</translation> </message> <message> - <location line="-39"/> <source>Could not open file</source> <translation>Die Datei konnte nicht geöffnet werden</translation> </message> <message> - <location line="+282"/> - <location line="+23"/> <source>The backup file %1 could not be written.</source> <translation>Hintergrundsicherung: Die Datei %1 konnte nicht geschrieben werden.</translation> </message> <message> - <location line="+107"/> <source>The backup directory %1 could not be created.</source> <translation>Hintergrundsicherung: Das Verzeichnis %1 konnte nicht angelegt werden.</translation> </message> <message> - <location line="+6"/> <source>The temporary backup directory %1 could not be created.</source> <translation>Hintergrundsicherung: Das temporäre Verzeichnis %1 konnte nicht angelegt werden.</translation> </message> <message> - <location line="+94"/> <source>Please close all forms to enable the loading of additional fonts.</source> <translation>Bitte schließen Sie alle Formulare, um zusätzliche Schriftarten zu laden.</translation> </message> <message> - <location line="-502"/> <source>Select New File</source> <translation>Andere Datei</translation> </message> <message> - <location line="+30"/> <source>Could not write file</source> <translation>Die Datei konnte nicht geschrieben werden</translation> </message> <message> - <location line="+201"/> <source>&Close Preview</source> <translation>Vorschau &schließen</translation> </message> <message> - <location line="-921"/> <source>Save &Image...</source> <translation>&Vorschaubild speichern...</translation> </message> <message> - <location line="+1"/> <source>&Print...</source> <translation>&Drucken...</translation> </message> <message> - <location line="+9"/> <source>Additional Fonts...</source> <translation>&Zusätzliche Schriftarten...</translation> </message> <message> - <location line="+674"/> <source>The file %1 could not be opened. Reason: %2 Would you like to retry or select a different file?</source> @@ -1788,7 +1456,6 @@ Would you like to retry or select a different file?</source> Möchten Sie es noch einmal versuchen oder eine andere Datei auswählen?</translation> </message> <message> - <location line="+39"/> <source>It was not possible to write the entire file %1 to disk. Reason:%2 Would you like to retry?</source> @@ -1797,96 +1464,74 @@ Would you like to retry?</source> Möchten Sie es noch einmal versuchen?</translation> </message> <message> - <location line="+429"/> <source>Image files (*.%1)</source> <translation>Bilddateien (*.%1)</translation> </message> <message> - <location line="+9"/> - <location line="+17"/> <source>Save Image</source> <translation>Bild speichern</translation> </message> <message> - <location line="+1"/> <source>The file %1 could not be written.</source> <translation>Die Datei %1 konnte nicht geschrieben werden.</translation> </message> <message> - <location line="-1186"/> <source>&New...</source> <translation>&Neu...</translation> </message> <message> - <location line="+1"/> <source>&Open...</source> <translation>&Öffnen...</translation> </message> <message> - <location line="+1"/> <source>&Save</source> <translation>&Speichern</translation> </message> <message> - <location line="+1"/> <source>Save &As...</source> <translation>Speichern &unter...</translation> </message> <message> - <location line="+1"/> <source>Save A&ll</source> <translation>&Alles speichern</translation> </message> <message> - <location line="+1"/> <source>Save As &Template...</source> <translation>Als Vor&lage abspeichern...</translation> </message> <message> - <location line="+1"/> - <location line="+924"/> <source>&Close</source> <translation>&Schließen</translation> </message> <message> - <location line="-919"/> <source>View &Code...</source> <translation>&Code anzeigen...</translation> </message> <message> - <location line="+447"/> - <location line="+248"/> <source>Save Form As</source> <translation>Formular unter einem anderen Namen speichern</translation> </message> <message> - <location line="+429"/> <source>Preview failed</source> <translation>Es konnte keine Vorschau erzeugt werden</translation> </message> <message> - <location line="-575"/> <source>Code generation failed</source> <translation>Es konnte kein Code generiert werden</translation> </message> <message> - <location line="+328"/> - <location line="+34"/> <source>Assistant</source> <translation>Assistant</translation> </message> <message> - <location line="+259"/> <source>Saved image %1.</source> <translation>Das Vorschaubild wurde unter %1 gespeichert.</translation> </message> <message> - <location line="+70"/> <source>Printed %1.</source> <translation>%1 wurde gedruckt.</translation> </message> <message> - <location line="-1162"/> <source>ALT+CTRL+S</source> <translation>ALT+CTRL+S</translation> </message> @@ -1894,7 +1539,6 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerAppearanceOptionsPage</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_appearanceoptions.cpp" line="+138"/> <source>Appearance</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Ansicht</translation> @@ -1903,17 +1547,14 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerAppearanceOptionsWidget</name> <message> - <location line="-53"/> <source>Docked Window</source> <translation>Dockfenster-Modus</translation> </message> <message> - <location line="+1"/> <source>Multiple Top-Level Windows</source> <translation>Multifenster-Modus</translation> </message> <message> - <location line="+5"/> <source>Toolwindow Font</source> <translation>Font für Dockfenster</translation> </message> @@ -1921,22 +1562,18 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerAxWidget</name> <message> - <location filename="../tools/designer/src/plugins/activeqt/qaxwidgettaskmenu.cpp" line="-71"/> <source>Reset control</source> <translation>Steuerelement zurücksetzen</translation> </message> <message> - <location line="+2"/> <source>Set control</source> <translation>Steuerelement setzen</translation> </message> <message> - <location filename="../tools/designer/src/plugins/activeqt/qdesigneraxwidget.cpp" line="+179"/> <source>Control loaded</source> <translation>Steuerelement geladen</translation> </message> <message> - <location line="+40"/> <source>A COM exception occurred when executing a meta call of type %1, index %2 of "%3".</source> <translation>Beim Methodenaufruf des Typs %1, index %2 von "%3" trat eine COM-Ausnahme auf.</translation> </message> @@ -1944,17 +1581,14 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerFormBuilder</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_formbuilder.cpp" line="+89"/> <source>Script errors occurred:</source> <translation>Es sind Skriptfehler aufgetreten:</translation> </message> <message> - <location line="+307"/> <source>The preview failed to build.</source> <translation>Es konnte keine Vorschau erzeugt werden.</translation> </message> <message> - <location line="+65"/> <source>Designer</source> <translation>Designer</translation> </message> @@ -1962,22 +1596,18 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerFormWindow</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_formwindow.cpp" line="+217"/> <source>%1 - %2[*]</source> <translation>%1 - %2[*]</translation> </message> <message> - <location line="+10"/> <source>Save Form?</source> <translation>Formular speichern?</translation> </message> <message> - <location line="+1"/> <source>Do you want to save the changes to this document before closing?</source> <translation>Möchten Sie die Änderungen an diesem Formular speichern?</translation> </message> <message> - <location line="+2"/> <source>If you don't save, your changes will be lost.</source> <translation>Die Änderungen gehen verloren, wenn Sie nicht speichern. </translation> </message> @@ -1985,38 +1615,30 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menu.cpp" line="-1179"/> <source>Type Here</source> <translation>Geben Sie Text ein</translation> </message> <message> - <location line="+3"/> <source>Add Separator</source> <translation>Trenner hinzufügen</translation> </message> <message> - <location line="+371"/> <source>Insert separator</source> <translation>Trenner einfügen</translation> </message> <message> - <location line="+7"/> <source>Remove action '%1'</source> <translation>Aktion '%1' löschen</translation> </message> <message> - <location line="-2"/> <source>Remove separator</source> <translation>Trenner löschen</translation> </message> <message> - <location line="+27"/> - <location line="+648"/> <source>Add separator</source> <translation>Trenner hinzufügen</translation> </message> <message> - <location line="-348"/> <source>Insert action</source> <translation>Aktion einfügen</translation> </message> @@ -2024,22 +1646,18 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerMenuBar</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_menubar.cpp" line="-375"/> <source>Type Here</source> <translation>Geben Sie Text ein</translation> </message> <message> - <location line="+298"/> <source>Remove Menu '%1'</source> <translation>Menü '%1' öschen</translation> </message> <message> - <location line="+12"/> <source>Remove Menu Bar</source> <translation>Menüleiste löschen</translation> </message> <message> - <location line="+70"/> <source>Menu</source> <translation>Menü</translation> </message> @@ -2047,37 +1665,30 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerPluginManager</name> <message> - <location filename="../tools/designer/src/lib/shared/pluginmanager.cpp" line="+271"/> <source>An XML error was encountered when parsing the XML of the custom widget %1: %2</source> <translation>Fehler beim Auswerten des XML des benutzerdefinierten Widgets %1: %2</translation> </message> <message> - <location line="+5"/> <source>A required attribute ('%1') is missing.</source> <translation>Bei dem Element fehlt ein erforderliches Attribut ('%1').</translation> </message> <message> - <location line="+38"/> <source>An invalid property specification ('%1') was encountered. Supported types: %2</source> <translation>'%1' ist keine gültige Spezifikation einer Eigenschaft. Die folgenden Typen werden unterstützt: %2</translation> </message> <message> - <location line="+20"/> <source>'%1' is not a valid string property specification.</source> <translation>'%1' ist keine gültige Spezifikation einer Zeichenketten-Eigenschaft.</translation> </message> <message> - <location line="+40"/> <source>The XML of the custom widget %1 does not contain any of the elements <widget> or <ui>.</source> <translation>Der XML-Code für das Widget %1 enthält kein gültiges Wurzelelement (<widget>, <ui>).</translation> </message> <message> - <location line="+12"/> <source>The class attribute for the class %1 is missing.</source> <translation>Das Klassenattribut der Klasse %1 fehlt.</translation> </message> <message> - <location line="+4"/> <source>The class attribute for the class %1 does not match the class name %2.</source> <translation>Das Klassenattribut der Klasse %1 entspricht nicht dem Klassennamen (%2).</translation> </message> @@ -2085,7 +1696,6 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerPropertySheet</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_propertysheet.cpp" line="+758"/> <source>Dynamic Properties</source> <translation>Dynamische Eigenschaften</translation> </message> @@ -2093,31 +1703,26 @@ Möchten Sie es noch einmal versuchen?</translation> <context> <name>QDesignerResource</name> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="+492"/> <source>The layout type '%1' is not supported, defaulting to grid.</source> <translation>Der Layout-Typ '%1' wird nicht unterstützt; es wurde ein Grid-Layout erzeugt.</translation> </message> <message> - <location line="+239"/> <source>The container extension of the widget '%1' (%2) returned a widget not managed by Designer '%3' (%4) when queried for page #%5. Container pages should only be added by specifying them in XML returned by the domXml() method of the custom widget.</source> <translation>Die Container-Extension des Widgets '%1' (%2) gab für Seite %5 ein Widget '%3' (%4) zurück, was nicht von Designer verwaltet wird. Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifiziert werden.</translation> </message> <message> - <location line="+545"/> <source>Unexpected element <%1></source> <extracomment>Parsing clipboard contents</extracomment> <translation>Ungültiges Element <%1></translation> </message> <message> - <location line="+6"/> <source>Error while pasting clipboard contents at line %1, column %2: %3</source> <extracomment>Parsing clipboard contents</extracomment> <translation>Fehler beim Einfügen der Zwischenablage, Zeile %1, Spalte %2: %3</translation> </message> <message> - <location line="+6"/> <source>Error while pasting clipboard contents: The root element <ui> is missing.</source> <extracomment>Parsing clipboard contents</extracomment> <translation>Fehler beim Einfügen der Zwischenablage: Das Wurzelelement <ui> fehlt.</translation> @@ -2126,12 +1731,10 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QDesignerSharedSettings</name> <message> - <location filename="../tools/designer/src/lib/shared/shared_settings.cpp" line="+83"/> <source>The template path %1 could not be created.</source> <translation>Das Vorlagenverzeichnis %1 konnte nicht angelegt werden.</translation> </message> <message> - <location line="+184"/> <source>An error has been encountered while parsing device profile XML: %1</source> <translation>Beim Lesen des Profils trat ein Fehler auf: %1</translation> </message> @@ -2139,32 +1742,26 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QDesignerToolWindow</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_toolwindow.cpp" line="+190"/> <source>Property Editor</source> <translation>Eigenschaften</translation> </message> <message> - <location line="+54"/> <source>Action Editor</source> <translation>Aktionseditor</translation> </message> <message> - <location line="+42"/> <source>Object Inspector</source> <translation>Objektanzeige</translation> </message> <message> - <location line="+35"/> <source>Resource Browser</source> <translation>Ressourcen</translation> </message> <message> - <location line="+34"/> <source>Signal/Slot Editor</source> <translation>Signale und Slots</translation> </message> <message> - <location line="+41"/> <source>Widget Box</source> <translation>Widget-Box</translation> </message> @@ -2172,97 +1769,78 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QDesignerWorkbench</name> <message> - <location filename="../tools/designer/src/designer/qdesigner_workbench.cpp" line="+199"/> <source>&File</source> <translation>&Datei</translation> </message> <message> - <location line="+6"/> <source>F&orm</source> <translation>F&ormular</translation> </message> <message> - <location line="+1"/> <source>Preview in</source> <translation>Vorschau im</translation> </message> <message> - <location line="+8"/> <source>&Window</source> <translation>&Fenster</translation> </message> <message> - <location line="+2"/> <source>&Help</source> <translation>&Hilfe</translation> </message> <message> - <location line="-15"/> <source>Edit</source> <translation>Bearbeiten</translation> </message> <message> - <location line="+38"/> <source>Toolbars</source> <translation>Werkzeugleisten</translation> </message> <message> - <location line="+466"/> <source>Save Forms?</source> <translation>Formulare speichern?</translation> </message> <message> - <location line="-495"/> <source>&View</source> <translation>&Ansicht</translation> </message> <message> - <location line="+2"/> <source>&Settings</source> <translation>&Einstellungen</translation> </message> <message> - <location line="+204"/> <source>Widget Box</source> <translation>Widgetbox</translation> </message> <message> - <location line="+293"/> <source>If you do not review your documents, all your changes will be lost.</source> <translation>Die Änderungen gehen verloren, wenn Sie sich die Formulare nicht noch einmal ansehen.</translation> </message> <message> - <location line="+1"/> <source>Discard Changes</source> <translation>Änderungen verwerfen</translation> </message> <message> - <location line="+2"/> <source>Review Changes</source> <translation>Änderungen ansehen</translation> </message> <message> - <location line="+95"/> <source>Backup Information</source> <translation>Information zur Hintergrundsicherung</translation> </message> <message> - <location line="+1"/> <source>The last session of Designer was not terminated correctly. Backup files were left behind. Do you want to load them?</source> <translation>Designer wurde offenbar nicht ordnungsgemäß beendet; es existieren noch Dateien von der Hintergrundsicherung. Möchten Sie sie laden?</translation> </message> <message> - <location line="+111"/> <source>The file <b>%1</b> could not be opened.</source> <translation>Die Datei <b>%1</b> konnte nicht geöffnet werden.</translation> </message> <message> - <location line="+46"/> <source>The file <b>%1</b> is not a valid Designer UI file.</source> <translation>Die Datei <b>%1</b> ist keine gültige Designer-Datei.</translation> </message> <message numerus="yes"> - <location line="-259"/> <source>There are %n forms with unsaved changes. Do you want to review these changes before quitting?</source> <translation> <numerusform>Das Formular wurde geändert. Möchten Sie sich die Änderungen ansehen, bevor Sie das Programm beenden?</numerusform> @@ -2273,53 +1851,47 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QFormBuilder</name> <message> - <location filename="../tools/designer/src/lib/uilib/formbuilder.cpp" line="+168"/> <source>An empty class name was passed on to %1 (object name: '%2').</source> - <extracomment>Empty class name passed to widget factory method</extracomment> + <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>Der Methode %1 wurde ein leerer Klassennamen übergeben (Name '%2').</translation> </message> <message> - <location line="+56"/> <source>QFormBuilder was unable to create a custom widget of the class '%1'; defaulting to base class '%2'.</source> <translation>QFormBuilder konnte kein benutzerdefiniertes Widget der Klasse '%1' erzeugen; es wurde ein Widget der Basisklasse '%2' erzeugt.</translation> </message> <message> - <location line="+6"/> <source>QFormBuilder was unable to create a widget of the class '%1'.</source> <translation>QFormBuilder konnte kein Objekt der Klasse '%1' erzeugen.</translation> </message> <message> - <location line="+61"/> <source>The layout type `%1' is not supported.</source> <translation>Layouts des Typs `%1' werden nicht unterstützt.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/properties.cpp" line="+106"/> <source>The set-type property %1 could not be read.</source> <translation>Die Eigenschaft %1 konnte nicht gelesen werden (Typ: Menge).</translation> </message> <message> - <location line="+23"/> <source>The enumeration-type property %1 could not be read.</source> <translation>Die Eigenschaft %1 konnte nicht gelesen werden (Typ: Aufzählung).</translation> </message> <message> - <location line="+190"/> <source>Reading properties of the type %1 is not supported yet.</source> <translation>Das Lesen von Eigenschaften des Typs %1 wird nicht unterstützt.</translation> </message> <message> - <location line="+266"/> <source>The property %1 could not be written. The type %2 is not supported yet.</source> <translation>Die Eigenschaft %1 konnte nicht geschrieben werden, da der Typ %2 nicht unterstützt wird.</translation> </message> <message> - <location filename="../tools/designer/src/lib/uilib/properties_p.h" line="+132"/> <source>The enumeration-value '%1' is invalid. The default value '%2' will be used instead.</source> <translation>Der Aufzählungswert '%1' ist ungültig. Es wird der Vorgabewert '%2' verwendet.</translation> </message> <message> - <location line="+14"/> <source>The flag-value '%1' is invalid. Zero will be used instead.</source> <translation>Der Flag-Wert '%1' ist ungültig. Es wird der Wert 0 verwendet.</translation> </message> @@ -2327,48 +1899,38 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QStackedWidgetEventFilter</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_stackedbox.cpp" line="+194"/> <source>Previous Page</source> <translation>Vorige Seite</translation> </message> <message> - <location line="+1"/> <source>Next Page</source> <translation>Nächste Seite</translation> </message> <message> - <location line="+1"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+1"/> <source>Before Current Page</source> <translation>Davor</translation> </message> <message> - <location line="+1"/> <source>After Current Page</source> <translation>Danach</translation> </message> <message> - <location line="+1"/> <source>Change Page Order...</source> <translation>Seiten umordnen....</translation> </message> <message> - <location line="+72"/> <source>Change Page Order</source> <translation>Seiten umordnen</translation> </message> <message> - <location line="+49"/> <source>Page %1 of %2</source> <translation>Seite %1 von %2</translation> </message> <message> - <location line="+10"/> - <location line="+4"/> <source>Insert Page</source> <translation>Seite einfügen</translation> </message> @@ -2376,12 +1938,10 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QStackedWidgetPreviewEventFilter</name> <message> - <location line="-153"/> <source>Go to previous page of %1 '%2' (%3/%4).</source> <translation>Gehe zur vorigen Seite von %1 '%2' (%3/%4).</translation> </message> <message> - <location line="+4"/> <source>Go to next page of %1 '%2' (%3/%4).</source> <translation>Gehe zur nächste Seite von %1 '%2' (%3/%4).</translation> </message> @@ -2389,28 +1949,22 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QTabWidgetEventFilter</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_tabwidget.cpp" line="+89"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+1"/> <source>Before Current Page</source> <translation>Davor</translation> </message> <message> - <location line="+1"/> <source>After Current Page</source> <translation>Danach</translation> </message> <message> - <location line="+283"/> <source>Page %1 of %2</source> <translation>Seite %1 von %2</translation> </message> <message> - <location line="+10"/> - <location line="+4"/> <source>Insert Page</source> <translation>Seite einfügen</translation> </message> @@ -2418,37 +1972,30 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QToolBoxHelper</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbox.cpp" line="+64"/> <source>Delete Page</source> <translation>Seite löschen</translation> </message> <message> - <location line="+1"/> <source>Before Current Page</source> <translation>Davor</translation> </message> <message> - <location line="+1"/> <source>After Current Page</source> <translation>Danach</translation> </message> <message> - <location line="+1"/> <source>Change Page Order...</source> <translation>Seiten umordnen....</translation> </message> <message> - <location line="+116"/> <source>Change Page Order</source> <translation>Seiten umordnen</translation> </message> <message> - <location line="+44"/> <source>Page %1 of %2</source> <translation>Seite %1 von %2</translation> </message> <message> - <location line="+12"/> <source>Insert Page</source> <translation>Seite einfügen</translation> </message> @@ -2456,15 +2003,10 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtBoolEdit</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="+255"/> - <location line="+10"/> - <location line="+25"/> <source>True</source> <translation>Wahr</translation> </message> <message> - <location line="-25"/> - <location line="+25"/> <source>False</source> <translation>Falsch</translation> </message> @@ -2472,12 +2014,10 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtBoolPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="+1507"/> <source>True</source> <translation>Wahr</translation> </message> <message> - <location line="+1"/> <source>False</source> <translation>Falsch</translation> </message> @@ -2485,7 +2025,6 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtCharEdit</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="+1584"/> <source>Clear Char</source> <translation>Zeichen löschen</translation> </message> @@ -2493,7 +2032,6 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtColorEditWidget</name> <message> - <location line="+605"/> <source>...</source> <translation>...</translation> </message> @@ -2501,22 +2039,18 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtColorPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="+4718"/> <source>Red</source> <translation>Rot</translation> </message> <message> - <location line="+8"/> <source>Green</source> <translation>Grün</translation> </message> <message> - <location line="+8"/> <source>Blue</source> <translation>Blau</translation> </message> <message> - <location line="+8"/> <source>Alpha</source> <translation>Alpha</translation> </message> @@ -2524,97 +2058,78 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtCursorDatabase</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="-234"/> <source>Arrow</source> <translation>Pfeil</translation> </message> <message> - <location line="+2"/> <source>Up Arrow</source> <translation>Pfeil hoch</translation> </message> <message> - <location line="+2"/> <source>Cross</source> <translation>Kreuzende Linien</translation> </message> <message> - <location line="+2"/> <source>Wait</source> <translation>Sanduhr</translation> </message> <message> - <location line="+2"/> <source>IBeam</source> <translation>IBeam</translation> </message> <message> - <location line="+2"/> <source>Size Vertical</source> <translation>Vertikal vergrößern</translation> </message> <message> - <location line="+2"/> <source>Size Horizontal</source> <translation>Horizontal vergrößern</translation> </message> <message> - <location line="+2"/> <source>Size Backslash</source> <translation>Vergrößern/Backslash</translation> </message> <message> - <location line="+2"/> <source>Size Slash</source> <translation>Vergrößern/Slash</translation> </message> <message> - <location line="+2"/> <source>Size All</source> <translation>Alles vergrößern</translation> </message> <message> - <location line="+2"/> <source>Blank</source> <translation>Leer</translation> </message> <message> - <location line="+2"/> <source>Split Vertical</source> <translation>Vertikal aufteilen</translation> </message> <message> - <location line="+2"/> <source>Split Horizontal</source> <translation>Horizontal aufteilen</translation> </message> <message> - <location line="+2"/> <source>Pointing Hand</source> <translation>Hand</translation> </message> <message> - <location line="+2"/> <source>Forbidden</source> <translation>Verboten</translation> </message> <message> - <location line="+2"/> <source>Open Hand</source> <translation>Geöffnete Hand</translation> </message> <message> - <location line="+2"/> <source>Closed Hand</source> <translation>Geschlossene Hand</translation> </message> <message> - <location line="+2"/> <source>What's This</source> <translation>What's This</translation> </message> <message> - <location line="+2"/> <source>Busy</source> <translation>Beschäftigt</translation> </message> @@ -2622,12 +2137,10 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtFontEditWidget</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qteditorfactory.cpp" line="+198"/> <source>...</source> <translation>...</translation> </message> <message> - <location line="+20"/> <source>Select Font</source> <translation>Schriftart auswählen</translation> </message> @@ -2635,37 +2148,30 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtFontPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="-351"/> <source>Family</source> <translation>Familie</translation> </message> <message> - <location line="+13"/> <source>Point Size</source> <translation>Punktgröße</translation> </message> <message> - <location line="+8"/> <source>Bold</source> <translation>Fett</translation> </message> <message> - <location line="+7"/> <source>Italic</source> <translation>Kursiv</translation> </message> <message> - <location line="+7"/> <source>Underline</source> <translation>Unterstreichen</translation> </message> <message> - <location line="+7"/> <source>Strikeout</source> <translation>Durchgestrichen</translation> </message> <message> - <location line="+7"/> <source>Kerning</source> <translation>Kerning</translation> </message> @@ -2673,7 +2179,6 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtGradientDialog</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientdialog.ui"/> <source>Edit Gradient</source> <translation>Gradienten bearbeiten</translation> </message> @@ -2681,304 +2186,242 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtGradientEditor</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.cpp" line="+431"/> <source>Start X</source> <translation>Anfangswert X</translation> </message> <message> - <location line="+4"/> <source>Start Y</source> <translation>Anfangswert Y</translation> </message> <message> - <location line="+4"/> <source>Final X</source> <translation>Endwert X</translation> </message> <message> - <location line="+4"/> <source>Final Y</source> <translation>Endwert Y</translation> </message> <message> - <location line="+7"/> - <location line="+24"/> <source>Central X</source> <translation>Mittelpunkt X</translation> </message> <message> - <location line="-20"/> - <location line="+24"/> <source>Central Y</source> <translation>Mittelpunkt Y</translation> </message> <message> - <location line="-20"/> <source>Focal X</source> <translation>Fokus X</translation> </message> <message> - <location line="+4"/> <source>Focal Y</source> <translation>Fokus Y</translation> </message> <message> - <location line="+4"/> <source>Radius</source> <translation>Radius</translation> </message> <message> - <location line="+16"/> <source>Angle</source> <translation>Winkel</translation> </message> <message> - <location line="+288"/> <source>Linear</source> <translation>Linear</translation> </message> <message> - <location line="+1"/> <source>Radial</source> <translation>Radial</translation> </message> <message> - <location line="+1"/> <source>Conical</source> <translation>Konisch</translation> </message> <message> - <location line="+20"/> <source>Pad</source> <translation>Auffüllen</translation> </message> <message> - <location line="+1"/> <source>Repeat</source> <translation>Wiederholen</translation> </message> <message> - <location line="+1"/> <source>Reflect</source> <translation>Spiegeln</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradienteditor.ui"/> <source>Form</source> <translation>Form</translation> </message> <message> - <location/> <source>Gradient Editor</source> <translation>Gradienten bearbeiten</translation> </message> <message> - <location/> <source>1</source> <translation>1</translation> </message> <message> - <location/> <source>2</source> <translation>2</translation> </message> <message> - <location/> <source>3</source> <translation>3</translation> </message> <message> - <location/> <source>4</source> <translation>4</translation> </message> <message> - <location/> <source>5</source> <translation>5</translation> </message> <message> - <location/> <source>Gradient Stops Editor</source> <translation>Bezugspunkte</translation> </message> <message> - <location/> <source>This area allows you to edit gradient stops. Double click on the existing stop handle to duplicate it. Double click outside of the existing stop handles to create a new stop. Drag & drop the handle to reposition it. Use right mouse button to popup context menu with extra actions.</source> <translation>Diese Fläche dient zum Bearbeiten der Bezugspunkte. Doppelklicken Sie auf einen Bezugspunkt, um ihn zu duplizieren. Doppelklicken Sie auf die Fläche, um einen neuen Bezugspunkt zu erzeugen. Benutzen Sie Drag & Drop um einen Punkt zu verschieben. Die rechte Maustaste aktiviert ein Menü mit weiteren Optionen.</translation> </message> <message> - <location/> <source>Zoom</source> <translation>Vergrößern</translation> </message> <message> - <location/> <source>Position</source> <translation>Position</translation> </message> <message> - <location/> <source>Hue</source> <translation>Farbton</translation> </message> <message> - <location/> <source>H</source> <translation>H</translation> </message> <message> - <location/> <source>Saturation</source> <translation>Sättigung</translation> </message> <message> - <location/> <source>S</source> <translation>S</translation> </message> <message> - <location/> <source>Sat</source> <translation>Sättigung</translation> </message> <message> - <location/> <source>Value</source> <translation>Wert</translation> </message> <message> - <location/> <source>V</source> <translation>V</translation> </message> <message> - <location/> <source>Val</source> <translation>Wert</translation> </message> <message> - <location/> <source>Alpha</source> <translation>Alpha</translation> </message> <message> - <location/> <source>A</source> <translation>A</translation> </message> <message> - <location/> <source>Type</source> <translation>Typ</translation> </message> <message> - <location/> <source>Spread</source> <translation>Ausbreitung</translation> </message> <message> - <location/> <source>Color</source> <translation>Farbe</translation> </message> <message> - <location/> <source>Current stop's color</source> <translation>Farbe des Bezugspunkts</translation> </message> <message> - <location/> <source>HSV</source> <translation>HSV</translation> </message> <message> - <location/> <source>RGB</source> <translation>RGB</translation> </message> <message> - <location/> <source>Current stop's position</source> <translation>Position des Bezugspunkts</translation> </message> <message> - <location/> <source>%</source> <translation>%</translation> </message> <message> - <location/> <source>Zoom In</source> <translation>Vergrößern</translation> </message> <message> - <location/> <source>Zoom Out</source> <translation>Verkleinern</translation> </message> <message> - <location/> <source>Toggle details extension</source> <translation>Weiter Optionen einblenden</translation> </message> <message> - <location/> <source>></source> <translation>></translation> </message> <message> - <location/> <source>Linear Type</source> <translation>Typ linear</translation> </message> <message> - <location/> <source>...</source> <translation>...</translation> </message> <message> - <location/> <source>Radial Type</source> <translation>Typ radial</translation> </message> <message> - <location/> <source>Conical Type</source> <translation>Typ konisch</translation> </message> <message> - <location/> <source>Pad Spread</source> <translation>Auffüllen</translation> </message> <message> - <location/> <source>Repeat Spread</source> <translation>Wiederholen</translation> </message> <message> - <location/> <source>Reflect Spread</source> <translation>Spiegeln</translation> </message> <message> - <location/> <source>This area shows a preview of the gradient being edited. It also allows you to edit parameters specific to the gradient's type such as start and final point, radius, etc. by drag & drop.</source> <translation>Dieser Bereich zeigt eine Vorschau des in Bearbeitung befindlichen Gradienten. Hier können Gradienttyp-spezifische Parameter, wie Start- und Endpunkt, Radius etc. per Drag & Drop bearbeitet werden.</translation> </message> <message> - <location/> <source>Show HSV specification</source> <translation>HSV-Spezifikation anzeigen</translation> </message> <message> - <location/> <source>Show RGB specification</source> <translation>RGB-Spezifikation anzeigen</translation> </message> <message> - <location/> <source>Reset Zoom</source> <translation>Vergrößerung zurücksetzen</translation> </message> @@ -2986,37 +2429,30 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtGradientStopsWidget</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopswidget.cpp" line="+947"/> <source>New Stop</source> <translation>Neuer Bezugspunkt</translation> </message> <message> - <location line="+1"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+1"/> <source>Flip All</source> <translation>Alles umkehren</translation> </message> <message> - <location line="+1"/> <source>Select All</source> <translation>Alles auswählen</translation> </message> <message> - <location line="+1"/> <source>Zoom In</source> <translation>Vergrößern</translation> </message> <message> - <location line="+1"/> <source>Zoom Out</source> <translation>Verkleinern</translation> </message> <message> - <location line="+1"/> <source>Reset Zoom</source> <translation>Vergrößerung zurücksetzen</translation> </message> @@ -3024,46 +2460,34 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtGradientView</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+107"/> <source>Grad</source> <translation>Grad</translation> </message> <message> - <location line="+26"/> <source>Remove Gradient</source> <translation>Gradient löschen</translation> </message> <message> - <location line="+1"/> <source>Are you sure you want to remove the selected gradient?</source> <translation>Möchten Sie den ausgewählten Gradienten löschen?</translation> </message> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.ui"/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+74"/> <source>New...</source> <translation>Neu...</translation> </message> <message> - <location/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+1"/> <source>Edit...</source> <translation>Ändern...</translation> </message> <message> - <location/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+1"/> <source>Rename</source> <translation>Umbenennen</translation> </message> <message> - <location/> - <location filename="../tools/shared/qtgradienteditor/qtgradientview.cpp" line="+1"/> <source>Remove</source> <translation>Löschen</translation> </message> <message> - <location/> <source>Gradient View</source> <translation>Gradientenanzeige</translation> </message> @@ -3071,8 +2495,6 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtGradientViewDialog</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientviewdialog.ui"/> - <location filename="../tools/shared/qtgradienteditor/qtgradientviewdialog.h" line="+62"/> <source>Select Gradient</source> <translation>Gradienten auswählen</translation> </message> @@ -3080,7 +2502,6 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtKeySequenceEdit</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="+249"/> <source>Clear Shortcut</source> <translation>Tastenkürzel löschen</translation> </message> @@ -3088,17 +2509,14 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtLocalePropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="-3541"/> <source>%1, %2</source> <translation>%1, %2</translation> </message> <message> - <location line="+53"/> <source>Language</source> <translation>Sprache</translation> </message> <message> - <location line="+8"/> <source>Country</source> <translation>Land</translation> </message> @@ -3106,17 +2524,14 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtPointFPropertyManager</name> <message> - <location line="+411"/> <source>(%1, %2)</source> <translation>(%1, %2)</translation> </message> <message> - <location line="+71"/> <source>X</source> <translation>X</translation> </message> <message> - <location line="+8"/> <source>Y</source> <translation>Y</translation> </message> @@ -3124,17 +2539,14 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtPointPropertyManager</name> <message> - <location line="-320"/> <source>(%1, %2)</source> <translation>(%1, %2)</translation> </message> <message> - <location line="+37"/> <source>X</source> <translation>X</translation> </message> <message> - <location line="+7"/> <source>Y</source> <translation>Y</translation> </message> @@ -3142,12 +2554,10 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtPropertyBrowserUtils</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertybrowserutils.cpp" line="-156"/> <source>[%1, %2, %3] (%4)</source> <translation>[%1, %2, %3] (%4)</translation> </message> <message> - <location line="+30"/> <source>[%1, %2]</source> <translation>[%1, %2]</translation> </message> @@ -3155,27 +2565,22 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtRectFPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="+1706"/> <source>[(%1, %2), %3 x %4]</source> <translation>[(%1, %2), %3 x %4]</translation> </message> <message> - <location line="+156"/> <source>X</source> <translation>X</translation> </message> <message> - <location line="+8"/> <source>Y</source> <translation>Y</translation> </message> <message> - <location line="+8"/> <source>Width</source> <translation>Breite</translation> </message> <message> - <location line="+9"/> <source>Height</source> <translation>Höhe</translation> </message> @@ -3183,27 +2588,22 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtRectPropertyManager</name> <message> - <location line="-612"/> <source>[(%1, %2), %3 x %4]</source> <translation>[(%1, %2), %3 x %4]</translation> </message> <message> - <location line="+120"/> <source>X</source> <translation>X</translation> </message> <message> - <location line="+7"/> <source>Y</source> <translation>Y</translation> </message> <message> - <location line="+7"/> <source>Width</source> <translation>Breite</translation> </message> <message> - <location line="+8"/> <source>Height</source> <translation>Höhe</translation> </message> @@ -3211,33 +2611,26 @@ Container-Seiten sollten ausschließlich im XML der domXML()-Methode spezifizier <context> <name>QtResourceEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="+1961"/> <source>Edit Resources</source> <translation>Ressourcen bearbeiten</translation> </message> <message> - <location line="+35"/> <source>New...</source> <translation>Neu...</translation> </message> <message> - <location line="-565"/> - <location line="+566"/> <source>New Resource File</source> <translation>Neue Ressourcendatei</translation> </message> <message> - <location line="-413"/> <source><p><b>Warning:</b> The file</p><p>%1</p><p>is outside of the current resource file's parent directory.</p></source> <translation><p><b>Hinweis:</b><p>Die gewählte Datei: </p><p>%1</p><p>befindet sich außerhalb des Verzeichnisses der Ressourcendatei:</p></translation> </message> <message> - <location line="+8"/> <source><p>To resolve the issue, press:</p><table><tr><th align="left">Copy</th><td>to copy the file to the resource file's parent directory.</td></tr><tr><th align="left">Copy As...</th><td>to copy the file into a subdirectory of the resource file's parent directory.</td></tr><tr><th align="left">Keep</th><td>to use its current location.</td></tr></table></source> <translation><p>Bitte wählen Sie:</p><table><tr><th align="left">Kopieren</th><td>um die Datei in das Verzeichnis der Ressourcendatei zu kopieren.</td></tr><tr><th align="left">Kopieren nach...</th><td>um die Datei in ein Unterverzeichnis der Ressourcendatei zu kopieren.</td></tr><tr><th align="left">Beibehalten</th><td>um die Datei in ihrem gegenwärtigen Verzeichnis zu verwenden.</td></tr></table></translation> </message> <message> - <location line="+288"/> <source>Could not copy %1 to @@ -3248,248 +2641,192 @@ zu: %2</translation> </message> <message> - <location line="+35"/> <source>A parse error occurred at line %1, column %2 of %3: %4</source> <translation>In der Datei %3 wurde bei Zeile %1, Spalte %2 ein Fehler gefunden: %4</translation> </message> <message> - <location line="+83"/> <source>Open...</source> <translation>Öffnen...</translation> </message> <message> - <location line="+2"/> - <location line="+11"/> <source>Remove</source> <translation>Löschen</translation> </message> <message> - <location line="-10"/> - <location line="+11"/> <source>Move Up</source> <translation>Nach oben</translation> </message> <message> - <location line="-10"/> - <location line="+11"/> <source>Move Down</source> <translation>Nach unten</translation> </message> <message> - <location line="-9"/> - <location line="+1"/> <source>Add Prefix</source> <translation>Präfix hinzufügen</translation> </message> <message> - <location line="+1"/> <source>Add Files...</source> <translation>Dateien hinzufügen...</translation> </message> <message> - <location line="+1"/> <source>Change Prefix</source> <translation>Präfix ändern</translation> </message> <message> - <location line="+1"/> <source>Change Language</source> <translation>Sprache ändern</translation> </message> <message> - <location line="+1"/> <source>Change Alias</source> <translation>Alias ändern</translation> </message> <message> - <location line="+1"/> <source>Clone Prefix...</source> <translation>Präfix doppeln...</translation> </message> <message> - <location line="+37"/> <source>Prefix / Path</source> <translation>Präfix / Pfad</translation> </message> <message> - <location line="+1"/> <source>Language / Alias</source> <translation>Sprache / Alias</translation> </message> <message> - <location line="+117"/> <source><html><p><b>Warning:</b> There have been problems while reloading the resources:</p><pre>%1</pre></html></source> <translation><html><p><b>Warnung:</b> Beim Neuladen der Ressourcen traten Fehler auf:</p><pre>%1</pre></html></translation> </message> <message> - <location line="+2"/> <source>Resource Warning</source> <translation>Ressourcen - Warnung</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.ui"/> <source>Dialog</source> <translation>Dialog</translation> </message> <message> - <location/> <source>New File</source> <translation>Neue Datei</translation> </message> <message> - <location/> <source>N</source> <translation>N</translation> </message> <message> - <location/> <source>Remove File</source> <translation>Datei löschen</translation> </message> <message> - <location/> <source>R</source> <translation>L</translation> </message> <message> - <location/> <source>I</source> <translation>I</translation> </message> <message> - <location/> <source>New Resource</source> <translation>Neue Ressource</translation> </message> <message> - <location/> <source>A</source> <translation>A</translation> </message> <message> - <location/> <source>Remove Resource or File</source> <translation>Datei oder Ressource löschen</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceeditordialog.cpp" line="-2091"/> <source>%1 already exists. Do you want to replace it?</source> <translation>Die Datei %1 existiert bereits. Wollen Sie sie überschreiben?</translation> </message> <message> - <location line="+5"/> <source>The file does not appear to be a resource file; element '%1' was found where '%2' was expected.</source> <translation>Die Datei ist offenbar keine Ressourcendatei; an Stelle des erwarteten Elements '%2' wurde das Element '%1' gefunden.</translation> </message> <message> - <location line="+902"/> <source>%1 [read-only]</source> <translation>%1 [schreibgeschützt]</translation> </message> <message> - <location line="+2"/> - <location line="+198"/> <source>%1 [missing]</source> <translation>%1 [fehlt]</translation> </message> <message> - <location line="-72"/> <source><no prefix></source> <translation><kein Präfix></translation> </message> <message> - <location line="+322"/> - <location line="+25"/> <source>Resource files (*.qrc)</source> <translation>Ressourcendateien (*.qrc)</translation> </message> <message> - <location line="-2"/> <source>Import Resource File</source> <translation>Ressourcendatei importieren</translation> </message> <message> - <location line="+112"/> <source>newPrefix</source> <translation>newPrefix</translation> </message> <message> - <location line="+49"/> <source>Add Files</source> <translation>Dateien hinzufügen</translation> </message> <message> - <location line="+21"/> <source>Incorrect Path</source> <translation>Fehlerhafte Pfadangabe</translation> </message> <message> - <location line="+3"/> - <location line="+19"/> - <location line="+212"/> - <location line="+7"/> <source>Copy</source> <translation>Kopieren</translation> </message> <message> - <location line="-236"/> <source>Copy As...</source> <translation>Kopieren nach...</translation> </message> <message> - <location line="+2"/> <source>Keep</source> <translation>Beibehalten</translation> </message> <message> - <location line="+2"/> <source>Skip</source> <translation>Überspringen</translation> </message> <message> - <location line="+87"/> <source>Clone Prefix</source> <translation>Präfix doppeln</translation> </message> <message> - <location line="+1"/> <source>Enter the suffix which you want to add to the names of the cloned files. This could for example be a language extension like "_de".</source> <translation>Bitte geben Sie den Suffix ein, der an den Namen der gedoppelten Dateien angehängt werden soll. Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation> </message> <message> - <location line="+113"/> - <location line="+4"/> <source>Copy As</source> <translation>Kopieren nach</translation> </message> <message> - <location line="+1"/> <source><p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p></source> <translation><p>Die gewählte Datei: </p><p>%1</p><p>befindet sich außerhalb des Verzeichnisses der Ressourcendatei:</p><p>%2</p><p>Bitte wählen Sie einen anderen Pfad, der im Verzeichnis der Ressourcendatei enthalten ist.</p></translation> </message> <message> - <location line="+20"/> <source>Could not overwrite %1.</source> <translation>%1 konnte nicht überschrieben werden.</translation> </message> <message> - <location line="+54"/> <source>Save Resource File</source> <translation>Ressourcendatei speichern</translation> </message> <message> - <location line="+1"/> <source>Could not write %1: %2</source> <translation>Die Datei %1konnte nicht geschrieben werden: %2</translation> </message> <message> - <location line="+71"/> <source>Open Resource File</source> <translation>Ressourcendatei öffnen</translation> </message> @@ -3497,24 +2834,20 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>QtResourceView</name> <message> - <location filename="../tools/designer/src/lib/shared/qtresourceview.cpp" line="+567"/> <source>Size: %1 x %2 %3</source> <translation>Größe: %1 x %2 %3</translation> </message> <message> - <location line="+20"/> <source>Edit Resources...</source> <translation>Ressourcen bearbeiten...</translation> </message> <message> - <location line="+6"/> <source>Reload</source> <translation>Neu laden</translation> </message> <message> - <location line="+7"/> <source>Copy Path</source> <translation>Pfad kopieren</translation> </message> @@ -3522,7 +2855,6 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>QtResourceViewDialog</name> <message> - <location line="+252"/> <source>Select Resource</source> <translation>Ressource auswählen</translation> </message> @@ -3530,17 +2862,14 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>QtSizeFPropertyManager</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qtpropertymanager.cpp" line="-535"/> <source>%1 x %2</source> <translation>%1 x %2</translation> </message> <message> - <location line="+130"/> <source>Width</source> <translation>Breite</translation> </message> <message> - <location line="+9"/> <source>Height</source> <translation>Höhe</translation> </message> @@ -3548,33 +2877,26 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>QtSizePolicyPropertyManager</name> <message> - <location line="+1709"/> - <location line="+1"/> <source><Invalid></source> <translation><Ungültig></translation> </message> <message> - <location line="+1"/> <source>[%1, %2, %3, %4]</source> <translation>[%1, %2, %3, %4]</translation> </message> <message> - <location line="+45"/> <source>Horizontal Policy</source> <translation>Horizontale Einstellung</translation> </message> <message> - <location line="+9"/> <source>Vertical Policy</source> <translation>Vertikale Einstellung</translation> </message> <message> - <location line="+9"/> <source>Horizontal Stretch</source> <translation>Horizontaler Dehnungsfaktor</translation> </message> <message> - <location line="+8"/> <source>Vertical Stretch</source> <translation>Vertikaler Dehnungsfaktor</translation> </message> @@ -3582,17 +2904,14 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>QtSizePropertyManager</name> <message> - <location line="-2286"/> <source>%1 x %2</source> <translation>%1 x %2</translation> </message> <message> - <location line="+96"/> <source>Width</source> <translation>Breite</translation> </message> <message> - <location line="+8"/> <source>Height</source> <translation>Höhe</translation> </message> @@ -3600,107 +2919,86 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>QtToolBarDialog</name> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.cpp" line="+1784"/> <source>< S E P A R A T O R ></source> <translation>< T R E N N E R ></translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui"/> <source>Customize Toolbars</source> <translation>Werkzeugleisten anpassen</translation> </message> <message> - <location/> <source>1</source> <translation>1</translation> </message> <message> - <location/> <source>Actions</source> <translation>Aktionen</translation> </message> <message> - <location/> <source>Toolbars</source> <translation>Werkzeugleisten</translation> </message> <message> - <location/> <source>New</source> <translation>Neu</translation> </message> <message> - <location/> <source>Remove</source> <translation>Löschen</translation> </message> <message> - <location/> <source>Rename</source> <translation>Umbenennen</translation> </message> <message> - <location/> <source>Up</source> <translation>Nach oben</translation> </message> <message> - <location/> <source><-</source> <translation><-</translation> </message> <message> - <location/> <source>-></source> <translation>-></translation> </message> <message> - <location/> <source>Down</source> <translation>Nach unten</translation> </message> <message> - <location/> <source>Current Toolbar Actions</source> <translation>Aktionen</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.cpp" line="-544"/> <source>Custom Toolbar</source> <translation>Benutzerdefinierte Werkzeugleiste</translation> </message> <message> - <location filename="../tools/shared/qttoolbardialog/qttoolbardialog.ui"/> <source>Add new toolbar</source> <translation>Neue Werkzeugleiste hinzufügen</translation> </message> <message> - <location/> <source>Remove selected toolbar</source> <translation>Ausgewählte Werkzeugleiste '%1' löschen</translation> </message> <message> - <location/> <source>Rename toolbar</source> <translation>Werkzeugleiste umbenennen</translation> </message> <message> - <location/> <source>Move action up</source> <translation>Aktion eins nach oben</translation> </message> <message> - <location/> <source>Remove action from toolbar</source> <translation>Aktion aus Werkzeugleiste entfernen</translation> </message> <message> - <location/> <source>Add action to toolbar</source> <translation>Aktion zu Werkzeugleiste hinzufügen</translation> </message> <message> - <location/> <source>Move action down</source> <translation>Aktion eins nach unten</translation> </message> @@ -3708,12 +3006,10 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>QtTreePropertyBrowser</name> <message> - <location filename="../tools/shared/qtpropertybrowser/qttreepropertybrowser.cpp" line="+442"/> <source>Property</source> <translation>Eigenschaft</translation> </message> <message> - <location line="+1"/> <source>Value</source> <translation>Wert</translation> </message> @@ -3721,64 +3017,52 @@ Dies kann zum Beispiel eine Sprachkennung wie "_de" sein.</translation <context> <name>SaveFormAsTemplate</name> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.cpp" line="+72"/> <source>Add path...</source> <translation>Verzeichnis anlegen...</translation> </message> <message> - <location line="+23"/> <source>Template Exists</source> <translation>Die Vorlage existiert bereits</translation> </message> <message> - <location line="+1"/> <source>A template with the name %1 already exists. Do you want overwrite the template?</source> <translation>Es existiert bereits eine Vorlage mit dem Namen %1. Möchten Sie sie überschreiben?</translation> </message> <message> - <location line="+3"/> <source>Overwrite Template</source> <translation>Vorlage überschreiben</translation> </message> <message> - <location line="+7"/> <source>Open Error</source> <translation>Fehler beim Öffnen</translation> </message> <message> - <location line="+1"/> <source>There was an error opening template %1 for writing. Reason: %2</source> <translation>Die Vorlage %1 konnte nicht in eine Datei geschrieben werden: %2</translation> </message> <message> - <location line="+13"/> <source>Write Error</source> <translation>Schreibfehler</translation> </message> <message> - <location line="+1"/> <source>There was an error writing the template %1 to disk. Reason: %2</source> <translation>Die Vorlage %1 konnte nicht in eine Datei geschrieben werden: %2</translation> </message> <message> - <location line="+27"/> <source>Pick a directory to save templates in</source> <translation>Wählen Sie ein Verzeichnis zum Abspeichern der Vorlagen aus</translation> </message> <message> - <location filename="../tools/designer/src/designer/saveformastemplate.ui"/> <source>Save Form As Template</source> <translation>Formular als Vorlage abspeichern</translation> </message> <message> - <location/> <source>&Category:</source> <translation>&Kategorie:</translation> </message> <message> - <location/> <source>&Name:</source> <translation>&Name:</translation> </message> @@ -3786,7 +3070,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>ScriptErrorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/scripterrordialog.cpp" line="+59"/> <source>An error occurred while running the scripts for "%1": </source> <translation>Bei der Ausführung der Skripte für "%1" sind Fehler aufgetreten: @@ -3796,22 +3079,18 @@ Möchten Sie sie überschreiben?</translation> <context> <name>SelectSignalDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/selectsignaldialog.ui"/> <source>Go to slot</source> <translation></translation> </message> <message> - <location/> <source>Select signal</source> <translation></translation> </message> <message> - <location/> <source>signal</source> <translation>Signal</translation> </message> <message> - <location/> <source>class</source> <translation>Klasse</translation> </message> @@ -3819,7 +3098,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>SignalSlotConnection</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor.cpp" line="-358"/> <source>SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4)</source> <translation>SENDER(%1), SIGNAL(%2), EMPFÄNGER(%3), SLOT(%4)</translation> </message> @@ -3827,32 +3105,26 @@ Möchten Sie sie überschreiben?</translation> <context> <name>SignalSlotDialogClass</name> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.ui"/> <source>Signals and slots</source> <translation>Signale und Slots</translation> </message> <message> - <location/> <source>Slots</source> <translation>Slots</translation> </message> <message> - <location/> <source>...</source> <translation>...</translation> </message> <message> - <location/> <source>Signals</source> <translation>Signale</translation> </message> <message> - <location/> <source>Add</source> <translation>Hinzufügen</translation> </message> <message> - <location/> <source>Delete</source> <translation>Löschen</translation> </message> @@ -3860,12 +3132,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>Spacer</name> <message> - <location filename="../tools/designer/src/lib/shared/spacer_widget.cpp" line="+275"/> <source>Horizontal Spacer '%1', %2 x %3</source> <translation>Horizontales Füllelement '%1', %2 x %3</translation> </message> <message> - <location line="+0"/> <source>Vertical Spacer '%1', %2 x %3</source> <translation>Vertikales Füllelement '%1', %2 x %3</translation> </message> @@ -3873,7 +3143,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>TemplateOptionsPage</name> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.cpp" line="+156"/> <source>Template Paths</source> <extracomment>Tab in preferences dialog</extracomment> <translation>Verzeichnisse für Vorlagen</translation> @@ -3882,52 +3151,42 @@ Möchten Sie sie überschreiben?</translation> <context> <name>ToolBarManager</name> <message> - <location filename="../tools/designer/src/designer/mainwindow.cpp" line="+89"/> <source>Configure Toolbars...</source> <translation>Werkzeugleiste konfigurieren...</translation> </message> <message> - <location line="+15"/> <source>Window</source> <translation>Fenster</translation> </message> <message> - <location line="+1"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location line="+7"/> <source>Style</source> <translation>Stil</translation> </message> <message> - <location line="+2"/> <source>Dock views</source> <translation>Dockfenster</translation> </message> <message> - <location line="+6"/> <source>File</source> <translation>Datei</translation> </message> <message> - <location line="+4"/> <source>Edit</source> <translation>Bearbeiten</translation> </message> <message> - <location line="+4"/> <source>Tools</source> <translation>Werkzeuge</translation> </message> <message> - <location line="+4"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location line="+4"/> <source>Toolbars</source> <translation>Werkzeugleisten</translation> </message> @@ -3935,30 +3194,64 @@ Möchten Sie sie überschreiben?</translation> <context> <name>VersionDialog</name> <message> - <location filename="../tools/designer/src/designer/versiondialog.cpp" line="+170"/> <source><h3>%1</h3><br/><br/>Version %2</source> <translation><h3>%1</h3><br/><br/>Version %2</translation> </message> <message> - <location line="+1"/> <source>Qt Designer</source> <translation>Qt Designer</translation> </message> <message> - <location line="+1"/> <source><br/>Qt Designer is a graphical user interface designer for Qt applications.<br/></source> <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> <source>%1<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> <translation type="unfinished"></translation> </message> </context> <context> + <name>VideoPlayerTaskMenu</name> + <message> + <source>Available Mime Types</source> + <translation>Verfügbare Mime-Typen</translation> + </message> + <message> + <source>Display supported mime types...</source> + <translation>Verfügbare Mime-Typen anzeigen...</translation> + </message> + <message> + <source>Load...</source> + <translation>Laden...</translation> + </message> + <message> + <source>Play</source> + <translation>Wiedergabe</translation> + </message> + <message> + <source>Pause</source> + <translation>Pause</translation> + </message> + <message> + <source>Stop</source> + <translation>Stop</translation> + </message> + <message> + <source>Choose Video Player Media Source</source> + <translation>Medienquelle wählen</translation> + </message> + <message> + <source>An error has occurred in '%1': %2</source> + <translation>In '%1' ist ein Fehler aufgetreten: %2</translation> + </message> + <message> + <source>Video Player Error</source> + <translation>Video Player Fehler</translation> + </message> +</context> +<context> <name>WidgetDataBase</name> <message> - <location filename="../tools/designer/src/lib/shared/widgetdatabase.cpp" line="+814"/> <source>The file contains a custom widget '%1' whose base class (%2) differs from the current entry in the widget database (%3). The widget database is left unchanged.</source> <translation>Die Datei enthält ein benutzerdefiniertes Widget '%1' dessen Basisklasse (%2) nicht mit dem Eintrag in der Widget-Datenbank übereinstimmt. Die Widget-Datenbank wird nicht geändert.</translation> </message> @@ -3966,87 +3259,70 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ActionEditor</name> <message> - <location filename="../tools/designer/src/lib/shared/actioneditor.cpp" line="+139"/> <source>Actions</source> <translation>Aktionen</translation> </message> <message> - <location line="-16"/> <source>New...</source> <translation>Neu...</translation> </message> <message> - <location line="+7"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+313"/> <source>New action</source> <translation>Neue Aktion</translation> </message> <message> - <location line="+98"/> <source>Edit action</source> <translation>Aktion ändern</translation> </message> <message> - <location line="-417"/> <source>Edit...</source> <translation>Ändern...</translation> </message> <message> - <location line="+1"/> <source>Go to slot...</source> <translation>Slot anzeigen...</translation> </message> <message> - <location line="+1"/> <source>Copy</source> <translation>Kopieren</translation> </message> <message> - <location line="+1"/> <source>Cut</source> <translation>Ausschneiden</translation> </message> <message> - <location line="+1"/> <source>Paste</source> <translation>Einfügen</translation> </message> <message> - <location line="+1"/> <source>Select all</source> <translation>Alles auswählen</translation> </message> <message> - <location line="+62"/> <source>Icon View</source> <translation>Icon-Ansicht</translation> </message> <message> - <location line="+6"/> <source>Detailed View</source> <translation>Detaillierte Ansicht</translation> </message> <message> - <location line="+413"/> <source>Remove actions</source> <translation> Aktionen löschen</translation> </message> <message> - <location line="+0"/> <source>Remove action '%1'</source> <translation>Aktion '%1' löschen</translation> </message> <message> - <location line="+186"/> <source>Used In</source> <translation>Verwendet in</translation> </message> <message> - <location line="-608"/> <source>Configure Action Editor</source> <translation>Aktionseditor konfigurieren</translation> </message> @@ -4054,32 +3330,26 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ActionModel</name> <message> - <location filename="../tools/designer/src/lib/shared/actionrepository.cpp" line="+89"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+1"/> <source>Used</source> <translation>Verwendet</translation> </message> <message> - <location line="+1"/> <source>Text</source> <translation>Text</translation> </message> <message> - <location line="+1"/> <source>Shortcut</source> <translation>Tastenkürzel</translation> </message> <message> - <location line="+1"/> <source>Checkable</source> <translation>Ankreuzbar</translation> </message> <message> - <location line="+1"/> <source>ToolTip</source> <translation>ToolTip</translation> </message> @@ -4087,27 +3357,22 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::BrushManagerProxy</name> <message> - <location filename="../tools/designer/src/components/formeditor/brushmanagerproxy.cpp" line="+219"/> <source>The element '%1' is missing the required attribute '%2'.</source> <translation>Bei dem Element fehlt das erforderliche Attribut '%2'.</translation> </message> <message> - <location line="+11"/> <source>Empty brush name encountered.</source> <translation>Fehlender Name bei der Brush-Definition.</translation> </message> <message> - <location line="+10"/> <source>An unexpected element '%1' was encountered.</source> <translation>Ein ungültiges Element '%1' wurde festgestellt.</translation> </message> <message> - <location line="+7"/> <source>An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4</source> <translation>Fehler beim Lesen der Brush-Datei '%1' bei Zeile %2, Spalte %3: %4</translation> </message> <message> - <location line="+43"/> <source>An error occurred when reading the resource file '%1' at line %2, column %3: %4</source> <translation>Fehler beim Lesen der Ressourcen-Datei '%1' bei Zeile %2, Spalte %3: %4</translation> </message> @@ -4115,17 +3380,14 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::BuddyEditor</name> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor.cpp" line="+261"/> <source>Add buddy</source> <translation>Buddy hinzufügen</translation> </message> <message> - <location line="+52"/> <source>Remove buddies</source> <translation>Buddies löschen</translation> </message> <message numerus="yes"> - <location line="+24"/> <source>Remove %n buddies</source> <translation> <numerusform>Buddy löschen</numerusform> @@ -4133,7 +3395,6 @@ Möchten Sie sie überschreiben?</translation> </translation> </message> <message numerus="yes"> - <location line="+51"/> <source>Add %n buddies</source> <translation> <numerusform>Buddy hinzufügen</numerusform> @@ -4141,7 +3402,6 @@ Möchten Sie sie überschreiben?</translation> </translation> </message> <message> - <location line="+47"/> <source>Set automatically</source> <translation>Automatisch setzen</translation> </message> @@ -4149,7 +3409,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::BuddyEditorPlugin</name> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor_plugin.cpp" line="+73"/> <source>Edit Buddies</source> <translation>Buddies bearbeiten</translation> </message> @@ -4157,7 +3416,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::BuddyEditorTool</name> <message> - <location filename="../tools/designer/src/components/buddyeditor/buddyeditor_tool.cpp" line="+56"/> <source>Edit Buddies</source> <translation>Buddies bearbeiten</translation> </message> @@ -4165,12 +3423,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ButtonGroupMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+7"/> <source>Select members</source> <translation>Mitglieder auswählen</translation> </message> <message> - <location line="+1"/> <source>Break</source> <translation>Aufheben</translation> </message> @@ -4178,32 +3434,26 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ButtonTaskMenu</name> <message> - <location line="+121"/> <source>Assign to button group</source> <translation>Gruppierung</translation> </message> <message> - <location line="+2"/> <source>Button group</source> <translation>Gruppierung</translation> </message> <message> - <location line="+1"/> <source>New button group</source> <translation>Neue Gruppierung</translation> </message> <message> - <location line="+1"/> <source>Change text...</source> <translation>Text ändern...</translation> </message> <message> - <location line="+1"/> <source>None</source> <translation>Keine</translation> </message> <message> - <location line="+101"/> <source>Button group '%1'</source> <translation>Gruppierung '%1'</translation> </message> @@ -4211,57 +3461,46 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::CodeDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/codedialog.cpp" line="+95"/> <source>Save...</source> <translation>Speichern...</translation> </message> <message> - <location line="+4"/> <source>Copy All</source> <translation>Alles kopieren</translation> </message> <message> - <location line="+5"/> <source>&Find in Text...</source> <translation>&Suchen...</translation> </message> <message> - <location line="+75"/> <source>A temporary form file could not be created in %1.</source> <translation>In dem Verzeichnis %1 konnte keine temporäre Formulardatei angelegt werden.</translation> </message> <message> - <location line="+6"/> <source>The temporary form file %1 could not be written.</source> <translation>Die temporäre Formulardatei %1 konnte nicht geschrieben werden.</translation> </message> <message> - <location line="+21"/> <source>%1 - [Code]</source> <translation>%1 - [Code]</translation> </message> <message> - <location line="+23"/> <source>Save Code</source> <translation>Code speichern</translation> </message> <message> - <location line="+0"/> <source>Header Files (*.%1)</source> <translation>Include-Dateien (*.%1)</translation> </message> <message> - <location line="+6"/> <source>The file %1 could not be opened: %2</source> <translation>Die Datei %1 konnte nicht geöffnet werden: %2</translation> </message> <message> - <location line="+5"/> <source>The file %1 could not be written: %2</source> <translation>Die Datei %1 konnte nicht geschrieben werden: %2</translation> </message> <message> - <location line="+11"/> <source>%1 - Error</source> <translation>%1 - Fehler</translation> </message> @@ -4269,7 +3508,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ColorAction</name> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="+246"/> <source>Text Color</source> <translation>Schriftfarbe</translation> </message> @@ -4277,12 +3515,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ComboBoxTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/combobox_taskmenu.cpp" line="+68"/> <source>Edit Items...</source> <translation>Einträge ändern...</translation> </message> <message> - <location line="+38"/> <source>Change Combobox Contents</source> <translation>Inhalt der Combobox ändern</translation> </message> @@ -4290,7 +3526,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::CommandLinkButtonTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/button_taskmenu.cpp" line="+156"/> <source>Change description...</source> <translation>Beschreibung ändern...</translation> </message> @@ -4298,17 +3533,14 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ConnectionEdit</name> <message> - <location filename="../tools/designer/src/lib/shared/connectionedit.cpp" line="+1313"/> <source>Select All</source> <translation>Alles auswählen</translation> </message> <message> - <location line="+8"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="-5"/> <source>Deselect All</source> <translation>Auswahl rücksetzen</translation> </message> @@ -4316,52 +3548,42 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ConnectionModel</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp" line="-465"/> <source>Sender</source> <translation>Sender</translation> </message> <message> - <location line="+1"/> <source>Signal</source> <translation></translation> </message> <message> - <location line="+1"/> <source>Receiver</source> <translation>Empfänger</translation> </message> <message> - <location line="+1"/> <source>Slot</source> <translation>Slot</translation> </message> <message> - <location line="+90"/> <source><sender></source> <translation><Sender></translation> </message> <message> - <location line="+1"/> <source><signal></source> <translation><Signal></translation> </message> <message> - <location line="+1"/> <source><receiver></source> <translation><Receiver></translation> </message> <message> - <location line="+1"/> <source><slot></source> <translation><Slot></translation> </message> <message> - <location line="+110"/> <source>Signal and Slot Editor</source> <translation>Signal/Slot editor</translation> </message> <message> - <location line="-2"/> <source>The connection already exists!<br>%1</source> <translation>Diese Verbindung existiert bereits!<br>%1</br></translation> </message> @@ -4369,42 +3591,34 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ContainerWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="+107"/> <source>Insert Page Before Current Page</source> <translation>Seite davor einfügen</translation> </message> <message> - <location line="+4"/> <source>Insert Page After Current Page</source> <translation>Seite danach einfügen</translation> </message> <message> - <location line="+8"/> <source>Add Subwindow</source> <translation>Subfenster hinzufügen</translation> </message> <message> - <location line="-40"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+25"/> <source>Insert</source> <translation>Einfügen</translation> </message> <message> - <location line="+53"/> <source>Subwindow</source> <translation>Subwindow</translation> </message> <message> - <location line="+2"/> <source>Page</source> <translation>Seite</translation> </message> <message> - <location line="+1"/> <source>Page %1 of %2</source> <translation>Seite %1 von %2</translation> </message> @@ -4412,19 +3626,16 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::DPI_Chooser</name> <message> - <location filename="../tools/designer/src/components/formeditor/dpi_chooser.cpp" line="+52"/> <source> x </source> <extracomment>DPI X/Y separator</extracomment> <translation> x </translation> </message> <message> - <location line="-25"/> <source>System (%1 x %2)</source> <extracomment>System resolution</extracomment> <translation>System (%1 x %2)</translation> </message> <message> - <location line="+7"/> <source>User defined</source> <translation>Benutzerdefiniert</translation> </message> @@ -4432,49 +3643,38 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::DesignerPropertyManager</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="+647"/> - <location line="+6"/> <source>AlignLeft</source> <translation>Linksbündig ausrichten</translation> </message> <message> - <location line="-5"/> <source>AlignHCenter</source> <translation>Horizontal zentrieren</translation> </message> <message> - <location line="+1"/> <source>AlignRight</source> <translation>Rechtsbündig ausrichten</translation> </message> <message> - <location line="+1"/> <source>AlignJustify</source> <translation>Blocksatz</translation> </message> <message> - <location line="+9"/> <source>AlignTop</source> <translation>Am oberen Rand ausrichten</translation> </message> <message> - <location line="+1"/> - <location line="+4"/> <source>AlignVCenter</source> <translation>Vertikal zentrieren</translation> </message> <message> - <location line="-3"/> <source>AlignBottom</source> <translation>Am unteren Rand zentrieren</translation> </message> <message> - <location line="+565"/> <source>%1, %2</source> <translation>%1, %2</translation> </message> <message numerus="yes"> - <location line="+6"/> <source>Customized (%n roles)</source> <translation> <numerusform>Angepasst (eine Rolle)</numerusform> @@ -4482,75 +3682,58 @@ Möchten Sie sie überschreiben?</translation> </translation> </message> <message> - <location line="+1"/> <source>Inherited</source> <translation>Geerbt</translation> </message> <message> - <location line="+566"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location line="+9"/> <source>Vertical</source> <translation>Vertikal</translation> </message> <message> - <location line="+15"/> <source>Normal Off</source> <translation>Normal, aus</translation> </message> <message> - <location line="+1"/> <source>Normal On</source> <translation>Normal, ein</translation> </message> <message> - <location line="+1"/> <source>Disabled Off</source> <translation>Nicht verfügbar, aus</translation> </message> <message> - <location line="+1"/> <source>Disabled On</source> <translation>Verfügbar, ein</translation> </message> <message> - <location line="+1"/> <source>Active Off</source> <translation>Aktiv, aus</translation> </message> <message> - <location line="+1"/> <source>Active On</source> <translation>Aktiv, ein</translation> </message> <message> - <location line="+1"/> <source>Selected Off</source> <translation>Ausgewählt, aus</translation> </message> <message> - <location line="+1"/> <source>Selected On</source> <translation>Ausgewählt, ein</translation> </message> <message> - <location line="+7"/> - <location line="+21"/> <source>translatable</source> <translation>Übersetzung</translation> </message> <message> - <location line="-15"/> - <location line="+21"/> <source>disambiguation</source> <translation>Kennung</translation> </message> <message> - <location line="-15"/> - <location line="+21"/> <source>comment</source> <translation>Kommentar</translation> </message> @@ -4558,48 +3741,38 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::DeviceProfileDialog</name> <message> - <location filename="../tools/designer/src/components/formeditor/deviceprofiledialog.cpp" line="+63"/> <source>Device Profiles (*.%1)</source> <translation>Profile</translation> </message> <message> - <location line="+31"/> <source>Default</source> <translation>Vorgabe</translation> </message> <message> - <location line="+67"/> <source>Save Profile</source> <translation>Profil speichern</translation> </message> <message> - <location line="+10"/> <source>Save Profile - Error</source> <translation>Fehler beim Speichern des Profils</translation> </message> <message> - <location line="+0"/> <source>Unable to open the file '%1' for writing: %2</source> <translation>Die Datei '%1' konnte nicht zum Schreiben geöffnet werden: %2</translation> </message> <message> - <location line="+14"/> <source>Unable to open the file '%1' for reading: %2</source> <translation>Die Datei '%1' konnte nicht zum Lesen geöffnet werden: %2</translation> </message> <message> - <location line="+6"/> <source>'%1' is not a valid profile: %2</source> <translation>'%1' ist kein gültiges Profil: %2</translation> </message> <message> - <location line="-12"/> <source>Open profile</source> <translation>Profil öffnen</translation> </message> <message> - <location line="+6"/> - <location line="+6"/> <source>Open Profile - Error</source> <translation>Fehler beim Öffnen des Profils</translation> </message> @@ -4607,57 +3780,46 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::Dialog</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditor.ui"/> <source>Dialog</source> <translation>Dialog</translation> </message> <message> - <location/> <source>StringList</source> <translation>Liste von Zeichenketten</translation> </message> <message> - <location/> <source>New String</source> <translation>Neue Zeichenkette</translation> </message> <message> - <location/> <source>&New</source> <translation>&Neu</translation> </message> <message> - <location/> <source>Delete String</source> <translation>Zeichenkette löschen</translation> </message> <message> - <location/> <source>&Delete</source> <translation>&Löschen</translation> </message> <message> - <location/> <source>&Value:</source> <translation>&Wert:</translation> </message> <message> - <location/> <source>Move String Up</source> <translation>Zeichenkette eins nach oben</translation> </message> <message> - <location/> <source>Up</source> <translation>Hoch</translation> </message> <message> - <location/> <source>Move String Down</source> <translation>Zeichenkette eins nach unten</translation> </message> <message> - <location/> <source>Down</source> <translation>Runter</translation> </message> @@ -4665,52 +3827,42 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::EmbeddedOptionsControl</name> <message> - <location filename="../tools/designer/src/components/formeditor/embeddedoptionspage.cpp" line="-260"/> <source>None</source> <translation>Vorgabe</translation> </message> <message> - <location line="+4"/> <source>Add a profile</source> <translation>Profil hinzufügen</translation> </message> <message> - <location line="+6"/> <source>Edit the selected profile</source> <translation>Ausgewähltes Profil modifizieren</translation> </message> <message> - <location line="+4"/> <source>Delete the selected profile</source> <translation>Ausgewähltes Profil löschen</translation> </message> <message> - <location line="+22"/> <source>Add Profile</source> <translation>Profil hinzufügen</translation> </message> <message> - <location line="+7"/> <source>New profile</source> <translation>Neues Profil</translation> </message> <message> - <location line="+35"/> <source>Edit Profile</source> <translation>Profil ändern</translation> </message> <message> - <location line="+26"/> <source>Delete Profile</source> <translation>Profil löschen</translation> </message> <message> - <location line="+1"/> <source>Would you like to delete the profile '%1'?</source> <translation>Möchten Sie das Profil '%1' löschen?</translation> </message> <message> - <location line="+55"/> <source>Default</source> <translation>Vorgabe</translation> </message> @@ -4718,12 +3870,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::FilterWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/filterwidget.cpp" line="+160"/> <source>Filter</source> <translation>Filter</translation> </message> <message> - <location line="+36"/> <source>Clear text</source> <translation>Text löschen</translation> </message> @@ -4731,12 +3881,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::FormEditor</name> <message> - <location filename="../tools/designer/src/components/formeditor/formeditor.cpp" line="+190"/> <source>Resource File Changed</source> <translation>Änderung einer Ressourcendatei</translation> </message> <message> - <location line="+1"/> <source>The file "%1" has changed outside Designer. Do you want to reload it?</source> <translation>Die Ressourcendatei "%1" wurde außerhalb Designer geändert. Möchten Sie sie neu laden?</translation> </message> @@ -4744,7 +3892,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::FormLayoutMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/formlayoutmenu.cpp" line="+24"/> <source>Add form layout row...</source> <translation>Zeile hinzufügen...</translation> </message> @@ -4752,43 +3899,34 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::FormWindow</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindow.cpp" line="-1322"/> <source>Edit contents</source> <translation>Ändern</translation> </message> <message> - <location line="+1"/> <source>F2</source> <translation>F2</translation> </message> <message> - <location line="+840"/> <source>Resize</source> <translation>Größe ändern</translation> </message> <message> - <location line="+248"/> <source>Key Move</source> <translation>Verschieben mittels Tastatur</translation> </message> <message> - <location line="+317"/> <source>Paste error</source> <translation>Fehler beim Einfügen</translation> </message> <message> - <location line="+448"/> <source>Lay out</source> <translation>Layout</translation> </message> <message> - <location line="+485"/> - <location line="+55"/> <source>Drop widget</source> <translation>Widget einfügen</translation> </message> <message numerus="yes"> - <location line="-1053"/> <source>Paste %n action(s)</source> <translation> <numerusform>Eine Aktion einfügen</numerusform> @@ -4796,17 +3934,14 @@ Möchten Sie sie überschreiben?</translation> </translation> </message> <message> - <location line="-565"/> <source>Insert widget '%1'</source> <translation>Widget '%1' einfügen</translation> </message> <message> - <location line="+313"/> <source>Key Resize</source> <translation>Größe ändern mittels Tastatur</translation> </message> <message numerus="yes"> - <location line="+254"/> <source>Paste %n widget(s)</source> <translation> <numerusform>Widget einfügen</numerusform> @@ -4814,37 +3949,30 @@ Möchten Sie sie überschreiben?</translation> </translation> </message> <message> - <location line="+1"/> <source>Paste (%1 widgets, %2 actions)</source> <translation>Einfügen (%1 Widgets, %2 Aktionen)</translation> </message> <message> - <location line="+56"/> <source>Cannot paste widgets. Designer could not find a container without a layout to paste into.</source> <translation>Die Widgets konnten nicht eingefügt werden, da kein Container gefunden werden konnte, der nicht bereits ein Layout hat.</translation> </message> <message> - <location line="+2"/> <source>Break the layout of the container you want to paste into, select this container and then paste again.</source> <translation>Bitte lösen Sie das Layout des gewünschten Containers auf und wählen Sie ihn erneut aus, um die Widgets einzufügen.</translation> </message> <message> - <location line="+406"/> <source>Select Ancestor</source> <translation>Übergeordnetes Widget auswählen</translation> </message> <message> - <location line="+573"/> <source>A QMainWindow-based form does not contain a central widget.</source> <translation>Ein auf QMainWindow basierendes Formular enthält kein zentrales Widget.</translation> </message> <message> - <location line="-794"/> <source>Raise widgets</source> <translation>Widgets nach vorn bringen</translation> </message> <message> - <location line="+17"/> <source>Lower widgets</source> <translation>Widgets nach hinten setzen</translation> </message> @@ -4852,12 +3980,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::FormWindowBase</name> <message> - <location filename="../tools/designer/src/lib/shared/formwindowbase.cpp" line="+404"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+0"/> <source>Delete '%1'</source> <translation> '%1' löschen</translation> </message> @@ -4865,200 +3991,159 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::FormWindowManager</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowmanager.cpp" line="+365"/> <source>Cu&t</source> <translation>&Ausschneiden</translation> </message> <message> - <location line="+3"/> <source>Cuts the selected widgets and puts them on the clipboard</source> <translation>Schneidet die ausgewählten Widgets aus und legt sie in der Zwischenablage ab</translation> </message> <message> - <location line="+5"/> <source>&Copy</source> <translation>&Kopieren</translation> </message> <message> - <location line="+3"/> <source>Copies the selected widgets to the clipboard</source> <translation>Kopiert die ausgewählten Widgets in die Zwischenablage</translation> </message> <message> - <location line="+5"/> <source>&Paste</source> <translation>&Einfügen</translation> </message> <message> - <location line="+3"/> <source>Pastes the clipboard's contents</source> <translation>Fügt den Inhalt der Zwischenablage ein</translation> </message> <message> - <location line="+5"/> <source>&Delete</source> <translation>&Löschen</translation> </message> <message> - <location line="+2"/> <source>Deletes the selected widgets</source> <translation>Löscht die ausgewählten Widgets</translation> </message> <message> - <location line="+5"/> <source>Select &All</source> <translation>&Alles auswählen</translation> </message> <message> - <location line="+3"/> <source>Selects all widgets</source> <translation>Wählt alle Widget aus</translation> </message> <message> - <location line="+5"/> <source>Bring to &Front</source> <translation>Nach &vorn</translation> </message> <message> - <location line="+3"/> - <location line="+1"/> <source>Raises the selected widgets</source> <translation>Bringt das ausgewählte Widget nach vorn</translation> </message> <message> - <location line="+4"/> <source>Send to &Back</source> <translation>Nach &hinten</translation> </message> <message> - <location line="+3"/> - <location line="+1"/> <source>Lowers the selected widgets</source> <translation>Stellt das ausgewählte Widget nach hinten</translation> </message> <message> - <location line="+4"/> <source>Adjust &Size</source> <translation>&Größe anpassen</translation> </message> <message> - <location line="+3"/> <source>Adjusts the size of the selected widget</source> <translation>Berechnet die Größe des ausgewählten Widgets aus dem Layout und passt das Widget an</translation> </message> <message> - <location line="+6"/> <source>Lay Out &Horizontally</source> <translation>Objekte &waagrecht anordnen</translation> </message> <message> - <location line="+3"/> <source>Lays out the selected widgets horizontally</source> <translation>Ordnet die ausgewähltenObjekte waagrecht an</translation> </message> <message> - <location line="+6"/> <source>Lay Out &Vertically</source> <translation>Objekte &senkrecht anordnen</translation> </message> <message> - <location line="+3"/> <source>Lays out the selected widgets vertically</source> <translation>Ordnet die ausgewählten Objekte senkrecht an</translation> </message> <message> - <location line="+17"/> <source>Lay Out in a &Grid</source> <translation>Objekte &tabellarisch anordnen</translation> </message> <message> - <location line="+3"/> <source>Lays out the selected widgets in a grid</source> <translation>Ordnet die ausgewählten Objekte tabellarisch an</translation> </message> <message> - <location line="+7"/> <source>Lay Out Horizontally in S&plitter</source> <translation>Objekte waagrecht um Spl&itter anordnen</translation> </message> <message> - <location line="+3"/> <source>Lays out the selected widgets horizontally in a splitter</source> <translation>Ordnet die ausgewählten Objekte um einen Splitter waagrecht an</translation> </message> <message> - <location line="+7"/> <source>Lay Out Vertically in Sp&litter</source> <translation>Objekte senkrecht um Spl&itter anordnen</translation> </message> <message> - <location line="+3"/> <source>Lays out the selected widgets vertically in a splitter</source> <translation>Ordnet die ausgewählten Objekte um einen Splitter senkecht an</translation> </message> <message> - <location line="+7"/> <source>&Break Layout</source> <translation>La&yout auflösen</translation> </message> <message> - <location line="+3"/> <source>Breaks the selected layout</source> <translation>Löst das ausgewählte Layout auf</translation> </message> <message> - <location line="+13"/> <source>&Preview...</source> <translation>&Vorschau...</translation> </message> <message> - <location line="+2"/> <source>Preview current form</source> <translation>Vorschau des Formulars</translation> </message> <message> - <location line="+15"/> <source>Form &Settings...</source> <translation>Formular&einstellungen...</translation> </message> <message> - <location line="+94"/> <source>Break Layout</source> <translation>Layout auflösen</translation> </message> <message> - <location line="+26"/> <source>Adjust Size</source> <translation>Größe anpassen</translation> </message> <message> - <location line="+43"/> <source>Could not create form preview</source> <comment>Title of warning message box</comment> <translation>Es konnte keine Vorschau erzeugt werden</translation> </message> <message> - <location line="+341"/> <source>Form Settings - %1</source> <translation>Formulareinstellungen - %1</translation> </message> <message> - <location line="-527"/> <source>Removes empty columns and rows</source> <translation>Entfernt unbesetzte Zeilen und Spalten</translation> </message> <message> - <location line="-50"/> <source>Lay Out in a &Form Layout</source> <translation>Objekte in &Formularlayout anordnen</translation> </message> <message> - <location line="+3"/> <source>Lays out the selected widgets in a form layout</source> <translation>Ordnet die ausgewählten Objekte in einem zweispaltigen Formularlayout an</translation> </message> <message> - <location line="+45"/> <source>Si&mplify Grid Layout</source> <translation>Tabellarisches Layout &vereinfachen</translation> </message> @@ -5066,12 +4151,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::FormWindowSettings</name> <message> - <location filename="../tools/designer/src/components/formeditor/formwindowsettings.cpp" line="+193"/> <source>None</source> <translation>Kein</translation> </message> <message> - <location line="+1"/> <source>Device Profile: %1</source> <translation>Profil: %1</translation> </message> @@ -5079,37 +4162,30 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::GridPanel</name> <message> - <location filename="../tools/designer/src/lib/shared/gridpanel.ui"/> <source>Visible</source> <translation>Sichtbar</translation> </message> <message> - <location/> <source>Snap</source> <translation>Einschnappen</translation> </message> <message> - <location/> <source>Reset</source> <translation>Rücksetzen</translation> </message> <message> - <location/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location/> <source>Grid</source> <translation>Raster</translation> </message> <message> - <location/> <source>Grid &X</source> <translation>Raster &X</translation> </message> <message> - <location/> <source>Grid &Y</source> <translation>Raster &Y</translation> </message> @@ -5117,7 +4193,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::GroupBoxTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/groupbox_taskmenu.cpp" line="+82"/> <source>Change title...</source> <translation>Titel ändern...</translation> </message> @@ -5125,7 +4200,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::HtmlTextEdit</name> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="-58"/> <source>Insert HTML entity</source> <translation>HTML-Sonderzeichen einfügen</translation> </message> @@ -5133,92 +4207,74 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::IconSelector</name> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="-24"/> <source>The pixmap file '%1' cannot be read.</source> <translation>Die Pixmap-Datei '%1' kann nicht gelesen werden.</translation> </message> <message> - <location line="+6"/> <source>The file '%1' does not appear to be a valid pixmap file: %2</source> <translation>Die Datei '%1' ist keine gültige Pixmap-Datei: %2</translation> </message> <message> - <location line="+9"/> <source>The file '%1' could not be read: %2</source> <translation>Die Datei '%1' konnte nicht gelesen werden: %2</translation> </message> <message> - <location line="+40"/> <source>Pixmap Read Error</source> <translation>Fehler beim Lesen der Pixmap</translation> </message> <message> - <location line="+54"/> <source>...</source> <translation>...</translation> </message> <message> - <location line="+6"/> <source>Normal Off</source> <translation>Normal, aus</translation> </message> <message> - <location line="+1"/> <source>Normal On</source> <translation>Normal, ein</translation> </message> <message> - <location line="+1"/> <source>Disabled Off</source> <translation>Nicht verfügbar, aus</translation> </message> <message> - <location line="+1"/> <source>Disabled On</source> <translation>Verfügbar, ein</translation> </message> <message> - <location line="+1"/> <source>Active Off</source> <translation>Aktiv, aus</translation> </message> <message> - <location line="+1"/> <source>Active On</source> <translation>Aktiv, ein</translation> </message> <message> - <location line="+1"/> <source>Selected Off</source> <translation>Ausgewählt, aus</translation> </message> <message> - <location line="+1"/> <source>Selected On</source> <translation>Ausgewählt, ein</translation> </message> <message> - <location line="+8"/> <source>Choose Resource...</source> <translation>Ressource auswählen...</translation> </message> <message> - <location line="+1"/> <source>Choose File...</source> <translation>Datei auswählen...</translation> </message> <message> - <location line="+1"/> <source>Reset</source> <translation>Rücksetzen</translation> </message> <message> - <location line="+1"/> <source>Reset All</source> <translation>Alle rücksetzen</translation> </message> <message> - <location line="-85"/> <source>Choose a Pixmap</source> <translation>Pixmap-Datei auswählen</translation> </message> @@ -5226,58 +4282,46 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ItemListEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="+358"/> <source>Properties &<<</source> <translation>Eigenschaften &<<</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.ui"/> - <location filename="../tools/designer/src/components/taskmenu/itemlisteditor.cpp" line="+2"/> <source>Properties &>></source> <translation>Eigenschaften &>></translation> </message> <message> - <location/> <source>Items List</source> <translation>Liste der Elemente</translation> </message> <message> - <location/> <source>New Item</source> <translation>Neues Element</translation> </message> <message> - <location/> <source>&New</source> <translation>&Neu</translation> </message> <message> - <location/> <source>Delete Item</source> <translation>Element löschen</translation> </message> <message> - <location/> <source>&Delete</source> <translation>&Löschen</translation> </message> <message> - <location/> <source>Move Item Up</source> <translation>Element eins nach oben</translation> </message> <message> - <location/> <source>U</source> <translation>U</translation> </message> <message> - <location/> <source>Move Item Down</source> <translation>Element eins nach unten</translation> </message> <message> - <location/> <source>D</source> <translation>D</translation> </message> @@ -5285,12 +4329,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::LabelTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/label_taskmenu.cpp" line="+85"/> <source>Change rich text...</source> <translation>Formatierbaren Text ändern...</translation> </message> <message> - <location line="+1"/> <source>Change plain text...</source> <translation>Text ändern...</translation> </message> @@ -5298,7 +4340,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::LanguageResourceDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/iconselector.cpp" line="-258"/> <source>Choose Resource</source> <translation>Ressource auswählen</translation> </message> @@ -5306,7 +4347,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::LineEditTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/lineedit_taskmenu.cpp" line="+80"/> <source>Change text...</source> <translation>Text ändern...</translation> </message> @@ -5314,17 +4354,14 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ListWidgetEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/listwidgeteditor.cpp" line="+101"/> <source>Edit List Widget</source> <translation>List-Widget ändern</translation> </message> <message> - <location line="+19"/> <source>Edit Combobox</source> <translation>Combobox ändern</translation> </message> <message> - <location line="-51"/> <source>New Item</source> <translation>Neues Element</translation> </message> @@ -5332,12 +4369,10 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::ListWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/listwidget_taskmenu.cpp" line="+67"/> <source>Edit Items...</source> <translation> Elemente ändern...</translation> </message> <message> - <location line="+38"/> <source>Change List Contents</source> <translation>Inhalt der Liste ändern</translation> </message> @@ -5345,22 +4380,18 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::MdiContainerWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="+118"/> <source>Next Subwindow</source> <translation>Nächste Unterfenster</translation> </message> <message> - <location line="+1"/> <source>Previous Subwindow</source> <translation>Voriges Unterfenster</translation> </message> <message> - <location line="+1"/> <source>Tile</source> <translation>Nebeneinander anordnen</translation> </message> <message> - <location line="+1"/> <source>Cascade</source> <translation>Stapeln</translation> </message> @@ -5368,7 +4399,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::MenuTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/menutaskmenu.cpp" line="+56"/> <source>Remove</source> <translation>Löschen</translation> </message> @@ -5376,7 +4406,6 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::MorphMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/morphmenu.cpp" line="+264"/> <source>Morph into</source> <translation>Widget umwandeln in</translation> </message> @@ -5384,42 +4413,34 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::NewActionDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/newactiondialog.ui"/> <source>New Action...</source> <translation>Neue Aktion...</translation> </message> <message> - <location/> <source>&Text:</source> <translation>&Text:</translation> </message> <message> - <location/> <source>Shortcut:</source> <translation>Tastenkürzel</translation> </message> <message> - <location/> <source>Checkable:</source> <translation>Ankreuzbar:</translation> </message> <message> - <location/> <source>ToolTip:</source> <translation>ToolTip:</translation> </message> <message> - <location/> <source>...</source> <translation>...</translation> </message> <message> - <location/> <source>&Icon:</source> <translation>&Icon:</translation> </message> <message> - <location/> <source>Object &name:</source> <translation>Objekt&name:</translation> </message> @@ -5427,40 +4448,33 @@ Möchten Sie sie überschreiben?</translation> <context> <name>qdesigner_internal::NewDynamicPropertyDialog</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.cpp" line="+134"/> <source>Set Property Name</source> <translation>Namen der Eigenschaft setzen</translation> </message> <message> - <location line="+11"/> <source>The current object already has a property named '%1'. Please select another, unique one.</source> <translation>Das Objekt besitzt eine bereits eine Eigenschaft namens '%1'. Bitte wählen Sie einen anderen, eindeutigen Namen.</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.ui"/> <source>Create Dynamic Property</source> <translation>Dynamische Eigenschaft erzeugen</translation> </message> <message> - <location/> <source>Property Name</source> <translation>Name der Eigenschaft</translation> </message> <message> - <location/> <source>Property Type</source> <translation>Typ der Eigenschaft</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.cpp" line="+4"/> <source>The '_q_' prefix is reserved for the Qt library. Please select another name.</source> <translation>Der Präfix '_q_' wird von der Qt-Bibliothek für interne Zwecke verwendet.Bitte wählen Sie einen anderen Namen.</translation> </message> <message> - <location filename="../tools/designer/src/components/propertyeditor/newdynamicpropertydialog.ui"/> <source>horizontalSpacer</source> <translation></translation> </message> @@ -5468,83 +4482,67 @@ Please select another name.</source> <context> <name>qdesigner_internal::NewFormWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.cpp" line="+104"/> <source>Default size</source> <translation>Vorgabe</translation> </message> <message> - <location line="+1"/> <source>QVGA portrait (240x320)</source> <translation>QVGA Hochformat (240x320)</translation> </message> <message> - <location line="+1"/> <source>QVGA landscape (320x240)</source> <translation>QVGA Querformat (320x240)</translation> </message> <message> - <location line="+1"/> <source>VGA portrait (480x640)</source> <translation>VGA Hochformat (480x640)</translation> </message> <message> - <location line="+1"/> <source>VGA landscape (640x480)</source> <translation>VGA Querformat (640x480)</translation> </message> <message> - <location line="+66"/> <source>Widgets</source> <extracomment>New Form Dialog Categories</extracomment> <translation>Widgets</translation> </message> <message> - <location line="+1"/> <source>Custom Widgets</source> <translation>Benutzerdefinierte Widgets</translation> </message> <message> - <location line="+18"/> <source>None</source> <translation>Kein</translation> </message> <message> - <location line="+57"/> <source>Error loading form</source> <translation>Das Formular konnte nicht geladen werden</translation> </message> <message> - <location line="+244"/> <source>Unable to open the form template file '%1': %2</source> <translation>Die Formularvorlage '%1' konnte nicht geöffnet werden: %2</translation> </message> <message> - <location line="+67"/> <source>Internal error: No template selected.</source> <translation>Interner Fehler: Es ist keine Vorlage selektiert.</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/newformwidget.ui"/> <source>0</source> <translation>0</translation> </message> <message> - <location/> <source>Choose a template for a preview</source> <translation>Wählen Sie eine Vorlage für die Vorschau</translation> </message> <message> - <location/> <source>Embedded Design</source> <translation>Embedded-Entwurf</translation> </message> <message> - <location/> <source>Device:</source> <translation>Geräteprofil:</translation> </message> <message> - <location/> <source>Screen Size:</source> <translation>Bildschirmgröße:</translation> </message> @@ -5552,37 +4550,30 @@ Please select another name.</source> <context> <name>qdesigner_internal::NewPromotedClassPanel</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="+92"/> <source>Add</source> <translation>Hinzufügen</translation> </message> <message> - <location line="+2"/> <source>New Promoted Class</source> <translation>Neue Klasse</translation> </message> <message> - <location line="+15"/> <source>Base class name:</source> <translation>Basisklasse:</translation> </message> <message> - <location line="+1"/> <source>Promoted class name:</source> <translation>Klassenname:</translation> </message> <message> - <location line="+1"/> <source>Header file:</source> <translation>Include-Datei:</translation> </message> <message> - <location line="+1"/> <source>Global include</source> <translation>Globale Include-Datei</translation> </message> <message> - <location line="+11"/> <source>Reset</source> <translation>Rücksetzen</translation> </message> @@ -5590,12 +4581,10 @@ Please select another name.</source> <context> <name>qdesigner_internal::ObjectInspector</name> <message> - <location filename="../tools/designer/src/components/objectinspector/objectinspector.cpp" line="+316"/> <source>Change Current Page</source> <translation>Seite wechseln</translation> </message> <message> - <location line="+438"/> <source>&Find in Text...</source> <translation>&Suchen...</translation> </message> @@ -5603,32 +4592,26 @@ Please select another name.</source> <context> <name>qdesigner_internal::OrderDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.cpp" line="+109"/> <source>Index %1 (%2)</source> <translation>Position %1 (%2)</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.ui"/> <source>Change Page Order</source> <translation>Seiten umordnen</translation> </message> <message> - <location/> <source>Page Order</source> <translation>Reihenfolge</translation> </message> <message> - <location/> <source>Move page up</source> <translation>Seite eins nach oben</translation> </message> <message> - <location/> <source>Move page down</source> <translation>Seite eins nach unten</translation> </message> <message> - <location filename="../tools/designer/src/lib/shared/orderdialog.cpp" line="+3"/> <source>%1 %2</source> <translation>%1 %2</translation> </message> @@ -5636,47 +4619,38 @@ Please select another name.</source> <context> <name>qdesigner_internal::PaletteEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.ui"/> <source>Edit Palette</source> <translation>Palette ändern</translation> </message> <message> - <location/> <source>Tune Palette</source> <translation>Palette</translation> </message> <message> - <location/> <source>Show Details</source> <translation>Details einblenden</translation> </message> <message> - <location/> <source>Compute Details</source> <translation>Details berechnen</translation> </message> <message> - <location/> <source>Quick</source> <translation>Einfach</translation> </message> <message> - <location/> <source>Preview</source> <translation>Vorschau</translation> </message> <message> - <location/> <source>Disabled</source> <translation>Ausgegraut</translation> </message> <message> - <location/> <source>Inactive</source> <translation>Inaktiv</translation> </message> <message> - <location/> <source>Active</source> <translation>Aktiv</translation> </message> @@ -5684,7 +4658,6 @@ Please select another name.</source> <context> <name>qdesigner_internal::PaletteEditorButton</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditorbutton.cpp" line="+57"/> <source>Change Palette</source> <translation>Palette ändern</translation> </message> @@ -5692,22 +4665,18 @@ Please select another name.</source> <context> <name>qdesigner_internal::PaletteModel</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/paletteeditor.cpp" line="+374"/> <source>Color Role</source> <translation>Farbrolle</translation> </message> <message> - <location line="+2"/> <source>Active</source> <translation>Aktiv</translation> </message> <message> - <location line="+2"/> <source>Inactive</source> <translation>Inaktiv</translation> </message> <message> - <location line="+2"/> <source>Disabled</source> <translation>Ausgegraut</translation> </message> @@ -5715,28 +4684,22 @@ Please select another name.</source> <context> <name>qdesigner_internal::PixmapEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="-1539"/> <source>Copy Path</source> <translation>Pfad kopieren</translation> </message> <message> - <location line="+1"/> <source>Paste Path</source> <translation>Pfad einfügen</translation> </message> <message> - <location line="-3"/> <source>Choose Resource...</source> <translation>Ressource auswählen...</translation> </message> <message> - <location line="+1"/> <source>Choose File...</source> <translation>Datei auswählen...</translation> </message> <message> - <location line="+8"/> - <location line="+16"/> <source>...</source> <translation>...</translation> </message> @@ -5744,7 +4707,6 @@ Please select another name.</source> <context> <name>qdesigner_internal::PlainTextEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/plaintexteditor.cpp" line="+65"/> <source>Edit text</source> <translation>Text bearbeiten</translation> </message> @@ -5752,37 +4714,30 @@ Please select another name.</source> <context> <name>qdesigner_internal::PluginDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/plugindialog.cpp" line="+72"/> <source>Components</source> <translation>Komponenten</translation> </message> <message> - <location line="+13"/> <source>Plugin Information</source> <translation>Plugins</translation> </message> <message> - <location line="+4"/> <source>Refresh</source> <translation>Neu laden</translation> </message> <message> - <location line="+1"/> <source>Scan for newly installed custom widget plugins.</source> <translation>Nach neu installierten Plugins mit benutzerdefinierten Widgets suchen.</translation> </message> <message> - <location line="+48"/> <source>Qt Designer couldn't find any plugins</source> <translation>Qt Designer kann keine Plugins finden</translation> </message> <message> - <location line="+3"/> <source>Qt Designer found the following plugins</source> <translation>Qt Designer hat die folgenden Plugins gefunden</translation> </message> <message> - <location line="+55"/> <source>New custom widget plugins have been found.</source> <translation>Es wurden neu installierte Plugins mit benutzerdefinierten Widgets gefunden.</translation> </message> @@ -5790,7 +4745,6 @@ Please select another name.</source> <context> <name>qdesigner_internal::PreviewActionGroup</name> <message> - <location filename="../tools/designer/src/components/formeditor/previewactiongroup.cpp" line="+95"/> <source>%1 Style</source> <translation>%1-Stil</translation> </message> @@ -5798,47 +4752,38 @@ Please select another name.</source> <context> <name>qdesigner_internal::PreviewConfigurationWidget</name> <message> - <location filename="../tools/designer/src/lib/shared/previewconfigurationwidget.cpp" line="+139"/> <source>Default</source> <translation>Vorgabe</translation> </message> <message> - <location line="+22"/> <source>None</source> <translation>Kein</translation> </message> <message> - <location line="+6"/> <source>Browse...</source> <translation>Durchsuchen...</translation> </message> <message> - <location line="+118"/> <source>Load Custom Device Skin</source> <translation>Benutzerdefinierten Geräte-Skin laden </translation> </message> <message> - <location line="+2"/> <source>All QVFB Skins (*.%1)</source> <translation>Alle QVFB-Skins (*.%1)</translation> </message> <message> - <location line="+16"/> <source>%1 - Duplicate Skin</source> <translation>%1 - Skin bereits vorhanden</translation> </message> <message> - <location line="+1"/> <source>The skin '%1' already exists.</source> <translation>Der Skin '%1' ist bereits vorhanden.</translation> </message> <message> - <location line="+14"/> <source>%1 - Error</source> <translation>%1 - Fehler</translation> </message> <message> - <location line="+1"/> <source>%1 is not a valid skin directory: %2</source> <translation>%1 ist kein gültiges Verzeichnis eines Skins: @@ -5848,24 +4793,20 @@ Please select another name.</source> <context> <name>qdesigner_internal::PreviewDeviceSkin</name> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="+259"/> <source>&Portrait</source> <translation>&Hochformat</translation> </message> <message> - <location line="+2"/> <source>Landscape (&CCW)</source> <extracomment>Rotate form preview counter-clockwise</extracomment> <translation>Querformat (&entgegen Uhrzeigersinn)</translation> </message> <message> - <location line="+2"/> <source>&Landscape (CW)</source> <extracomment>Rotate form preview clockwise</extracomment> <translation>Querformat (im &Uhrzeigersinn)</translation> </message> <message> - <location line="+1"/> <source>&Close</source> <translation>&Schließen</translation> </message> @@ -5873,7 +4814,6 @@ Please select another name.</source> <context> <name>qdesigner_internal::PreviewManager</name> <message> - <location line="+426"/> <source>%1 - [Preview]</source> <translation>%1 - [Vorschau]</translation> </message> @@ -5881,7 +4821,6 @@ Please select another name.</source> <context> <name>qdesigner_internal::PreviewMdiArea</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewframe.cpp" line="+72"/> <source>The moose in the noose ate the goose who was loose.</source> <extracomment>Palette editor background</extracomment> @@ -5891,57 +4830,46 @@ ate the goose who was loose.</source> <context> <name>qdesigner_internal::PreviewWidget</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/previewwidget.ui"/> <source>Preview Window</source> <translation>Vorschaufenster</translation> </message> <message> - <location/> <source>LineEdit</source> <translation></translation> </message> <message> - <location/> <source>ComboBox</source> <translation></translation> </message> <message> - <location/> <source>PushButton</source> <translation></translation> </message> <message> - <location/> <source>ButtonGroup2</source> <translation></translation> </message> <message> - <location/> <source>CheckBox1</source> <translation></translation> </message> <message> - <location/> <source>CheckBox2</source> <translation></translation> </message> <message> - <location/> <source>ButtonGroup</source> <translation></translation> </message> <message> - <location/> <source>RadioButton1</source> <translation></translation> </message> <message> - <location/> <source>RadioButton2</source> <translation></translation> </message> <message> - <location/> <source>RadioButton3</source> <translation></translation> </message> @@ -5949,22 +4877,18 @@ ate the goose who was loose.</source> <context> <name>qdesigner_internal::PromotionModel</name> <message> - <location filename="../tools/designer/src/lib/shared/promotionmodel.cpp" line="+17"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+1"/> <source>Header file</source> <translation>Include-Datei</translation> </message> <message> - <location line="+1"/> <source>Global include</source> <translation>Globale Include-Datei</translation> </message> <message> - <location line="+1"/> <source>Usage</source> <translation>Verwendet</translation> </message> @@ -5972,27 +4896,22 @@ ate the goose who was loose.</source> <context> <name>qdesigner_internal::PromotionTaskMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/promotiontaskmenu.cpp" line="+85"/> <source>Promoted widgets...</source> <translation>Benutzerdefinierte Klassen...</translation> </message> <message> - <location line="+1"/> <source>Promote to ...</source> <translation>Als Platzhalter für benutzerdefinierte Klasse festlegen...</translation> </message> <message> - <location line="+2"/> <source>Promote to</source> <translation>Als Platzhalter für benutzerdefinierte Klasse festlegen</translation> </message> <message> - <location line="+1"/> <source>Demote to %1</source> <translation>Platzhalter für benutzerdefinierte Klasse entfernen und in %1 wandeln</translation> </message> <message> - <location line="-2"/> <source>Change signals/slots...</source> <translation>Signale/Slots ändern...</translation> </message> @@ -6000,59 +4919,48 @@ ate the goose who was loose.</source> <context> <name>qdesigner_internal::PropertyEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/propertyeditor.cpp" line="+231"/> <source>Add Dynamic Property...</source> <translation>Dynamische Eigenschaft hinzufügen...</translation> </message> <message> - <location line="+1"/> <source>Remove Dynamic Property</source> <translation>Dynamische Eigenschaft löschen</translation> </message> <message> - <location line="+3"/> <source>Tree View</source> <translation>Baumansicht</translation> </message> <message> - <location line="+1"/> <source>Drop Down Button View</source> <translation>Detailansicht</translation> </message> <message> - <location line="+598"/> <source>Object: %1 Class: %2</source> <translation>Objekt: %1 Klasse: %2</translation> </message> <message> - <location line="-601"/> <source>Sorting</source> <translation>Sortiert</translation> </message> <message> - <location line="+1"/> <source>Color Groups</source> <translation>Farbige Hervorhebung</translation> </message> <message> - <location line="+61"/> <source>Configure Property Editor</source> <translation>Anzeige der Eigenschaften konfigurieren</translation> </message> <message> - <location line="-14"/> <source>String...</source> <translation>Zeichenkette...</translation> </message> <message> - <location line="+3"/> <source>Bool...</source> <translation>Boolescher Wert...</translation> </message> <message> - <location line="+4"/> <source>Other...</source> <translation>Anderer Typ...</translation> </message> @@ -6060,7 +4968,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::PropertyLineEdit</name> <message> - <location filename="../tools/designer/src/lib/shared/propertylineedit.cpp" line="+88"/> <source>Insert line break</source> <translation>Zeilenumbruch einfügen</translation> </message> @@ -6068,27 +4975,22 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::QDesignerPromotionDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_promotiondialog.cpp" line="+85"/> <source>Promoted Widgets</source> <translation>Platzhalter für benutzerdefinierte Widgets</translation> </message> <message> - <location line="+7"/> <source>Promoted Classes</source> <translation>Platzhalter für benutzerdefinierte Klassen</translation> </message> <message> - <location line="+60"/> <source>Promote</source> <translation>Anwenden</translation> </message> <message> - <location line="+169"/> <source>%1 - Error</source> <translation>%1 - Fehler</translation> </message> <message> - <location line="-17"/> <source>Change signals/slots...</source> <translation>Signale/Slots ändern...</translation> </message> @@ -6096,22 +4998,18 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::QDesignerResource</name> <message> - <location filename="../tools/designer/src/components/formeditor/qdesigner_resource.cpp" line="+277"/> <source>Loading qrc file</source> <translation>Laden der Ressourcendatei</translation> </message> <message> - <location line="+1"/> <source>The specified qrc file <p><b>%1</b></p><p>could not be found. Do you want to update the file location?</p></source> <translation>Die Ressourcendatei <p><b>%1</b></p><p> konnte nicht gefunden werden. Möchten Sie einen neuen Pfad eingeben?</p></translation> </message> <message> - <location line="+6"/> <source>New location for %1</source> <translation>Neuer Pfad für %1</translation> </message> <message> - <location line="+1"/> <source>Resource files (*.qrc)</source> <translation>Ressourcendateien (*.qrc)</translation> </message> @@ -6119,67 +5017,54 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::QDesignerTaskMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_taskmenu.cpp" line="+68"/> <source>Change objectName...</source> <translation>Objektnamen ändern...</translation> </message> <message> - <location line="+1"/> <source>Change toolTip...</source> <translation>ToolTip ändern...</translation> </message> <message> - <location line="+1"/> <source>Change whatsThis...</source> <translation>WhatsThis ändern...</translation> </message> <message> - <location line="+1"/> <source>Change styleSheet...</source> <translation>Stylesheet ändern...</translation> </message> <message> - <location line="+3"/> <source>Create Menu Bar</source> <translation>Menüleiste erzeugen</translation> </message> <message> - <location line="+1"/> <source>Add Tool Bar</source> <translation>Werkzeugleiste hinzufügen</translation> </message> <message> - <location line="+1"/> <source>Create Status Bar</source> <translation>Statuszeile hinzufügen</translation> </message> <message> - <location line="+1"/> <source>Remove Status Bar</source> <translation>Statuszeile löschen</translation> </message> <message> - <location line="+1"/> <source>Change script...</source> <translation>Skript ändern...</translation> </message> <message> - <location line="+1"/> <source>Change signals/slots...</source> <translation>Signale/Slots ändern...</translation> </message> <message> - <location line="+1"/> <source>Go to slot...</source> <translation>Slot anzeigen...</translation> </message> <message> - <location line="+413"/> <source>no signals available</source> <translation>Es sind keine Signale vorhanden</translation> </message> <message numerus="yes"> - <location line="+67"/> <source>Set size constraint on %n widget(s)</source> <translation> <numerusform>Größenbeschränkung eines Widgets festlegen</numerusform> @@ -6187,47 +5072,38 @@ Klasse: %2</translation> </translation> </message> <message> - <location line="-477"/> <source>Size Constraints</source> <translation>Größe</translation> </message> <message> - <location line="+4"/> <source>Set Minimum Width</source> <translation>Minimalbreite festlegen</translation> </message> <message> - <location line="+4"/> <source>Set Minimum Height</source> <translation>Minimalhöhe festlegen</translation> </message> <message> - <location line="+4"/> <source>Set Minimum Size</source> <translation>Minimalgröße festlegen</translation> </message> <message> - <location line="+6"/> <source>Set Maximum Width</source> <translation>Maximalbreite festlegen</translation> </message> <message> - <location line="+4"/> <source>Set Maximum Height</source> <translation>Maximalhöhe festlegen</translation> </message> <message> - <location line="+4"/> <source>Set Maximum Size</source> <translation>Maximalgröße festlegen</translation> </message> <message> - <location line="+235"/> <source>Edit ToolTip</source> <translation>ToolTip bearbeiten</translation> </message> <message> - <location line="+5"/> <source>Edit WhatsThis</source> <translation>What'sThis bearbeiten</translation> </message> @@ -6235,41 +5111,33 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::QDesignerWidgetBox</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_widgetbox.cpp" line="+123"/> - <location line="+13"/> <source>Unexpected element <%1></source> <translation>Ungültiges Element <%1></translation> </message> <message> - <location line="+7"/> <source>A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 %5</source> <translation>Der XML-Code für das Widget %3 enthält einen Fehler bei Zeile %1, Spalte %2:%4: %5</translation> </message> <message> - <location line="+9"/> <source>The XML code specified for the widget %1 does not contain any widget elements. %2</source> <translation>Der XML-Code für das Widget %1 enthält keine Widgets.%2</translation> </message> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="+349"/> <source>An error has been encountered at line %1 of %2: %3</source> <translation>Fehler bei Zeile %1 von %2: %3</translation> </message> <message> - <location line="+139"/> <source>Unexpected element <%1> encountered when parsing for <widget> or <ui></source> <translation>An Stelle des erwarteten <widget>- oder <ui>-Elementes wurde <%1> gefunden</translation> </message> <message> - <location line="+19"/> <source>Unexpected end of file encountered when parsing widgets.</source> <translation>Vorzeitiges Dateiende beim Lesen der Widget-Box-Konfiguration.</translation> </message> <message> - <location line="+9"/> <source>A widget element could not be found.</source> <translation>Es fehlt das Widget-Element.</translation> </message> @@ -6277,73 +5145,58 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::QtGradientStopsController</name> <message> - <location filename="../tools/shared/qtgradienteditor/qtgradientstopscontroller.cpp" line="+173"/> <source>H</source> <translation>H</translation> </message> <message> - <location line="+1"/> <source>S</source> <translation>S</translation> </message> <message> - <location line="+1"/> <source>V</source> <translation>V</translation> </message> <message> - <location line="+6"/> - <location line="+4"/> <source>Hue</source> <translation>Farbton</translation> </message> <message> - <location line="-3"/> <source>Sat</source> <translation>Sättigung</translation> </message> <message> - <location line="+1"/> <source>Val</source> <translation>Wert</translation> </message> <message> - <location line="+3"/> <source>Saturation</source> <translation>Sättigung</translation> </message> <message> - <location line="+1"/> <source>Value</source> <translation>Wert</translation> </message> <message> - <location line="+22"/> <source>R</source> <translation>R</translation> </message> <message> - <location line="+1"/> <source>G</source> <translation>G</translation> </message> <message> - <location line="+1"/> <source>B</source> <translation>B</translation> </message> <message> - <location line="+6"/> <source>Red</source> <translation>Rot</translation> </message> <message> - <location line="+1"/> <source>Green</source> <translation>Grün</translation> </message> <message> - <location line="+1"/> <source>Blue</source> <translation>Blau</translation> </message> @@ -6351,27 +5204,22 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::RichTextEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/richtexteditor.cpp" line="+436"/> <source>Edit text</source> <translation>Text bearbeiten</translation> </message> <message> - <location line="+30"/> <source>&OK</source> <translation>&OK</translation> </message> <message> - <location line="+2"/> <source>&Cancel</source> <translation>&Abbrechen</translation> </message> <message> - <location line="-9"/> <source>Rich Text</source> <translation>Text</translation> </message> <message> - <location line="+1"/> <source>Source</source> <translation>Quelltext</translation> </message> @@ -6379,72 +5227,58 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::RichTextEditorToolBar</name> <message> - <location line="-294"/> <source>Bold</source> <translation>Fett</translation> </message> <message> - <location line="+1"/> <source>CTRL+B</source> <translation>CTRL+F</translation> </message> <message> - <location line="+5"/> <source>Italic</source> <translation>Kursiv</translation> </message> <message> - <location line="+1"/> <source>CTRL+I</source> <translation>CTRL+K</translation> </message> <message> - <location line="+5"/> <source>Underline</source> <translation>Unterstreichen</translation> </message> <message> - <location line="+1"/> <source>CTRL+U</source> <translation>CTRL+U</translation> </message> <message> - <location line="+13"/> <source>Left Align</source> <translation>Linksbündig ausrichten</translation> </message> <message> - <location line="+5"/> <source>Center</source> <translation>Zentrieren</translation> </message> <message> - <location line="+5"/> <source>Right Align</source> <translation>Rechtsbündig ausrichten</translation> </message> <message> - <location line="+5"/> <source>Justify</source> <translation>Blocksatz</translation> </message> <message> - <location line="+9"/> <source>Superscript</source> <translation>Hochstellung</translation> </message> <message> - <location line="+6"/> <source>Subscript</source> <translation>Tiefstellung</translation> </message> <message> - <location line="+9"/> <source>Insert &Link</source> <translation>&Link einfügen</translation> </message> <message> - <location line="+5"/> <source>Insert &Image</source> <translation>&Bild einfügen</translation> </message> @@ -6452,17 +5286,14 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::ScriptDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/scriptdialog.cpp" line="+66"/> <source>Edit script</source> <translation>Skript bearbeiten</translation> </message> <message> - <location line="+56"/> <source>Syntax error</source> <translation>Syntaxfehler</translation> </message> <message> - <location line="-51"/> <source><html>Enter a Qt Script snippet to be executed while loading the form.<br>The widget and its children are accessible via the variables <i>widget</i> and <i>childWidgets</i>, respectively.</source> <translation><html>Geben Sie ein Qt-Skript zur Ausführung während des Formularaufbaus ein.<br>Auf das Widget und seine untergeordneten Widgets kann durch die Variablen <i>widget</i> und <i>childWidgets</i> zugegriffen werden.</translation> </message> @@ -6470,7 +5301,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::ScriptErrorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/scripterrordialog.cpp" line="+27"/> <source>Script errors</source> <translation>Skriptfehler</translation> </message> @@ -6478,23 +5308,18 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::SignalSlotDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/signalslotdialog.cpp" line="+199"/> <source>There is already a slot with the signature '%1'.</source> <translation>Es existiert bereits ein Slot mit der Signatur '%1'.</translation> </message> <message> - <location line="+5"/> <source>There is already a signal with the signature '%1'.</source> <translation>Es existiert bereits ein Signal mit der Signatur '%1'.</translation> </message> <message> - <location line="+7"/> <source>%1 - Duplicate Signature</source> <translation>%1 - Doppelte Signatur</translation> </message> <message> - <location line="+21"/> - <location line="+76"/> <source>Signals/Slots of %1</source> <translation>Signale/Slots von %1</translation> </message> @@ -6502,12 +5327,10 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::SignalSlotEditorPlugin</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor_plugin.cpp" line="+72"/> <source>Edit Signals/Slots</source> <translation>Signale und Slots bearbeiten</translation> </message> <message> - <location line="+2"/> <source>F4</source> <translation>F4</translation> </message> @@ -6515,7 +5338,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::SignalSlotEditorTool</name> <message> - <location filename="../tools/designer/src/components/signalsloteditor/signalsloteditor_tool.cpp" line="+58"/> <source>Edit Signals/Slots</source> <translation>Signale und Slots bearbeiten</translation> </message> @@ -6523,7 +5345,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::StatusBarTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/toolbar_taskmenu.cpp" line="+81"/> <source>Remove</source> <translation>Löschen</translation> </message> @@ -6531,7 +5352,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::StringListEditorButton</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/stringlisteditorbutton.cpp" line="+56"/> <source>Change String List</source> <translation>Zeichenkettenliste ändern</translation> </message> @@ -6539,38 +5359,30 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::StyleSheetEditorDialog</name> <message> - <location filename="../tools/designer/src/lib/shared/stylesheeteditor.cpp" line="+97"/> <source>Edit Style Sheet</source> <translation>Stylesheet bearbeiten</translation> </message> <message> - <location line="-7"/> - <location line="+280"/> <source>Valid Style Sheet</source> <translation>Stylesheet gültig</translation> </message> <message> - <location line="+3"/> <source>Invalid Style Sheet</source> <translation>Stylesheet ungültig</translation> </message> <message> - <location line="-281"/> <source>Add Resource...</source> <translation>Ressource hinzufügen...</translation> </message> <message> - <location line="+1"/> <source>Add Gradient...</source> <translation>Gradient hinzufügen...</translation> </message> <message> - <location line="+1"/> <source>Add Color...</source> <translation>Farbe hinzufügen...</translation> </message> <message> - <location line="+1"/> <source>Add Font...</source> <translation>Font hinzufügen...</translation> </message> @@ -6578,27 +5390,22 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TabOrderEditor</name> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor.cpp" line="+363"/> <source>Start from Here</source> <translation>Hier neu beginnen</translation> </message> <message> - <location line="+3"/> <source>Restart</source> <translation>Neu beginnen</translation> </message> <message> - <location line="+2"/> <source>Tab Order List...</source> <translation>Tabulatorreihenfolge...</translation> </message> <message> - <location line="+44"/> <source>Tab Order List</source> <translation>Tabulatorreihenfolge</translation> </message> <message> - <location line="+1"/> <source>Tab Order</source> <translation>Tabulatorreihenfolge</translation> </message> @@ -6606,7 +5413,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TabOrderEditorPlugin</name> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor_plugin.cpp" line="+73"/> <source>Edit Tab Order</source> <translation>Tabulatorreihenfolge bearbeiten</translation> </message> @@ -6614,7 +5420,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TabOrderEditorTool</name> <message> - <location filename="../tools/designer/src/components/tabordereditor/tabordereditor_tool.cpp" line="+57"/> <source>Edit Tab Order</source> <translation>Tabulatorreihenfolge bearbeiten</translation> </message> @@ -6622,48 +5427,38 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TableWidgetEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="+67"/> <source>New Column</source> <translation>Neue Spalte</translation> </message> <message> - <location line="+3"/> <source>New Row</source> <translation>Neue Zeile</translation> </message> <message> - <location line="+8"/> <source>&Columns</source> <translation>&Spalten</translation> </message> <message> - <location line="+1"/> <source>&Rows</source> <translation>&Zeilen</translation> </message> <message> - <location line="+137"/> <source>Properties &<<</source> <translation>Eigenschaften &<<</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.ui"/> - <location filename="../tools/designer/src/components/taskmenu/tablewidgeteditor.cpp" line="+2"/> <source>Properties &>></source> <translation>Eigenschaften &>></translation> </message> <message> - <location/> <source>Edit Table Widget</source> <translation>Table Widget ändern</translation> </message> <message> - <location/> <source>&Items</source> <translation>&Inhalt</translation> </message> <message> - <location/> <source>Table Items</source> <translation>Tabellenelemente</translation> </message> @@ -6671,7 +5466,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TableWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/tablewidget_taskmenu.cpp" line="+64"/> <source>Edit Items...</source> <translation>Elemente ändern...</translation> </message> @@ -6679,22 +5473,18 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TemplateOptionsWidget</name> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.cpp" line="-18"/> <source>Pick a directory to save templates in</source> <translation>Wählen Sie ein Verzeichnis zum Abspeichern der Vorlagen aus</translation> </message> <message> - <location filename="../tools/designer/src/components/formeditor/templateoptionspage.ui"/> <source>Form</source> <translation></translation> </message> <message> - <location/> <source>Additional Template Paths</source> <translation>Zusätzliche Verzeichnisse für Vorlagen</translation> </message> <message> - <location/> <source>...</source> <translation>...</translation> </message> @@ -6702,22 +5492,18 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TextEditTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/textedit_taskmenu.cpp" line="+59"/> <source>Change HTML...</source> <translation>HTML ändern...</translation> </message> <message> - <location line="-1"/> <source>Edit HTML</source> <translation>HTML bearbeiten</translation> </message> <message> - <location line="+10"/> <source>Edit Text</source> <translation>Text bearbeiten</translation> </message> <message> - <location line="+1"/> <source>Change Plain Text...</source> <translation>Text ändern...</translation> </message> @@ -6725,22 +5511,18 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TextEditor</name> <message> - <location filename="../tools/designer/src/components/propertyeditor/designerpropertymanager.cpp" line="-204"/> <source>Choose Resource...</source> <translation>Ressource auswählen...</translation> </message> <message> - <location line="+1"/> <source>Choose File...</source> <translation>Datei auswählen...</translation> </message> <message> - <location line="+123"/> <source>Choose a File</source> <translation></translation> </message> <message> - <location line="-118"/> <source>...</source> <translation>...</translation> </message> @@ -6748,27 +5530,22 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::ToolBarEventFilter</name> <message> - <location filename="../tools/designer/src/lib/shared/qdesigner_toolbar.cpp" line="+234"/> <source>Insert Separator</source> <translation>Trenner einfügen</translation> </message> <message> - <location line="-65"/> <source>Remove action '%1'</source> <translation>Aktion '%1' löschen</translation> </message> <message> - <location line="+7"/> <source>Remove Toolbar '%1'</source> <translation>Werkzeugleiste '%1' löschen</translation> </message> <message> - <location line="-28"/> <source>Insert Separator before '%1'</source> <translation>Trenner vor '%1' einfügen</translation> </message> <message> - <location line="+9"/> <source>Append Separator</source> <translation>Trenner hinzufügen</translation> </message> @@ -6776,125 +5553,98 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TreeWidgetEditor</name> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+76"/> <source>&Columns</source> <translation>&Spalten</translation> </message> <message> - <location line="+69"/> <source>Per column properties</source> <translation>Spalteneigenschaften</translation> </message> <message> - <location line="+1"/> <source>Common properties</source> <translation>Gemeinsame Eigenschaften</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui"/> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+53"/> <source>New Item</source> <translation>Neues Element</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+194"/> <source>Properties &<<</source> <translation>Eigenschaften &<<</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui"/> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+2"/> <source>Properties &>></source> <translation>Eigenschaften &>></translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="-327"/> <source>New Column</source> <translation>Neue Spalte</translation> </message> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.ui"/> <source>Edit Tree Widget</source> <translation>Tree Widget ändern</translation> </message> <message> - <location/> <source>&Items</source> <translation>&Inhalt</translation> </message> <message> - <location/> <source>Tree Items</source> <translation>Elemente</translation> </message> <message> - <location/> - <location filename="../tools/designer/src/components/taskmenu/treewidgeteditor.cpp" line="+150"/> <source>New Subitem</source> <translation></translation> </message> <message> - <location/> <source>New &Subitem</source> <translation>Neues &untergeordnetes Element</translation> </message> <message> - <location/> <source>Delete Item</source> <translation>Element löschen</translation> </message> <message> - <location/> <source>Move Item Left (before Parent Item)</source> <translation>Element nach links (vor übergeordnetes Element)</translation> </message> <message> - <location/> <source>L</source> <translation>L</translation> </message> <message> - <location/> <source>Move Item Right (as a First Subitem of the Next Sibling Item)</source> <translation>Element nach rechts (als untergeordnetes Element des nächsten gleichrangigen Elements)</translation> </message> <message> - <location/> <source>R</source> <translation>R</translation> </message> <message> - <location/> <source>Move Item Up</source> <translation>Element eins nach oben</translation> </message> <message> - <location/> <source>U</source> <translation>U</translation> </message> <message> - <location/> <source>Move Item Down</source> <translation>Element eins nach unten</translation> </message> <message> - <location/> <source>D</source> <translation>D</translation> </message> <message> - <location/> <source>1</source> <translation>1</translation> </message> <message> - <location/> <source>&New</source> <translation>&Neu</translation> </message> <message> - <location/> <source>&Delete</source> <translation>&Löschen</translation> </message> @@ -6902,7 +5652,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::TreeWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/treewidget_taskmenu.cpp" line="+63"/> <source>Edit Items...</source> <translation>Elemente ändern...</translation> </message> @@ -6910,7 +5659,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::WidgetBox</name> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetbox_dnditem.cpp" line="+115"/> <source>Warning: Widget creation failed in the widget box. This could be caused by invalid custom widget XML.</source> <translation>Warnung: Die Erzeugung des Widgets in der Widget-Box schlug fehl. Das könnte durch fehlerhaften XML-Code benutzerdefinierter Widgets verursacht worden sein.</translation> </message> @@ -6918,42 +5666,34 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::WidgetBoxTreeWidget</name> <message> - <location filename="../tools/designer/src/components/widgetbox/widgetboxtreewidget.cpp" line="-268"/> <source>Scratchpad</source> <translation>Ablage</translation> </message> <message> - <location line="+370"/> <source>Custom Widgets</source> <translation>Benutzerdefinierte Widgets</translation> </message> <message> - <location line="+263"/> <source>Expand all</source> <translation>Alles aufklappen</translation> </message> <message> - <location line="+1"/> <source>Collapse all</source> <translation>Alles zuklappen</translation> </message> <message> - <location line="+3"/> <source>List View</source> <translation>Listenansicht</translation> </message> <message> - <location line="+1"/> <source>Icon View</source> <translation>Icon-Ansicht</translation> </message> <message> - <location line="+15"/> <source>Remove</source> <translation>Löschen</translation> </message> <message> - <location line="+2"/> <source>Edit name</source> <translation>Namen ändern</translation> </message> @@ -6961,7 +5701,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::WidgetDataBase</name> <message> - <location filename="../tools/designer/src/lib/shared/widgetdatabase.cpp" line="-411"/> <source>A custom widget plugin whose class name (%1) matches that of an existing class has been found.</source> <translation>Es wurde ein Plugin gefunden, das ein benutzerdefiniertes Widget enthält, dessen Klassenname (%1) einer existierenden Klasse entspricht.</translation> </message> @@ -6969,7 +5708,6 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::WidgetEditorTool</name> <message> - <location filename="../tools/designer/src/components/formeditor/tool_widgeteditor.cpp" line="+67"/> <source>Edit Widgets</source> <translation>Widgets bearbeiten</translation> </message> @@ -6977,33 +5715,27 @@ Klasse: %2</translation> <context> <name>qdesigner_internal::WidgetFactory</name> <message> - <location filename="../tools/designer/src/lib/shared/widgetfactory.cpp" line="+263"/> <source>The custom widget factory registered for widgets of class %1 returned 0.</source> <translation>Die Factory für benutzerdefinierte Widgets der Klasse %1 gab einen 0-Zeiger zurück.</translation> </message> <message> - <location line="+44"/> <source>A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2.</source> <translation>Bei der Erzeugung von Widgets wurden widersprüchliche Klassennamen festgestellt: Die Factory für benutzerdefinierte Widgets der Klasse %1 gab ein Widget der Klasse %2 zurück.</translation> </message> <message> - <location line="+189"/> <source>The current page of the container '%1' (%2) could not be determined while creating a layout.This indicates an inconsistency in the ui-file, probably a layout being constructed on a container widget.</source> <translation>Der Container '%1' (%2) hat keine Seite, auf der ein Layout angelegt werden könnte. Das deutet auf eine inkonsistente ui-Datei hin; wahrscheinlich wurde ein Layout direkt auf dem Container spezifiziert.</translation> </message> <message> - <location line="+53"/> <source>Attempt to add a layout to a widget '%1' (%2) which already has an unmanaged layout of type %3. This indicates an inconsistency in the ui-file.</source> <translation>Es wurde versucht, ein Layout auf das Widget '%1' (%2) zu setzen, welches bereits ein Layout vom Typ %3 hat. Das deutet auf eine Inkonsistenz in der ui-Datei hin.</translation> </message> <message> - <location line="+211"/> <source>Cannot create style '%1'.</source> <translation>Der Stil '%1' konnte nicht erzeugt werden.</translation> </message> <message> - <location line="-354"/> <source>%1 Widget</source> <translation>%1 Widget</translation> </message> @@ -7011,12 +5743,10 @@ This indicates an inconsistency in the ui-file.</source> <context> <name>qdesigner_internal::WizardContainerWidgetTaskMenu</name> <message> - <location filename="../tools/designer/src/components/taskmenu/containerwidget_taskmenu.cpp" line="-49"/> <source>Next</source> <translation>Nächste</translation> </message> <message> - <location line="+1"/> <source>Back</source> <translation>Vorige</translation> </message> @@ -7024,7 +5754,6 @@ This indicates an inconsistency in the ui-file.</source> <context> <name>qdesigner_internal::ZoomMenu</name> <message> - <location filename="../tools/designer/src/lib/shared/zoomwidget.cpp" line="+84"/> <source>%1 %</source> <extracomment>Zoom factor</extracomment> <translation>%1 %</translation> @@ -7033,7 +5762,6 @@ This indicates an inconsistency in the ui-file.</source> <context> <name>qdesigner_internal::ZoomablePreviewDeviceSkin</name> <message> - <location filename="../tools/designer/src/lib/shared/previewmanager.cpp" line="-270"/> <source>&Zoom</source> <translation>&Vergrößern</translation> </message> diff --git a/translations/linguist_de.ts b/translations/linguist_de.ts index 5597458..b4e0a45 100644 --- a/translations/linguist_de.ts +++ b/translations/linguist_de.ts @@ -4,7 +4,6 @@ <context> <name>AboutDialog</name> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+1366"/> <source>Qt Linguist</source> <translation>Qt Linguist</translation> </message> @@ -12,27 +11,22 @@ <context> <name>BatchTranslationDialog</name> <message> - <location filename="../tools/linguist/linguist/batchtranslationdialog.cpp" line="+79"/> <source>Batch Translation of '%1' - Qt Linguist</source> <translation>Automatische Übersetzung von '%1' - Qt Linguist</translation> </message> <message> - <location line="+37"/> <source>Searching, please wait...</source> <translation>Suche, bitte warten ...</translation> </message> <message> - <location line="+0"/> <source>&Cancel</source> <translation>&Abbrechen</translation> </message> <message> - <location line="+42"/> <source>Linguist batch translator</source> <translation>Automatischer Übersetzer (Linguist)</translation> </message> <message numerus="yes"> - <location line="+1"/> <source>Batch translated %n entries</source> <translation> <numerusform>1 Eintrag wurde automatisch übersetzt</numerusform> @@ -40,62 +34,50 @@ </translation> </message> <message> - <location filename="../tools/linguist/linguist/batchtranslation.ui"/> <source>Qt Linguist - Batch Translation</source> <translation>Qt Linguist - Automatische Übersetzung</translation> </message> <message> - <location/> <source>Options</source> <translation>Optionen</translation> </message> <message> - <location/> <source>Set translated entries to finished</source> <translation>Übersetzung als erledigt markieren</translation> </message> <message> - <location/> <source>Retranslate entries with existing translation</source> <translation>Einträge mit bereits existierender Übersetzung neu übersetzen</translation> </message> <message> - <location/> <source>Translate also finished entries</source> <translation>Erledigte Einträge übersetzen</translation> </message> <message> - <location/> <source>Phrase book preference</source> <translation>Wörterbücher</translation> </message> <message> - <location/> <source>Move up</source> <translation>Nach oben</translation> </message> <message> - <location/> <source>Move down</source> <translation>Nach unten</translation> </message> <message> - <location/> <source>&Run</source> <translation>&Ausführen</translation> </message> <message> - <location/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location/> <source>Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked</source> <translation>Geänderte Einträge werden als unerledigt gekennzeichnet, wenn die obige Einstellung 'Übersetzung als erledigt markieren' nicht aktiviert ist</translation> </message> <message> - <location/> <source>The batch translator will search through the selected phrase books in the order given above</source> <translation>Der automatische Übersetzer wird in der angegebenen Reihenfolge durch die ausgewählten Wörterbücher gehen</translation> </message> @@ -103,45 +85,36 @@ <context> <name>DataModel</name> <message> - <location filename="../tools/linguist/linguist/messagemodel.cpp" line="+214"/> <source><qt>Duplicate messages found in '%1':</source> <translation><qt>Mehrfach vorhandene Meldungen in '%1':</translation> </message> <message> - <location line="+4"/> - <location line="+8"/> <source><p>[more duplicates omitted]</source> <translation><p>[weitere mehrfach vorhandene Nachrichten weggelassen]</translation> </message> <message> - <location line="-5"/> <source><p>* ID: %1</source> <translation><p>* ID: %1</translation> </message> <message> - <location line="+8"/> <source><p>* Context: %1<br>* Source: %2</source> <translation><p>* Kontext: %1<br>* Quelle: %2</translation> </message> <message> - <location line="+3"/> <source><br>* Comment: %3</source> <translation><br>* Kommentar: %3</translation> </message> <message> - <location line="+71"/> <source>Linguist does not know the plural rules for '%1'. Will assume a single universal form.</source> <translation>Die Regeln zur Pluralbildung der Sprache '%1' sind in Linguist nicht definiert. Es wird mit einer einfachen Universalform gearbeitet.</translation> </message> <message> - <location line="+56"/> <source>Cannot create '%2': %1</source> <translation>'%2' kann nicht erzeugt werden: %1</translation> </message> <message> - <location line="+56"/> <source>Universal Form</source> <translation>Universalform</translation> </message> @@ -149,37 +122,30 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> <context> <name>ErrorsView</name> <message> - <location filename="../tools/linguist/linguist/errorsview.cpp" line="+76"/> <source>Accelerator possibly superfluous in translation.</source> <translation>Möglicherweise überflüssiger Kurzbefehl im Übersetzungstext.</translation> </message> <message> - <location line="+3"/> <source>Accelerator possibly missing in translation.</source> <translation>Kurzbefehl fehlt im Übersetzungstext.</translation> </message> <message> - <location line="+3"/> <source>Translation does not end with the same punctuation as the source text.</source> <translation>Interpunktion am Ende des Übersetzungstextes unterscheidet sich von Interpunktion des Ursprungstextes.</translation> </message> <message> - <location line="+3"/> <source>A phrase book suggestion for '%1' was ignored.</source> <translation>Ein Vorschlag aus dem Wörterbuch für '%1' wurde nicht berücksichtigt.</translation> </message> <message> - <location line="+3"/> <source>Translation does not refer to the same place markers as in the source text.</source> <translation>Platzhalter im Übersetzungstext und Ursprungstext unterscheiden sich.</translation> </message> <message> - <location line="+3"/> <source>Translation does not contain the necessary %n place marker.</source> <translation>Der erforderliche Platzhalter (%n) fehlt in der Übersetzung.</translation> </message> <message> - <location line="+3"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> @@ -187,97 +153,78 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> <context> <name>FindDialog</name> <message> - <location filename="../tools/linguist/linguist/finddialog.ui"/> <source>This window allows you to search for some text in the translation source file.</source> <translation>Dieses Fenster erlaubt die Suche in der Übersetzungsdatei.</translation> </message> <message> - <location/> <source>Type in the text to search for.</source> <translation>Geben Sie den Text ein, nach dem gesucht werden soll.</translation> </message> <message> - <location/> <source>Options</source> <translation>Optionen</translation> </message> <message> - <location/> <source>Source texts are searched when checked.</source> <translation>Wenn aktiviert, wird in den Ursprungstexten gesucht.</translation> </message> <message> - <location/> <source>Translations are searched when checked.</source> <translation>Wenn ausgewählt, wird in den Übersetzungen gesucht.</translation> </message> <message> - <location/> <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> <translation>Wenn aktiviert, werden Texte wie 'TeX' und 'tex' als unterschiedlich betrachtet.</translation> </message> <message> - <location/> <source>Comments and contexts are searched when checked.</source> <translation>Wenn ausgewählt, werden Kommentare und Kontextnamen durchsucht.</translation> </message> <message> - <location/> <source>Find</source> <translation>Suchen</translation> </message> <message> - <location/> <source>&Find what:</source> <translation>&Suchmuster:</translation> </message> <message> - <location/> <source>&Source texts</source> <translation>&Ursprungstexte</translation> </message> <message> - <location/> <source>&Translations</source> <translation>&Übersetzungen</translation> </message> <message> - <location/> <source>&Match case</source> <translation>&Groß-/Kleinschreibung beachten</translation> </message> <message> - <location/> <source>&Comments</source> <translation>&Kommentare</translation> </message> <message> - <location/> <source>Ignore &accelerators</source> <translation>Tastenkürzel &ignorieren</translation> </message> <message> - <location/> <source>Click here to find the next occurrence of the text you typed in.</source> <translation>Klicken Sie hier, um zum nächsten Vorkommen des Suchtextes zu springen.</translation> </message> <message> - <location/> <source>Find Next</source> <translation>Weitersuchen</translation> </message> <message> - <location/> <source>Click here to close this window.</source> <translation>Klicken Sie hier, um das Fenster zu schließen.</translation> </message> <message> - <location/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location filename="../tools/linguist/linguist/finddialog.cpp" line="+12"/> <source></source> <comment>Choose Edit|Find from the menu bar or press Ctrl+F to pop up the Find dialog</comment> <translation></translation> @@ -286,30 +233,25 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> <context> <name>FormMultiWidget</name> <message> - <location filename="../tools/linguist/linguist/messageeditorwidgets.cpp" line="+302"/> <source>Alt+Delete</source> <extracomment>translate, but don't change</extracomment> <translation>Alt+Delete</translation> </message> <message> - <location line="+1"/> <source>Shift+Alt+Insert</source> <extracomment>translate, but don't change</extracomment> <translation>Shift+Alt+Insert</translation> </message> <message> - <location line="+1"/> <source>Alt+Insert</source> <extracomment>translate, but don't change</extracomment> <translation>Alt+Insert</translation> </message> <message> - <location line="+131"/> <source>Confirmation - Qt Linguist</source> <translation>Bestätigung - Qt Linguist</translation> </message> <message> - <location line="+1"/> <source>Delete non-empty length variant?</source> <translation>Soll die ausgefüllte Längenvariante gelöscht werden?</translation> </message> @@ -317,7 +259,6 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> <context> <name>LRelease</name> <message numerus="yes"> - <location filename="../tools/linguist/shared/qm.cpp" line="+763"/> <source>Dropped %n message(s) which had no ID.</source> <translation> <numerusform>Es wurde ein Eintrag ohne Bezeichner gelöscht.</numerusform> @@ -325,7 +266,6 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> </translation> </message> <message numerus="yes"> - <location line="+4"/> <source>Excess context/disambiguation dropped from %n message(s).</source> <translation> <numerusform>Es wurde überflüssiger Kontext beziehungsweise überflüssige Infomation zur Unterscheidung bei einem Eintrag entfernt.</numerusform> @@ -333,10 +273,23 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> </translation> </message> <message numerus="yes"> - <location line="+8"/> + <source> Generated %n translation(s) (%1 finished and %2 unfinished)</source> + <translation> + <numerusform> Eine Übersetzung wurde erzeugt (%1 abgeschlossen und %2 nicht abgeschlossen)</numerusform> + <numerusform> %n Übersetzungen wurden erzeugt (%1 abgeschlossen und %2 nicht abgeschlossen)</numerusform> + </translation> + </message> + <message numerus="yes"> + <source> Ignored %n untranslated source text(s)</source> + <translation> + <numerusform> Ein nicht übersetzter Text wurde ignoriert</numerusform> + <numerusform> %n nicht übersetzte Texte wurden ignoriert</numerusform> + </translation> + </message> + <message numerus="yes"> <source> Generated %n translation(s) (%1 finished and %2 unfinished) </source> - <translation> + <translation type="obsolete"> <numerusform> Eine Übersetzung wurde erzeugt (%1 abgeschlossen und %2 nicht abgeschlossen) </numerusform> <numerusform> %n Übersetzungen wurden erzeugt (%1 abgeschlossene und %2 nicht abgeschlossene) @@ -344,10 +297,9 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> </translation> </message> <message numerus="yes"> - <location line="+4"/> <source> Ignored %n untranslated source text(s) </source> - <translation> + <translation type="obsolete"> <numerusform> Ein nicht übersetzter Text wurde ignoriert </numerusform> <numerusform> %n nicht übersetzte Texte wurden ignoriert @@ -358,628 +310,496 @@ Es wird mit einer einfachen Universalform gearbeitet.</translation> <context> <name>MainWindow</name> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>MainWindow</source> <translation>Hauptfenster</translation> </message> <message> - <location/> <source>&Phrases</source> <translation>&Wörterbuch</translation> </message> <message> - <location/> <source>&Close Phrase Book</source> <translation>Wörterbuch &Schließen</translation> </message> <message> - <location/> <source>&Edit Phrase Book</source> <translation>Wörterbuch &bearbeiten</translation> </message> <message> - <location/> <source>&Print Phrase Book</source> <translation>Wörterbuch &drucken</translation> </message> <message> - <location/> <source>V&alidation</source> <translation>V&alidierung</translation> </message> <message> - <location/> <source>&View</source> <translation>&Ansicht</translation> </message> <message> - <location/> <source>Vie&ws</source> <translation>&Ansichten</translation> </message> <message> - <location/> <source>&Toolbars</source> <translation>&Werkzeugleisten</translation> </message> <message> - <location/> <source>&Help</source> <translation>&Hilfe</translation> </message> <message> - <location/> <source>&Translation</source> <translation>&Übersetzung</translation> </message> <message> - <location/> <source>&File</source> <translation>&Datei</translation> </message> <message> - <location/> <source>&Edit</source> <translation>&Bearbeiten</translation> </message> <message> - <location/> <source>&Open...</source> <translation>Ö&ffnen ...</translation> </message> <message> - <location/> <source>Open a Qt translation source file (TS file) for editing</source> <translation>Qt-Übersetzungsdatei (TS-Datei) zum Bearbeiten öffnen</translation> </message> <message> - <location/> <source>Ctrl+O</source> <translation>Ctrl+O</translation> </message> <message> - <location/> <source>E&xit</source> <translation>&Beenden</translation> </message> <message> - <location/> <source>Close this window and exit.</source> <translation>Dieses Fenster schließen und das Programm beenden.</translation> </message> <message> - <location/> <source>Ctrl+Q</source> <translation>Ctrl+Q</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+668"/> - <location line="+15"/> <source>&Save</source> <translation>&Speichern</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Save changes made to this Qt translation source file</source> <translation>Änderungen an der Qt-Übersetzungsdatei speichern</translation> </message> <message> - <location/> <source>Move to the previous unfinished item.</source> <translation>Zum vorherigen unerledigten Eintrag gehen.</translation> </message> <message> - <location/> <source>Move to the next unfinished item.</source> <translation>Zum nächsten unerledigten Eintrag gehen.</translation> </message> <message> - <location/> <source>Move to the previous item.</source> <translation>Zum vorigen Eintrag gehen.</translation> </message> <message> - <location/> <source>Move to the next item.</source> <translation>Zum nächsten Eintrag gehen.</translation> </message> <message> - <location/> <source>Mark this item as done and move to the next unfinished item.</source> <translation>Diesen Eintrag als erledigt markieren und zum nächsten unerledigten Eintrag gehen.</translation> </message> <message> - <location/> <source>Copy from source text</source> <translation>Ursprungstext übernehmen</translation> </message> <message> - <location/> <source>Toggle the validity check of accelerators, i.e. whether the number of ampersands in the source and translation text is the same. If the check fails, a message is shown in the warnings window.</source> <translation>Die Prüfung der Tastenkürzel, das heißt, die Übereinstimmung der kaufmännischen Und-Zeichen in Quelle und Übersetzung ein- bzw. ausschalten. Bei Fehlschlag wird eine Warnung im Hinweis-Fenster angezeigt.</translation> </message> <message> - <location/> <source>Toggle the validity check of ending punctuation. If the check fails, a message is shown in the warnings window.</source> <translation>Die Prüfung der Satzendezeichen am Ende des Textes ein- bzw. ausschalten. Bei Fehlschlag wird eine Warnung im Hinweis-Fenster angezeigt.</translation> </message> <message> - <location/> <source>Toggle checking that phrase suggestions are used. If the check fails, a message is shown in the warnings window.</source> <translation>Die Prüfung der Verwendung der Wörterbuchvorschläge ein- bzw. ausschalten. Bei Fehlschlag wird eine Warnung im Hinweis-Fenster angezeigt.</translation> </message> <message> - <location/> <source>Toggle the validity check of place markers, i.e. whether %1, %2, ... are used consistently in the source text and translation text. If the check fails, a message is shown in the warnings window.</source> <translation>Die Prüfung der Platzhalter, das heißt, ob %1, %2 usw. in Ursprungstext und Übersetzung übereinstimmend verwendet werden, ein- bzw. ausschalten. Bei Fehlschlag wird eine Warnung im Hinweis-Fenster angezeigt.</translation> </message> <message> - <location/> <source>Open Read-O&nly...</source> <translation>Schr&eibgeschützt öffnen ...</translation> </message> <message> - <location/> <source>&Save All</source> <translation>&Alle speichern</translation> </message> <message> - <location/> <source>Ctrl+S</source> <translation>Ctrl+S</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-14"/> - <location line="+11"/> <source>Save &As...</source> <translation>Speichern &unter...</translation> </message> <message> - <location/> <source>Save As...</source> <translation>Speichern unter ...</translation> </message> <message> - <location/> <source>Save changes made to this Qt translation source file into a new file.</source> <translation>Änderungen an dieser Qt-Übersetzungsdatei in einer neuen Datei speichern.</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+4"/> <source>&Release</source> <translation>&Freigeben</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Create a Qt message file suitable for released applications from the current message file.</source> <translation>Qt-Nachrichtendatei (QM-Datei) aus der aktuellen Übersetzungsdatei erzeugen.</translation> </message> <message> - <location/> <source>&Print...</source> <translation>&Drucken ...</translation> </message> <message> - <location/> <source>Ctrl+P</source> <translation>Ctrl+P</translation> </message> <message> - <location/> <source>&Undo</source> <translation>&Rückgängig</translation> </message> <message> - <location/> <source>Recently Opened &Files</source> <translation>Zu&letzt bearbeitete Dateien</translation> </message> <message> - <location/> <source>Save</source> <translation>Speichern</translation> </message> <message> - <location/> <source>Print a list of all the translation units in the current translation source file.</source> <translation>Liste aller Übersetzungseinheiten in der aktuellen Übersetzungsdatei drucken.</translation> </message> <message> - <location/> <source>Undo the last editing operation performed on the current translation.</source> <translation>Die letzte Änderung an der Übersetzung rückgängig machen.</translation> </message> <message> - <location/> <source>Ctrl+Z</source> <translation>Ctrl+Z</translation> </message> <message> - <location/> <source>&Redo</source> <translation>&Wiederherstellen</translation> </message> <message> - <location/> <source>Redo an undone editing operation performed on the translation.</source> <translation>Die letzte rückgängig gemachte Änderung wieder herstellen.</translation> </message> <message> - <location/> <source>Ctrl+Y</source> <translation>Ctrl+Y</translation> </message> <message> - <location/> <source>Cu&t</source> <translation>&Ausschneiden</translation> </message> <message> - <location/> <source>Copy the selected translation text to the clipboard and deletes it.</source> <translation>Den ausgewählten Übersetzungstext in die Zwischenablage kopieren und löschen.</translation> </message> <message> - <location/> <source>Ctrl+X</source> <translation>Ctrl+X</translation> </message> <message> - <location/> <source>&Copy</source> <translation>&Kopieren</translation> </message> <message> - <location/> <source>Copy the selected translation text to the clipboard.</source> <translation>Den ausgewählten Übersetzungstext in die Zwischenablage kopieren.</translation> </message> <message> - <location/> <source>Ctrl+C</source> <translation>Ctrl+C</translation> </message> <message> - <location/> <source>&Paste</source> <translation>&Einfügen</translation> </message> <message> - <location/> <source>Paste the clipboard text into the translation.</source> <translation>Text aus der Zwischenablage in die Übersetzung einfügen.</translation> </message> <message> - <location/> <source>Ctrl+V</source> <translation>Ctrl+V</translation> </message> <message> - <location/> <source>Select &All</source> <translation>Alles &markieren</translation> </message> <message> - <location/> <source>Select the whole translation text.</source> <translation>Den gesamten Übersetzungstext auswählen.</translation> </message> <message> - <location/> <source>Ctrl+A</source> <translation>Ctrl+A</translation> </message> <message> - <location/> <source>&Find...</source> <translation>&Suchen ...</translation> </message> <message> - <location/> <source>Search for some text in the translation source file.</source> <translation>In der Übersetzungsdatei nach Text suchen.</translation> </message> <message> - <location/> <source>Ctrl+F</source> <translation>Ctrl+F</translation> </message> <message> - <location/> <source>Find &Next</source> <translation>&Weitersuchen</translation> </message> <message> - <location/> <source>Continue the search where it was left.</source> <translation>Die Suche fortsetzen.</translation> </message> <message> - <location/> <source>F3</source> <translation>F3</translation> </message> <message> - <location/> <source>&Prev Unfinished</source> <translation>&Vorheriger Unerledigter</translation> </message> <message> - <location/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location/> <source>&Close All</source> <translation>A&lle schließen</translation> </message> <message> - <location/> <source>Ctrl+W</source> <translation>Ctrl+W</translation> </message> <message> - <location/> <source>Ctrl+K</source> <translation>Ctrl+K</translation> </message> <message> - <location/> <source>&Next Unfinished</source> <translation>&Nächster Unerledigter</translation> </message> <message> - <location/> <source>P&rev</source> <translation>V&orheriger</translation> </message> <message> - <location/> <source>Ctrl+Shift+K</source> <translation>Ctrl+Shift+K</translation> </message> <message> - <location/> <source>Ne&xt</source> <translation>Nä&chster</translation> </message> <message> - <location/> <source>&Done and Next</source> <translation>&Fertig und Nächster</translation> </message> <message> - <location/> <source>Copies the source text into the translation field.</source> <translation>Kopiert den Ursprungstext in das Übersetzungsfeld.</translation> </message> <message> - <location/> <source>Ctrl+B</source> <translation>Ctrl+B</translation> </message> <message> - <location/> <source>&Accelerators</source> <translation>&Kurzbefehle</translation> </message> <message> - <location/> <source>&Ending Punctuation</source> <translation>&Punktierung am Ende</translation> </message> <message> - <location/> <source>&Phrase matches</source> <translation>&Wörterbuch</translation> </message> <message> - <location/> <source>Place &Marker Matches</source> <translation>Platz&halter</translation> </message> <message> - <location/> <source>&New Phrase Book...</source> <translation>&Neues Wörterbuch ...</translation> </message> <message> - <location/> <source>Create a new phrase book.</source> <translation>Ein neues Wörterbuch erzeugen.</translation> </message> <message> - <location/> <source>Ctrl+N</source> <translation>Ctrl+N</translation> </message> <message> - <location/> <source>&Open Phrase Book...</source> <translation>&Wörterbuch öffnen ...</translation> </message> <message> - <location/> <source>Open a phrase book to assist translation.</source> <translation>Ein Wörterbuch zur Unterstützung bei der Übersetzung öffnen.</translation> </message> <message> - <location/> <source>Ctrl+H</source> <translation>Ctrl+H</translation> </message> <message> - <location/> <source>&Reset Sorting</source> <translation>&Sortierung zurücksetzen</translation> </message> <message> - <location/> <source>Sort the items back in the same order as in the message file.</source> <translation>Die Einträge in der gleichen Reihenfolge wie in der ursprünglichen Übersetzungsdatei sortieren.</translation> </message> <message> - <location/> <source>&Display guesses</source> <translation>&Vorschläge anzeigen</translation> </message> <message> - <location/> <source>Set whether or not to display translation guesses.</source> <translation>Darstellung von Übersetzungsvorschlägen aktivieren/deaktivieren.</translation> </message> <message> - <location/> <source>&Statistics</source> <translation>S&tatistik</translation> </message> <message> - <location/> <source>Display translation statistics.</source> <translation>Zeige Übersetzungsstatistik an.</translation> </message> <message> - <location/> <source>&Manual</source> <translation>&Handbuch</translation> </message> <message> - <location/> <source>F1</source> <translation>F1</translation> </message> <message> - <location/> <source>About Qt Linguist</source> <translation>Über Qt Linguist</translation> </message> <message> - <location/> <source>About Qt</source> <translation>Über Qt</translation> </message> <message> - <location/> <source>&What's This?</source> <translation>&Direkthilfe</translation> </message> <message> - <location/> <source>What's This?</source> <translation>Direkthilfe</translation> </message> <message> - <location/> <source>Enter What's This? mode.</source> <translation>Direkthilfe-Modus aktivieren.</translation> </message> <message> - <location/> <source>Shift+F1</source> <translation>Shift+F1</translation> </message> <message> - <location/> <source>&Search And Translate...</source> <translation>Suchen und &übersetzen ...</translation> </message> <message> - <location/> <source>Replace the translation on all entries that matches the search source text.</source> <translation>Die Übersetzung aller Einträge ersetzen, die dem Suchtext entsprechen.</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+21"/> <source>&Batch Translation...</source> <translation>&Automatische Übersetzung ...</translation> </message> <message> - <location/> <source>Batch translate all entries using the information in the phrase books.</source> <translation>Alle Einträge automatisch mit Hilfe des Wörterbuchs übersetzen.</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-34"/> - <location line="+10"/> <source>Release As...</source> <translation>Freigeben unter ...</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-2035"/> <source></source> <comment>This is the application's main window.</comment> <translation></translation> </message> <message> - <location line="+190"/> <source>Source text</source> <translation>Ursprungstext</translation> </message> <message> - <location line="+1"/> - <location line="+25"/> <source>Index</source> <translation>Index</translation> </message> <message> - <location line="-2"/> - <location line="+63"/> <source>Context</source> <translation>Kontext</translation> </message> <message> - <location line="-62"/> <source>Items</source> <translation>Einträge</translation> </message> <message> - <location line="+79"/> <source>This panel lists the source contexts.</source> <translation>Dieser Bereich zeigt die Kontexte an.</translation> </message> <message> - <location line="+13"/> <source>Strings</source> <translation>Zeichenketten</translation> </message> <message> - <location line="+37"/> <source>Phrases and guesses</source> <translation>Wörterbuch und Vorschläge</translation> </message> <message> - <location line="+10"/> <source>Sources and Forms</source> <translation>Quelldateien und Formulare</translation> </message> <message> - <location line="+15"/> <source>Warnings</source> <translation>Hinweise</translation> </message> <message> - <location line="+59"/> <source> MOD </source> <comment>status bar: file(s) modified</comment> <translation>Geändert</translation> </message> <message> - <location line="+139"/> <source>Loading...</source> <translation>Lade ...</translation> </message> <message> - <location line="+32"/> - <location line="+22"/> <source>Loading File - Qt Linguist</source> <translation>Laden - Qt Linguist</translation> </message> <message> - <location line="-21"/> <source>The file '%1' does not seem to be related to the currently open file(s) '%2'. Close the open file(s) first?</source> @@ -988,7 +808,6 @@ Close the open file(s) first?</source> Sollen die bereits geöffneten Dateien vorher geschlossen werden?</translation> </message> <message> - <location line="+22"/> <source>The file '%1' does not seem to be related to the file '%2' which is being loaded as well. Skip loading the first named file?</source> @@ -997,7 +816,6 @@ Skip loading the first named file?</source> Soll die erstgenannte Datei übersprungen werden?</translation> </message> <message numerus="yes"> - <location line="+61"/> <source>%n translation unit(s) loaded.</source> <translation> <numerusform>Eine Übersetzungseinheit geladen.</numerusform> @@ -1005,124 +823,84 @@ Soll die erstgenannte Datei übersprungen werden?</translation> </translation> </message> <message> - <location line="+94"/> <source>Related files (%1);;</source> <translation>Verwandte Dateien (%1);;</translation> </message> <message> - <location line="+4"/> <source>Open Translation Files</source> <translation>Übersetzungsdateien öffnen</translation> </message> <message> - <location line="+10"/> - <location line="+31"/> <source>File saved.</source> <translation>Datei gespeichert.</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+15"/> - <location line="+1187"/> <source>Release</source> <translation>Freigeben</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-1186"/> <source>Qt message files for released applications (*.qm) All files (*)</source> <translation>Qt-Nachrichtendateien (*.qm) Alle Dateien (*)</translation> </message> <message> - <location line="+3"/> - <location line="+12"/> <source>File created.</source> <translation>Datei erzeugt.</translation> </message> <message> - <location line="+34"/> - <location line="+355"/> <source>Printing...</source> <translation>Drucke ...</translation> </message> <message> - <location line="-347"/> <source>Context: %1</source> <translation>Kontext: %1</translation> </message> <message> - <location line="+32"/> <source>finished</source> <translation>erledigt</translation> </message> <message> - <location line="+3"/> <source>unresolved</source> <translation>ungelöst</translation> </message> <message> - <location line="+3"/> <source>obsolete</source> <translation>veraltet</translation> </message> <message> - <location line="+15"/> - <location line="+307"/> <source>Printing... (page %1)</source> <translation>Drucke ... (Seite %1)</translation> </message> <message> - <location line="-300"/> - <location line="+307"/> <source>Printing completed</source> <translation>Drucken beendet</translation> </message> <message> - <location line="-305"/> - <location line="+307"/> <source>Printing aborted</source> <translation>Drucken abgebrochen</translation> </message> <message> - <location line="-232"/> <source>Search wrapped.</source> <translation>Suche beginnt von oben.</translation> </message> <message> - <location line="+17"/> - <location line="+278"/> - <location line="+34"/> - <location line="+24"/> - <location line="+22"/> - <location line="+538"/> - <location line="+1"/> - <location line="+274"/> - <location line="+40"/> - <location line="+10"/> <source>Qt Linguist</source> <translation>Qt Linguist</translation> </message> <message> - <location line="-1220"/> - <location line="+102"/> <source>Cannot find the string '%1'.</source> <translation>Kann Zeichenkette '%1' nicht finden.</translation> </message> <message> - <location line="-82"/> <source>Search And Translate in '%1' - Qt Linguist</source> <translation>Suchen und übersetzen in '%1' - Qt Linguist</translation> </message> <message> - <location line="+34"/> - <location line="+23"/> - <location line="+24"/> <source>Translate - Qt Linguist</source> <translation>Übersetzung - Qt Linguist</translation> </message> <message numerus="yes"> - <location line="-46"/> <source>Translated %n entry(s)</source> <translation> <numerusform>Ein Eintrag übersetzt</numerusform> @@ -1130,39 +908,32 @@ Alle Dateien (*)</translation> </translation> </message> <message> - <location line="+23"/> <source>No more occurrences of '%1'. Start over?</source> <translation>Keine weiteren Vorkommen von '%1'. Von vorne beginnen?</translation> </message> <message> - <location line="+30"/> <source>Create New Phrase Book</source> <translation>Erzeugen eines neuen Wörterbuchs</translation> </message> <message> - <location line="+1"/> <source>Qt phrase books (*.qph) All files (*)</source> <translation>Qt-Wörterbücher (*.qph) Alle Dateien (*)</translation> </message> <message> - <location line="+11"/> <source>Phrase book created.</source> <translation>Wörterbuch erzeugt.</translation> </message> <message> - <location line="+17"/> <source>Open Phrase Book</source> <translation>Wörterbuch öffnen</translation> </message> <message> - <location line="+1"/> <source>Qt phrase books (*.qph);;All files (*)</source> <translation>Qt-Wörterbücher (*.qph);;Alle Dateien (*)</translation> </message> <message numerus="yes"> - <location line="+7"/> <source>%n phrase(s) loaded.</source> <translation> <numerusform>Ein Wörterbucheintrag geladen.</numerusform> @@ -1170,328 +941,254 @@ Alle Dateien (*)</translation> </translation> </message> <message> - <location line="+93"/> - <location line="+3"/> - <location line="+7"/> <source>Add to phrase book</source> <translation>Hinzufügen zum Wörterbuch</translation> </message> <message> - <location line="-9"/> <source>No appropriate phrasebook found.</source> <translation>Es kann kein geeignetes Wörterbuch gefunden werden.</translation> </message> <message> - <location line="+3"/> <source>Adding entry to phrasebook %1</source> <translation>Eintrag zu Wörterbuch %1 hinzufügen</translation> </message> <message> - <location line="+7"/> <source>Select phrase book to add to</source> <translation>Zu welchem Wörterbuch soll der Eintrag hinzugefügt werden?</translation> </message> <message> - <location line="+29"/> <source>Unable to launch Qt Assistant (%1)</source> <translation>Qt Assistant kann nicht gestartet werden (%1)</translation> </message> <message> - <location line="+17"/> <source>Version %1</source> <translation>Version %1</translation> </message> <message> - <location line="+3"/> <source><center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> <translation type="unfinished"></translation> </message> <message> - <location line="+38"/> <source>Do you want to save the modified files?</source> <translation>Möchten Sie die geänderten Dateien speichern?</translation> </message> <message> - <location line="+22"/> <source>Do you want to save '%1'?</source> <translation>Möchten Sie '%1' speichern?</translation> </message> <message> - <location line="+43"/> <source>Qt Linguist[*]</source> <translation>Qt Linguist[*]</translation> </message> <message> - <location line="+2"/> <source>%1[*] - Qt Linguist</source> <translation>%1[*] - Qt Linguist</translation> </message> <message> - <location line="+267"/> - <location line="+12"/> <source>No untranslated translation units left.</source> <translation>Es wurden alle Übersetzungseinheiten abgearbeitet.</translation> </message> <message> - <location line="+198"/> <source>&Window</source> <translation>&Fenster</translation> </message> <message> - <location line="+2"/> <source>Minimize</source> <translation>Minimieren</translation> </message> <message> - <location line="+1"/> <source>Ctrl+M</source> <translation>Ctrl+M</translation> </message> <message> - <location line="+12"/> <source>Display the manual for %1.</source> <translation>Handbuch zu %1 anzeigen.</translation> </message> <message> - <location line="+1"/> <source>Display information about %1.</source> <translation>Informationen über %1 anzeigen.</translation> </message> <message> - <location line="+70"/> <source>&Save '%1'</source> <translation>'%1' &speichern</translation> </message> <message> - <location line="+1"/> <source>Save '%1' &As...</source> <translation>'%1' speichern &unter ...</translation> </message> <message> - <location line="+1"/> <source>Release '%1'</source> <translation>'%1' freigeben</translation> </message> <message> - <location line="+1"/> <source>Release '%1' As...</source> <translation>'%1' freigeben unter ...</translation> </message> <message> - <location line="+1"/> <source>&Close '%1'</source> <translation>'%1' &schließen</translation> </message> <message> - <location line="+6"/> - <location line="+13"/> <source>&Close</source> <translation>&Schließen</translation> </message> <message> - <location line="-10"/> <source>Save All</source> <translation>Alles speichern</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+1"/> <source>&Release All</source> <translation>Alles f&reigeben</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+1"/> <source>Close All</source> <translation>Alle schließen</translation> </message> <message> - <location line="+23"/> <source>Translation File &Settings for '%1'...</source> <translation>Einstellungen der Übersetzungs&datei für '%1' ...</translation> </message> <message> - <location line="+1"/> <source>&Batch Translation of '%1'...</source> <translation>&Automatische Übersetzung von '%1' ...</translation> </message> <message> - <location line="+1"/> <source>Search And &Translate in '%1'...</source> <translation>Suchen und &übersetzen in '%1' ...</translation> </message> <message> - <location line="+4"/> <source>Search And &Translate...</source> <translation>Suchen und &übersetzen ...</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+51"/> <source>File</source> <translation>Datei</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+7"/> <source>Edit</source> <translation>Bearbeiten</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+6"/> <source>Translation</source> <translation>Übersetzung</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+6"/> <source>Validation</source> <translation>Validierung</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+7"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="+84"/> <source>Cannot read from phrase book '%1'.</source> <translation>Wörterbuch '%1' kann nicht gelesen werden.</translation> </message> <message> - <location line="+15"/> <source>Close this phrase book.</source> <translation>Dieses Wörterbuch schließen.</translation> </message> <message> - <location line="+4"/> <source>Enables you to add, modify, or delete entries in this phrase book.</source> <translation>Erlaubt das Hinzufügen, Ändern und Entfernen von Wörterbuch-Einträgen.</translation> </message> <message> - <location line="+5"/> <source>Print the entries in this phrase book.</source> <translation>Die Einträge des Wörterbuchs drucken.</translation> </message> <message> - <location line="+16"/> <source>Cannot create phrase book '%1'.</source> <translation>Wörterbuch '%1' kann nicht erzeugt werden.</translation> </message> <message> - <location line="+10"/> <source>Do you want to save phrase book '%1'?</source> <translation>Möchten Sie das Wörterbuch '%1' speichern?</translation> </message> <message> - <location line="+349"/> <source>All</source> <translation>Alle</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.ui"/> <source>Open/Refresh Form &Preview</source> <translation>&Vorschau öffnen/aktualisieren</translation> </message> <message> - <location/> <source>Form Preview Tool</source> <translation>Vorschau für Eingabemasken</translation> </message> <message> - <location/> <source>F5</source> <translation>F5</translation> </message> <message> - <location/> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-562"/> <source>Translation File &Settings...</source> <translation>E&instellungen ...</translation> </message> <message> - <location/> <source>&Add to Phrase Book</source> <translation>Zum Wörterbuch &hinzufügen</translation> </message> <message> - <location/> <source>Ctrl+T</source> <translation>Ctrl+T</translation> </message> <message> - <location/> <source>Ctrl+J</source> <translation>Ctrl+J</translation> </message> <message> - <location/> <source>Ctrl+Shift+J</source> <translation>Ctrl+Shift+J</translation> </message> <message> - <location/> <source>Previous unfinished item</source> <translation>Vorheriger unerledigter Eintrag</translation> </message> <message> - <location/> <source>Next unfinished item</source> <translation>Nächster unerledigter Eintrag</translation> </message> <message> - <location/> <source>Move to previous item</source> <translation>Zum vorigen Eintrag gehen</translation> </message> <message> - <location/> <source>Next item</source> <translation>Nächster Eintrag</translation> </message> <message> - <location/> <source>Mark item as done and move to the next unfinished item</source> <translation>Eintrag als erledigt markieren und zum nächsten unerledigten Eintrag gehen</translation> </message> <message> - <location/> <source>Copies the source text into the translation field</source> <translation>Kopiert den Ursprungstext in das Übersetzungsfeld</translation> </message> <message> - <location/> <source>Toggle the validity check of accelerators</source> <translation>Prüfung der Tastenkürzel ein- bzw. ausschalten</translation> </message> <message> - <location/> <source>Toggle the validity check of ending punctuation</source> <translation>Prüfung der Satzendezeichen am Ende des Textes ein- bzw. ausschalten</translation> </message> <message> - <location/> <source>Toggle checking that phrase suggestions are used</source> <translation>Überprüfung, ob Wörterbucheinträge benutzt werden, aktivieren/deaktivieren</translation> </message> <message> - <location/> <source>Toggle the validity check of place markers</source> <translation>Prüfung der Platzhalter ein- bzw. ausschalten'</translation> </message> <message> - <location/> <source>Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the TS file.</source> <translation>Eine Qt-Nachrichtendatei aus der aktuellen Übersetzungsdatei erzeugen. Der Dateiname wird automatisch aus dem Namen der TS-Datei abgeleitet.</translation> </message> <message> - <location/> <source>Length Variants</source> <translation>Längenvarianten</translation> </message> <message> - <location/> <source>Display information about the Qt toolkit by Nokia.</source> <translation>Zeigt Informationen über das Qt-Toolkit von Nokia an.</translation> </message> @@ -1499,103 +1196,83 @@ Alle Dateien (*)</translation> <context> <name>MessageEditor</name> <message> - <location filename="../tools/linguist/linguist/messageeditor.cpp" line="+42"/> <source></source> <comment>This is the right panel of the main window.</comment> <translation></translation> </message> <message> - <location line="+30"/> <source>Russian</source> <translation>Russisch</translation> </message> <message> - <location line="+1"/> <source>German</source> <translation>Deutsch</translation> </message> <message> - <location line="+1"/> <source>Japanese</source> <translation>Japanisch</translation> </message> <message> - <location line="+1"/> <source>French</source> <translation>Französisch</translation> </message> <message> - <location line="+1"/> <source>Polish</source> <translation>Polnisch</translation> </message> <message> - <location line="+1"/> <source>Chinese</source> <translation>Chinesisch</translation> </message> <message> - <location line="+47"/> <source>This whole panel allows you to view and edit the translation of some source text.</source> <translation>Dieser Bereich erlaubt die Darstellung und Änderung der Übersetzung eines Textes.</translation> </message> <message> - <location line="+10"/> <source>Source text</source> <translation>Ursprungstext</translation> </message> <message> - <location line="+2"/> <source>This area shows the source text.</source> <translation>Dieser Bereich zeigt den Ursprungstext.</translation> </message> <message> - <location line="+4"/> <source>Source text (Plural)</source> <translation>Ursprungstext (Plural)</translation> </message> <message> - <location line="+2"/> <source>This area shows the plural form of the source text.</source> <translation>Dieser Bereich zeigt die Pluralform des Ursprungstexts.</translation> </message> <message> - <location line="+4"/> <source>Developer comments</source> <translation>Hinweise des Entwicklers</translation> </message> <message> - <location line="+3"/> <source>This area shows a comment that may guide you, and the context in which the text occurs.</source> <translation>Dieser Bereich zeigt eventuelle Kommentare und den Kontext, in dem der Text auftritt.</translation> </message> <message> - <location line="+59"/> <source>Here you can enter comments for your own use. They have no effect on the translated applications.</source> <translation>Hier können Sie Hinweise für den eigenen Gebrauch eintragen. Diese haben keinen Einflusse auf die Übersetzung.</translation> </message> <message> - <location line="+234"/> <source>%1 translation (%2)</source> <translation>Übersetzung %1 (%2)</translation> </message> <message> - <location line="+9"/> <source>This is where you can enter or modify the translation of the above source text.</source> <translation>Hier können Sie die Übersetzung des Ursprungstextes eingeben bzw. ändern.</translation> </message> <message> - <location line="+5"/> <source>%1 translation</source> <translation>Übersetzung %1</translation> </message> <message> - <location line="+1"/> <source>%1 translator comments</source> <translation>%1 Hinweise des Übersetzers</translation> </message> <message> - <location line="+157"/> <source>'%1' Line: %2</source> <translation>'%1' @@ -1605,22 +1282,18 @@ Zeile: %2</translation> <context> <name>MessageModel</name> <message> - <location filename="../tools/linguist/linguist/messagemodel.cpp" line="+839"/> <source>Completion status for %1</source> <translation>Bearbeitungsstand von %1</translation> </message> <message> - <location line="+15"/> <source><file header></source> <translation><Dateikopf></translation> </message> <message> - <location line="+2"/> <source><context comment></source> <translation><Kontexthinweis></translation> </message> <message> - <location line="+71"/> <source><unnamed context></source> <translation><unbenannter Kontext></translation> </message> @@ -1628,7 +1301,6 @@ Zeile: %2</translation> <context> <name>MsgEdit</name> <message> - <location filename="../tools/linguist/linguist/messageeditor.cpp" line="-602"/> <source></source> <comment>This is the right panel of the main window.</comment> <translation></translation> @@ -1637,113 +1309,91 @@ Zeile: %2</translation> <context> <name>PhraseBookBox</name> <message> - <location filename="../tools/linguist/linguist/phrasebookbox.cpp" line="+12"/> <source></source> <comment>Go to Phrase > Edit Phrase Book... The dialog that pops up is a PhraseBookBox.</comment> <translation></translation> </message> <message> - <location line="+54"/> <source>(New Entry)</source> <translation>(Neuer Eintrag)</translation> </message> <message> - <location line="+3"/> <source>%1[*] - Qt Linguist</source> <translation>%1[*] - Qt Linguist</translation> </message> <message> - <location line="+90"/> <source>Qt Linguist</source> <translation>Qt Linguist</translation> </message> <message> - <location line="+1"/> <source>Cannot save phrase book '%1'.</source> <translation>Wörterbuch '%1' kann nicht gespeichert werden.</translation> </message> <message> - <location filename="../tools/linguist/linguist/phrasebookbox.ui"/> <source>Edit Phrase Book</source> <translation>Wörterbuch bearbeiten</translation> </message> <message> - <location/> <source>This window allows you to add, modify, or delete entries in a phrase book.</source> <translation>Dieses Fenster erlaubt das Hinzufügen, Ändern und Entfernen von Wörterbuch-Einträgen.</translation> </message> <message> - <location/> <source>&Translation:</source> <translation>&Übersetzung:</translation> </message> <message> - <location/> <source>This is the phrase in the target language corresponding to the source phrase.</source> <translation>Dies ist der Text, der in der Zielsprache dem Ursprungstext entspricht.</translation> </message> <message> - <location/> <source>S&ource phrase:</source> <translation>&Ursprungstext:</translation> </message> <message> - <location/> <source>This is a definition for the source phrase.</source> <translation>Dies ist die Definition des Ursprungstextes.</translation> </message> <message> - <location/> <source>This is the phrase in the source language.</source> <translation>Dies ist der Text der Ursprungssprache.</translation> </message> <message> - <location/> <source>&Definition:</source> <translation>&Definition:</translation> </message> <message> - <location/> <source>Click here to add the phrase to the phrase book.</source> <translation>Einen neuen Eintrag ins Wörterbuch einfügen.</translation> </message> <message> - <location/> <source>&New Entry</source> <translation>&Neuer Eintrag</translation> </message> <message> - <location/> <source>Click here to remove the entry from the phrase book.</source> <translation>Den Eintrag aus dem Wörterbuch entfernen.</translation> </message> <message> - <location/> <source>&Remove Entry</source> <translation>&Eintrag entfernen</translation> </message> <message> - <location/> <source>Settin&gs...</source> <translation>&Einstellungen ...</translation> </message> <message> - <location/> <source>Click here to save the changes made.</source> <translation>Änderungen speichern.</translation> </message> <message> - <location/> <source>&Save</source> <translation>&Speichern</translation> </message> <message> - <location/> <source>Click here to close this window.</source> <translation>Klicken Sie hier, um das Fenster zu schließen.</translation> </message> <message> - <location/> <source>Close</source> <translation>Schließen</translation> </message> @@ -1751,17 +1401,14 @@ Zeile: %2</translation> <context> <name>PhraseModel</name> <message> - <location filename="../tools/linguist/linguist/phrasemodel.cpp" line="+117"/> <source>Source phrase</source> <translation>Ursprungstext</translation> </message> <message> - <location line="+2"/> <source>Translation</source> <translation>Übersetzung</translation> </message> <message> - <location line="+2"/> <source>Definition</source> <translation>Definition</translation> </message> @@ -1769,22 +1416,18 @@ Zeile: %2</translation> <context> <name>PhraseView</name> <message> - <location filename="../tools/linguist/linguist/phraseview.cpp" line="+122"/> <source>Insert</source> <translation>Einfügen</translation> </message> <message> - <location line="+3"/> <source>Edit</source> <translation>Bearbeiten</translation> </message> <message> - <location line="+113"/> <source>Guess (%1)</source> <translation>Vorschlag (%1)</translation> </message> <message> - <location line="+2"/> <source>Guess</source> <translation>Vorschlag</translation> </message> @@ -1792,63 +1435,46 @@ Zeile: %2</translation> <context> <name>QObject</name> <message> - <location filename="../tools/linguist/shared/qm.cpp" line="+12"/> <source>Compiled Qt translations</source> <translation>Kompilierte Qt-Übersetzungen</translation> </message> <message> - <location filename="../tools/linguist/linguist/mainwindow.cpp" line="-1302"/> <source>Translation files (%1);;</source> <translation>Übersetzungsdateien (%1);;</translation> </message> <message> - <location line="+5"/> <source>All files (*)</source> <translation>Alle Dateien (*)</translation> </message> <message> - <location filename="../tools/linguist/linguist/messagemodel.cpp" line="-1134"/> - <location line="+27"/> - <location line="+67"/> - <location line="+39"/> - <location line="+17"/> - <location line="+15"/> - <location filename="../tools/linguist/linguist/phrase.cpp" line="+196"/> <source>Qt Linguist</source> <translation>Qt Linguist</translation> </message> <message> - <location filename="../tools/linguist/shared/po.cpp" line="+817"/> <source>GNU Gettext localization files</source> <translation>GNU-Gettext-Übersetzungsdateien</translation> </message> <message> - <location line="+7"/> <source>GNU Gettext localization template files</source> <translation>Vorlagen für GNU-Gettext-Übersetzungsdateien</translation> </message> <message> - <location filename="../tools/linguist/shared/ts.cpp" line="+752"/> <source>Qt translation sources (format 1.1)</source> <translation>Qt-Übersetzungsdateien (Formatversion 1.1)</translation> </message> <message> - <location line="+8"/> <source>Qt translation sources (format 2.0)</source> <translation>Qt-Übersetzungsdateien (Formatversion 2.0)</translation> </message> <message> - <location line="+9"/> <source>Qt translation sources (latest format)</source> <translation>Qt-Übersetzungsdateien (aktuelles Format)</translation> </message> <message> - <location filename="../tools/linguist/shared/xliff.cpp" line="+829"/> <source>XLIFF localization files</source> <translation>XLIFF-Übersetzungsdateien</translation> </message> <message> - <location filename="../tools/linguist/shared/qph.cpp" line="+195"/> <source>Qt Linguist 'Phrase Book'</source> <translation>Qt-Linguist-Wörterbuch</translation> </message> @@ -1856,17 +1482,14 @@ Zeile: %2</translation> <context> <name>SourceCodeView</name> <message> - <location filename="../tools/linguist/linguist/sourcecodeview.cpp" line="+70"/> <source><i>Source code not available</i></source> <translation><i>Quelltext nicht verfügbar</i></translation> </message> <message> - <location line="+33"/> <source><i>File %1 not available</i></source> <translation><i>Datei %1 nicht vorhanden</i></translation> </message> <message> - <location line="+5"/> <source><i>File %1 not readable</i></source> <translation><i>Datei %1 nicht lesbar</i></translation> </message> @@ -1874,42 +1497,34 @@ Zeile: %2</translation> <context> <name>Statistics</name> <message> - <location filename="../tools/linguist/linguist/statistics.ui"/> <source>Statistics</source> <translation>Statistiken</translation> </message> <message> - <location/> <source>Translation</source> <translation>Übersetzung</translation> </message> <message> - <location/> <source>Source</source> <translation>Quelle</translation> </message> <message> - <location/> <source>0</source> <translation>0</translation> </message> <message> - <location/> <source>Words:</source> <translation>Wörter:</translation> </message> <message> - <location/> <source>Characters:</source> <translation>Zeichen:</translation> </message> <message> - <location/> <source>Characters (with spaces):</source> <translation>Zeichen (mit Leerzeichen):</translation> </message> <message> - <location/> <source>Close</source> <translation>Schließen</translation> </message> @@ -1917,72 +1532,58 @@ Zeile: %2</translation> <context> <name>TranslateDialog</name> <message> - <location filename="../tools/linguist/linguist/translatedialog.ui"/> <source>This window allows you to search for some text in the translation source file.</source> <translation>Dieses Fenster erlaubt die Suche in der Übersetzungsdatei.</translation> </message> <message> - <location/> <source>Type in the text to search for.</source> <translation>Geben Sie den Text ein, nach dem gesucht werden soll.</translation> </message> <message> - <location/> <source>Find &source text:</source> <translation>&Ursprungstext:</translation> </message> <message> - <location/> <source>&Translate to:</source> <translation>&Übersetzung:</translation> </message> <message> - <location/> <source>Search options</source> <translation>Sucheinstellungen</translation> </message> <message> - <location/> <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> <translation>Wenn aktiviert, werden Texte wie 'TeX' und 'tex' als unterschiedlich betrachtet.</translation> </message> <message> - <location/> <source>Match &case</source> <translation>&Groß-/Kleinschreibung beachten</translation> </message> <message> - <location/> <source>Mark new translation as &finished</source> <translation>Neue Übersetzung als &erledigt markieren</translation> </message> <message> - <location/> <source>Click here to find the next occurrence of the text you typed in.</source> <translation>Klicken Sie hier, um zum nächsten Vorkommen des Suchtextes zu springen.</translation> </message> <message> - <location/> <source>Find Next</source> <translation>Weitersuchen</translation> </message> <message> - <location/> <source>Translate</source> <translation>Übersetzen</translation> </message> <message> - <location/> <source>Translate All</source> <translation>Alle übersetzen</translation> </message> <message> - <location/> <source>Click here to close this window.</source> <translation>Klicken Sie hier, um das Fenster zu schließen.</translation> </message> <message> - <location/> <source>Cancel</source> <translation>Abbrechen</translation> </message> @@ -1990,33 +1591,26 @@ Zeile: %2</translation> <context> <name>TranslationSettingsDialog</name> <message> - <location filename="../tools/linguist/linguist/translationsettingsdialog.cpp" line="+93"/> <source>Any Country</source> <translation>Land</translation> </message> <message> - <location line="-22"/> - <location line="+8"/> <source>Settings for '%1' - Qt Linguist</source> <translation>Einstellungen für '%1' - Qt Linguist</translation> </message> <message> - <location filename="../tools/linguist/linguist/translationsettings.ui"/> <source>Source language</source> <translation>Ursprungssprache</translation> </message> <message> - <location/> <source>Language</source> <translation>Sprache</translation> </message> <message> - <location/> <source>Country/Region</source> <translation>Land/Region</translation> </message> <message> - <location/> <source>Target language</source> <translation>Zielsprache</translation> </message> diff --git a/translations/qt_de.ts b/translations/qt_de.ts index 74bd048..7a062dc 100644 --- a/translations/qt_de.ts +++ b/translations/qt_de.ts @@ -4,7 +4,6 @@ <context> <name>CloseButton</name> <message> - <location filename="../src/gui/widgets/qtabbar.cpp" line="+2313"/> <source>Close Tab</source> <translation>Schließen</translation> </message> @@ -12,12 +11,10 @@ <context> <name>FakeReply</name> <message> - <location filename="../src/3rdparty/webkit/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp" line="+2278"/> <source>Fake error !</source> <translation>Fake error !</translation> </message> <message> - <location line="+3"/> <source>Invalid URL</source> <translation>Ungültige URL</translation> </message> @@ -25,37 +22,30 @@ <context> <name>MAC_APPLICATION_MENU</name> <message> - <location filename="../src/gui/kernel/qapplication.cpp" line="+2348"/> <source>Services</source> <translation>Dienste</translation> </message> <message> - <location line="+1"/> <source>Hide %1</source> <translation>%1 ausblenden</translation> </message> <message> - <location line="+1"/> <source>Hide Others</source> <translation>Andere ausblenden</translation> </message> <message> - <location line="+1"/> <source>Show All</source> <translation>Alle anzeigen</translation> </message> <message> - <location line="+1"/> <source>Preferences...</source> <translation>Einstellungen...</translation> </message> <message> - <location line="+1"/> <source>Quit %1</source> <translation>%1 beenden</translation> </message> <message> - <location line="+1"/> <source>About %1</source> <translation>Über %1</translation> </message> @@ -63,32 +53,26 @@ <context> <name>Phonon::</name> <message> - <location filename="../src/3rdparty/phonon/phonon/phononnamespace.cpp" line="+55"/> <source>Notifications</source> <translation>Benachrichtigungen</translation> </message> <message> - <location line="+2"/> <source>Music</source> <translation>Musik</translation> </message> <message> - <location line="+2"/> <source>Video</source> <translation>Video</translation> </message> <message> - <location line="+2"/> <source>Communication</source> <translation>Kommunikation</translation> </message> <message> - <location line="+2"/> <source>Games</source> <translation>Spiele</translation> </message> <message> - <location line="+2"/> <source>Accessibility</source> <translation>Eingabehilfen</translation> </message> @@ -96,24 +80,18 @@ <context> <name>Phonon::AudioOutput</name> <message> - <location filename="../src/3rdparty/phonon/phonon/audiooutput.cpp" line="+444"/> - <location line="+34"/> <source><html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html></source> <translation><html>Das Audiogerät <b>%1</b> funktioniert nicht.<br/>Es wird stattdessen <b>%2</b> verwendet.</html></translation> </message> <message> - <location line="-21"/> <source><html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html></source> <translation><html>Das Audiogerät <b>%1</b> wurde aktiviert,<br/>da es gerade verfügbar und höher priorisiert ist.</html></translation> </message> <message> - <location line="+3"/> - <location line="+14"/> <source>Revert back to device '%1'</source> <translation>Zurückschalten zum Gerät '%1'</translation> </message> <message> - <location line="-3"/> <source><html>Switching to the audio playback device <b>%1</b><br/>which has higher preference or is specifically configured for this stream.</html></source> <translation><html>Es wird zum Audiogerät <b>%1</b> geschaltet, <br/>da es höher priorisiert ist oder spezifisch für diesen Stream konfiguriert wurde.</html></translation> </message> @@ -121,14 +99,12 @@ <context> <name>Phonon::Gstreamer::Backend</name> <message> - <location filename="../src/3rdparty/phonon/gstreamer/backend.cpp" line="+188"/> <source>Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.</source> <translation>Achtung: Das Paket gstreamer0.10-plugins-good ist nicht installiert. Einige Video-Funktionen stehen nicht zur Verfügung.</translation> </message> <message> - <location line="+5"/> <source>Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabled</source> <translation>Achtung: Die grundlegenden GStreamer-Plugins sind nicht installiert. @@ -138,7 +114,6 @@ Die Audio- und Video-Unterstützung steht nicht zur Verfügung.</translation> <context> <name>Phonon::Gstreamer::MediaObject</name> <message> - <location filename="../src/3rdparty/phonon/gstreamer/mediaobject.cpp" line="+93"/> <source>Cannot start playback. Check your GStreamer installation and make sure you @@ -148,49 +123,34 @@ have libgstreamer-plugins-base installed.</source> Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass das Paket libgstreamer-plugins-base installiert ist.</translation> </message> <message> - <location line="+129"/> <source>Missing codec helper script assistant.</source> <translation>Der Skript-Hilfsassistent des Codecs fehlt.</translation> </message> <message> - <location line="+2"/> <source>Plugin codec installation failed for codec: %0</source> <translation>Die Installation des Codec-Plugins schlug fehl für: %0</translation> </message> <message> - <location line="+11"/> <source>A required codec is missing. You need to install the following codec(s) to play this content: %0</source> <translation>Es sind nicht alle erforderlichen Codecs installiert. Um diesen Inhalt abzuspielen, muss der folgende Codec installiert werden: %0</translation> </message> <message> - <location line="+730"/> - <location line="+6"/> - <location line="+13"/> - <location line="+24"/> - <location line="+6"/> - <location line="+18"/> - <location line="+434"/> - <location line="+24"/> <source>Could not open media source.</source> <translation>Die Medienquelle konnte nicht geöffnet werden.</translation> </message> <message> - <location line="-514"/> <source>Invalid source type.</source> <translation>Ungültiger Typ der Medienquelle.</translation> </message> <message> - <location line="+488"/> <source>Could not locate media source.</source> <translation>Die Medienquelle konnte nicht gefunden werden.</translation> </message> <message> - <location line="+10"/> <source>Could not open audio device. The device is already in use.</source> <translation>Das Audiogerät konnte nicht geöffnet werden, da es bereits in Benutzung ist.</translation> </message> <message> - <location line="+13"/> <source>Could not decode media source.</source> <translation>Die Medienquelle konnte nicht gefunden werden.</translation> </message> @@ -198,162 +158,130 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF</name> <message> - <location filename="../src/3rdparty/phonon/mmf/audiooutput.cpp" line="+103"/> <source>Audio Output</source> <translation>Audio-Ausgabe</translation> </message> <message> - <location line="+1"/> <source>The audio output device</source> <translation>Audio-Ausgabegerät</translation> </message> <message> - <location filename="../src/3rdparty/phonon/mmf/utils.cpp" line="+89"/> <source>No error</source> <translation>Kein Fehler</translation> </message> <message> - <location line="+2"/> <source>Not found</source> <translation>Nicht gefunden</translation> </message> <message> - <location line="+2"/> <source>Out of memory</source> <translation>Es ist kein Speicher mehr verfügbar</translation> </message> <message> - <location line="+2"/> <source>Not supported</source> <translation>Nicht unterstützt</translation> </message> <message> - <location line="+2"/> <source>Overflow</source> <translation>Überlauf</translation> </message> <message> - <location line="+2"/> <source>Underflow</source> <translation>Unterlauf</translation> </message> <message> - <location line="+2"/> <source>Already exists</source> <translation>Existiert bereits</translation> </message> <message> - <location line="+2"/> <source>Path not found</source> <translation>Pfad konnte nicht gefunden werden</translation> </message> <message> - <location line="+2"/> <source>In use</source> <translation>Bereits in Verwendung</translation> </message> <message> - <location line="+2"/> <source>Not ready</source> <translation>Nicht bereit</translation> </message> <message> - <location line="+2"/> <source>Access denied</source> <translation>Zugriff verweigert</translation> </message> <message> - <location line="+2"/> <source>Could not connect</source> <translation>Es konnte keine Verbindung hergestellt werden</translation> </message> <message> - <location line="+2"/> <source>Disconnected</source> <translation>Getrennt</translation> </message> <message> - <location line="+2"/> <source>Permission denied</source> <translation>Zugriff verweigert</translation> </message> <message> - <location line="+4"/> <source>Insufficient bandwidth</source> <translation>Unzureichende Bandweite</translation> </message> <message> - <location line="+3"/> <source>Network unavailable</source> <translation>Netzwerk nicht verfügbar</translation> </message> <message> - <location line="+4"/> <source>Network communication error</source> <translation>Fehler bei der Kommunikation über das Netzwerk</translation> </message> <message> - <location line="+2"/> <source>Streaming not supported</source> <translation>Streaming nicht unterstützt</translation> </message> <message> - <location line="+2"/> <source>Server alert</source> <translation>Server alert</translation> </message> <message> - <location line="+2"/> <source>Invalid protocol</source> <translation>Ungültiges Protokoll</translation> </message> <message> - <location line="+2"/> <source>Invalid URL</source> <translation>Ungültige URL</translation> </message> <message> - <location line="+2"/> <source>Multicast error</source> <translation>Multicast-Fehler</translation> </message> <message> - <location line="+3"/> <source>Proxy server error</source> <translation>Fehler bei Proxy-Server-Kommunikation</translation> </message> <message> - <location line="+2"/> <source>Proxy server not supported</source> <translation>Proxy-Server nicht unterstützt</translation> </message> <message> - <location line="+2"/> <source>Audio output error</source> <translation>Fehler bei Audio-Ausgabe</translation> </message> <message> - <location line="+2"/> <source>Video output error</source> <translation>Fehler bei Video-Ausgabe</translation> </message> <message> - <location line="+2"/> <source>Decoder error</source> <translation>Fehler im Decoder</translation> </message> <message> - <location line="+2"/> <source>Audio or video components could not be played</source> <translation>Audio- oder Videokomponenten konnten nicht abgespielt werden</translation> </message> <message> - <location line="+2"/> <source>DRM error</source> <translation>DRM-Fehler</translation> </message> <message> - <location line="+15"/> <source>Unknown error (%1)</source> <translation>Unbekannter Fehler (%1)</translation> </message> @@ -361,33 +289,34 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::AbstractMediaPlayer</name> <message> - <location filename="../src/3rdparty/phonon/mmf/abstractmediaplayer.cpp" line="+73"/> <source>Not ready to play</source> <translation>Das Abspielen ist im Grundzustand nicht möglich</translation> </message> <message> - <location line="+161"/> - <location line="+10"/> <source>Error opening file</source> <translation>Die Datei konnte nicht geöffnet werden</translation> </message> <message> - <location line="+4"/> <source>Error opening URL</source> <translation>Der URL konnte nicht geöffnet werden</translation> </message> <message> - <location line="+83"/> + <source>Error opening resource</source> + <translation>Die Ressource konnte nicht geöffnet werden</translation> + </message> + <message> + <source>Error opening source: resource not opened</source> + <translation>Die Quelle konnte nicht geöffnet werden: Ressource nicht geöffnet</translation> + </message> + <message> <source>Setting volume failed</source> <translation>Die Lautstärke konnte nicht eingestellt werden</translation> </message> <message> - <location line="+45"/> <source>Loading clip failed</source> <translation>Das Laden des Clips schlug fehl</translation> </message> <message> - <location line="+24"/> <source>Playback complete</source> <translation>Abspielen beendet</translation> </message> @@ -395,22 +324,18 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::AbstractVideoPlayer</name> <message> - <location filename="../src/3rdparty/phonon/mmf/abstractvideoplayer.cpp" line="+108"/> <source>Pause failed</source> <translation>Fehler bei Pause-Funktion</translation> </message> <message> - <location line="+16"/> <source>Seek failed</source> <translation>Suchoperation fehlgeschlagen</translation> </message> <message> - <location line="+54"/> <source>Getting position failed</source> <translation>Die Position konnte nicht bestimmt werden</translation> </message> <message> - <location line="+66"/> <source>Opening clip failed</source> <translation>Der Clip konnte nicht geöffnet werden</translation> </message> @@ -418,7 +343,6 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::AudioEqualizer</name> <message> - <location filename="../src/3rdparty/phonon/mmf/audioequalizer.cpp" line="+92"/> <source>%1 Hz</source> <translation>%1 Hz</translation> </message> @@ -426,7 +350,6 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::AudioPlayer</name> <message> - <location filename="../src/3rdparty/phonon/mmf/audioplayer.cpp" line="+173"/> <source>Getting position failed</source> <translation>Die Position konnte nicht bestimmt werden</translation> </message> @@ -434,11 +357,6 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::DsaVideoPlayer</name> <message> - <location filename="../src/3rdparty/phonon/mmf/videoplayer_dsa.cpp" line="+238"/> - <location line="+15"/> - <location line="+8"/> - <location line="+22"/> - <location line="+22"/> <source>Video display error</source> <translation>Fehler bei der Video-Anzeige</translation> </message> @@ -446,7 +364,6 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::EffectFactory</name> <message> - <location filename="../src/3rdparty/phonon/mmf/effectfactory.cpp" line="+181"/> <source>Enabled</source> <translation>Aktiviert</translation> </message> @@ -454,61 +371,51 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::EnvironmentalReverb</name> <message> - <location filename="../src/3rdparty/phonon/mmf/environmentalreverb.cpp" line="+146"/> <source>Decay HF ratio (%)</source> <extracomment>DecayHFRatio: Ratio of high-frequency decay time to the value specified by DecayTime.</extracomment> <translation>Hochfrequenz-Abklingverhältnis (%)</translation> </message> <message> - <location line="+6"/> <source>Decay time (ms)</source> <extracomment>DecayTime: Time over which reverberation is diminished.</extracomment> <translation>Abklingzeit (ms)</translation> </message> <message> - <location line="+7"/> <source>Density (%)</source> <extracomment>Density Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Diffusion value.</extracomment> <translation>Dichte (%)</translation> </message> <message> - <location line="+6"/> <source>Diffusion (%)</source> <extracomment>Diffusion: Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Density value.</extracomment> <translation>Diffusion (%)</translation> </message> <message> - <location line="+5"/> <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> <translation>Verzögerung des Echos (ms)</translation> </message> <message> - <location line="+7"/> <source>Reflections level (mB)</source> <extracomment>ReflectionsLevel: Amplitude of reflections. This value is corrected by the RoomLevel to give the final reflection amplitude.</extracomment> <translation>Stärke des Echos (mB)</translation> </message> <message> - <location line="+7"/> <source>Reverb delay (ms)</source> <extracomment>ReverbDelay: Amount of time between arrival of the first reflection and start of the late reverberation.</extracomment> <translation>Verzögerung des Nachhalls (ms)</translation> </message> <message> - <location line="+8"/> <source>Reverb level (mB)</source> <extracomment>ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.</extracomment> <translation>Stärke des Nachhalls (mB)</translation> </message> <message> - <location line="+7"/> <source>Room HF level</source> <extracomment>RoomHFLevel: Amplitude of low-pass filter used to attenuate the high frequency component of reflected sound.</extracomment> <translation>Hochfrequenz-Pegel des Raums</translation> </message> <message> - <location line="+6"/> <source>Room level (mB)</source> <extracomment>RoomLevel: Master volume control for all reflected sound.</extracomment> <translation>Pegel des Raums (mB)</translation> @@ -517,12 +424,18 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::MediaObject</name> <message> - <location filename="../src/3rdparty/phonon/mmf/mediaobject.cpp" line="+276"/> <source>Error opening source: type not supported</source> <translation>Die Quelle konnte nicht geöffnet werden: Dieser Typ wird nicht unterstützt</translation> </message> <message> - <location line="+18"/> + <source>Error opening source: resource is compressed</source> + <translation>Die Quelle konnte nicht geöffnet werden: Die Ressource ist komprimiert</translation> + </message> + <message> + <source>Error opening source: resource not valid</source> + <translation>Die Quelle konnte nicht geöffnet werden: Ungültige Ressource</translation> + </message> + <message> <source>Error opening source: media type could not be determined</source> <translation>Die Quelle konnte nicht geöffnet werden: Der Medientyp konnte nicht bestimmt werden</translation> </message> @@ -530,7 +443,6 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::StereoWidening</name> <message> - <location filename="../src/3rdparty/phonon/mmf/stereowidening.cpp" line="+79"/> <source>Level (%)</source> <translation>Stärke (%)</translation> </message> @@ -538,8 +450,6 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::MMF::SurfaceVideoPlayer</name> <message> - <location filename="../src/3rdparty/phonon/mmf/videoplayer_surface.cpp" line="+126"/> - <location line="+16"/> <source>Video display error</source> <translation>Fehler bei der Video-Anzeige</translation> </message> @@ -547,22 +457,14 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Phonon::VolumeSlider</name> <message> - <location filename="../src/3rdparty/phonon/phonon/volumeslider.cpp" line="+42"/> - <location line="+18"/> - <location line="+129"/> - <location line="+15"/> <source>Volume: %1%</source> <translation>Lautstärke: %1%</translation> </message> <message> - <location line="-159"/> - <location line="+18"/> - <location line="+54"/> <source>Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%</source> <translation>Mit diesem Regler stellen Sie die Lautstärke ein. Die Position links entspricht 0%; die Position rechts entspricht %1%</translation> </message> <message> - <location line="+67"/> <source>Muted</source> <translation>Stummschaltung</translation> </message> @@ -570,12 +472,10 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Q3Accel</name> <message> - <location filename="../src/qt3support/other/q3accel.cpp" line="+481"/> <source>%1, %2 not defined</source> <translation>%1, %2 sind nicht definiert</translation> </message> <message> - <location line="+36"/> <source>Ambiguous %1 not handled</source> <translation>Mehrdeutige %1 können nicht verarbeitet werden</translation> </message> @@ -583,27 +483,22 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Q3DataTable</name> <message> - <location filename="../src/qt3support/sql/q3datatable.cpp" line="+285"/> <source>True</source> <translation>Wahr</translation> </message> <message> - <location line="+1"/> <source>False</source> <translation>Falsch</translation> </message> <message> - <location line="+505"/> <source>Insert</source> <translation>Einfügen</translation> </message> <message> - <location line="+1"/> <source>Update</source> <translation>Aktualisieren</translation> </message> <message> - <location line="+1"/> <source>Delete</source> <translation>Löschen</translation> </message> @@ -611,313 +506,238 @@ Bitte überprüfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass <context> <name>Q3FileDialog</name> <message> - <location filename="../src/qt3support/dialogs/q3filedialog.cpp" line="+835"/> <source>Copy or Move a File</source> <translation>Datei kopieren oder verschieben</translation> </message> <message> - <location line="+8"/> <source>Read: %1</source> <translation>Lesen: %1</translation> </message> <message> - <location line="+6"/> - <location line="+30"/> <source>Write: %1</source> <translation>Schreiben: %1</translation> </message> <message> - <location line="-22"/> - <location line="+1579"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location line="-157"/> - <location line="+49"/> - <location line="+2149"/> - <location filename="../src/qt3support/dialogs/q3filedialog_mac.cpp" line="+133"/> <source>All Files (*)</source> <translation>Alle Dateien (*)</translation> </message> <message> - <location line="-2085"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+1"/> <source>Size</source> <translation>Größe</translation> </message> <message> - <location line="+2"/> <source>Type</source> <translation>Typ</translation> </message> <message> - <location line="+1"/> <source>Date</source> <translation>Datum</translation> </message> <message> - <location line="+1"/> <source>Attributes</source> <translation>Attribute</translation> </message> <message> - <location line="+35"/> - <location line="+2027"/> <source>&OK</source> <translation>&OK</translation> </message> <message> - <location line="-1987"/> <source>Look &in:</source> <translation>Su&chen in:</translation> </message> <message> - <location line="+1"/> - <location line="+1977"/> - <location line="+16"/> <source>File &name:</source> <translation>Datei&name:</translation> </message> <message> - <location line="-1992"/> <source>File &type:</source> <translation>Datei&typ:</translation> </message> <message> - <location line="+7"/> <source>Back</source> <translation>Zurück</translation> </message> <message> - <location line="+7"/> <source>One directory up</source> <translation>Ein Verzeichnis zurück</translation> </message> <message> - <location line="+9"/> <source>Create New Folder</source> <translation>Neuen Ordner erstellen</translation> </message> <message> - <location line="+18"/> <source>List View</source> <translation>Liste</translation> </message> <message> - <location line="+8"/> <source>Detail View</source> <translation>Ausführlich</translation> </message> <message> - <location line="+9"/> <source>Preview File Info</source> <translation>Vorschau der Datei-Informationen</translation> </message> <message> - <location line="+19"/> <source>Preview File Contents</source> <translation>Vorschau des Datei-Inhalts</translation> </message> <message> - <location line="+88"/> <source>Read-write</source> <translation>Lesen/Schreiben</translation> </message> <message> - <location line="+1"/> <source>Read-only</source> <translation>Nur Lesen</translation> </message> <message> - <location line="+1"/> <source>Write-only</source> <translation>Nur Schreiben</translation> </message> <message> - <location line="+1"/> <source>Inaccessible</source> <translation>Gesperrt</translation> </message> <message> - <location line="+2"/> <source>Symlink to File</source> <translation>Verknüpfung mit Datei</translation> </message> <message> - <location line="+1"/> <source>Symlink to Directory</source> <translation>Verknüpfung mit Verzeichnis</translation> </message> <message> - <location line="+1"/> <source>Symlink to Special</source> <translation>Verknüpfung mit Spezialdatei</translation> </message> <message> - <location line="+1"/> <source>File</source> <translation>Datei</translation> </message> <message> - <location line="+1"/> <source>Dir</source> <translation>Verzeichnis</translation> </message> <message> - <location line="+1"/> <source>Special</source> <translation>Spezialattribut</translation> </message> <message> - <location line="+704"/> - <location line="+1999"/> - <location filename="../src/qt3support/dialogs/q3filedialog_win.cpp" line="+209"/> <source>Open</source> <translation>Öffnen</translation> </message> <message> - <location line="-1889"/> - <location filename="../src/qt3support/dialogs/q3filedialog_win.cpp" line="+71"/> <source>Save As</source> <translation>Speichern unter</translation> </message> <message> - <location line="+642"/> - <location line="+5"/> - <location line="+355"/> <source>&Open</source> <translation>&Öffnen</translation> </message> <message> - <location line="-357"/> - <location line="+341"/> <source>&Save</source> <translation>S&peichern</translation> </message> <message> - <location line="-334"/> <source>&Rename</source> <translation>&Umbenennen</translation> </message> <message> - <location line="+1"/> <source>&Delete</source> <translation>&Löschen</translation> </message> <message> - <location line="+20"/> <source>R&eload</source> <translation>Erne&ut laden</translation> </message> <message> - <location line="+4"/> <source>Sort by &Name</source> <translation>Nach &Namen sortieren</translation> </message> <message> - <location line="+2"/> <source>Sort by &Size</source> <translation>Nach &Größe sortieren</translation> </message> <message> - <location line="+1"/> <source>Sort by &Date</source> <translation>Nach &Datum sortieren</translation> </message> <message> - <location line="+2"/> <source>&Unsorted</source> <translation>&Unsortiert</translation> </message> <message> - <location line="+15"/> <source>Sort</source> <translation>Sortieren</translation> </message> <message> - <location line="+4"/> <source>Show &hidden files</source> <translation>&Versteckte Dateien anzeigen</translation> </message> <message> - <location line="+31"/> <source>the file</source> <translation>die Datei</translation> </message> <message> - <location line="+2"/> <source>the directory</source> <translation>das Verzeichnis</translation> </message> <message> - <location line="+2"/> <source>the symlink</source> <translation>die Verknüpfung</translation> </message> <message> - <location line="+3"/> <source>Delete %1</source> <translation>%1 löschen</translation> </message> <message> - <location line="+1"/> <source><qt>Are you sure you wish to delete %1 "%2"?</qt></source> <translation><qt>Sind Sie sicher, dass Sie %1 "%2" löschen möchten?</qt></translation> </message> <message> - <location line="+2"/> <source>&Yes</source> <translation>&Ja</translation> </message> <message> - <location line="+0"/> <source>&No</source> <translation>&Nein</translation> </message> <message> - <location line="+36"/> <source>New Folder 1</source> <translation>Neues Verzeichnis 1</translation> </message> <message> - <location line="+5"/> <source>New Folder</source> <translation>Neues Verzeichnis</translation> </message> <message> - <location line="+5"/> <source>New Folder %1</source> <translation>Neues Verzeichnis %1</translation> </message> <message> - <location line="+98"/> <source>Find Directory</source> <translation>Verzeichnis suchen</translation> </message> <message> - <location line="+5"/> - <location line="+108"/> <source>Directories</source> <translation>Verzeichnisse</translation> </message> <message> - <location line="-2"/> <source>Directory:</source> <translation>Verzeichnis:</translation> </message> <message> - <location line="+40"/> - <location line="+1009"/> <source>Error</source> <translation>Fehler</translation> </message> <message> - <location line="-1008"/> <source>%1 File not found. Check path and filename.</source> @@ -926,17 +746,14 @@ Datei kann nicht gefunden werden. Überprüfen Sie Pfad und Dateinamen.</translation> </message> <message> - <location filename="../src/qt3support/dialogs/q3filedialog_win.cpp" line="-191"/> <source>All Files (*.*)</source> <translation>Alle Dateien (*.*)</translation> </message> <message> - <location line="+264"/> <source>Open </source> <translation>Öffnen</translation> </message> <message> - <location line="+107"/> <source>Select a Directory</source> <translation>Wählen Sie ein Verzeichnis</translation> </message> @@ -944,29 +761,24 @@ Datei kann nicht gefunden werden. <context> <name>Q3LocalFs</name> <message> - <location filename="../src/qt3support/network/q3localfs.cpp" line="+130"/> - <location line="+10"/> <source>Could not read directory %1</source> <translation>Konnte Verzeichnis nicht lesen %1</translation> </message> <message> - <location line="+45"/> <source>Could not create directory %1</source> <translation>Konnte Verzeichnis nicht erstellen %1</translation> </message> <message> - <location line="+34"/> <source>Could not remove file or directory %1</source> <translation>Konnte Datei oder Verzeichnis nicht löschen %1</translation> </message> <message> - <location line="+27"/> <source>Could not rename %1 to @@ -977,14 +789,12 @@ nach %2</translation> </message> <message> - <location line="+25"/> <source>Could not open %1</source> <translation>Konnte nicht geöffnet werden: %1</translation> </message> <message> - <location line="+68"/> <source>Could not write %1</source> <translation>Konnte nicht geschrieben werden: @@ -994,12 +804,10 @@ nach <context> <name>Q3MainWindow</name> <message> - <location filename="../src/qt3support/widgets/q3mainwindow.cpp" line="+2051"/> <source>Line up</source> <translation>Ausrichten</translation> </message> <message> - <location line="+2"/> <source>Customize...</source> <translation>Anpassen...</translation> </message> @@ -1007,7 +815,6 @@ nach <context> <name>Q3NetworkProtocol</name> <message> - <location filename="../src/qt3support/network/q3networkprotocol.cpp" line="+854"/> <source>Operation stopped by the user</source> <translation>Operation von Benutzer angehalten</translation> </message> @@ -1015,8 +822,6 @@ nach <context> <name>Q3ProgressDialog</name> <message> - <location filename="../src/qt3support/dialogs/q3progressdialog.cpp" line="+224"/> - <location line="+61"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> @@ -1024,28 +829,22 @@ nach <context> <name>Q3TabDialog</name> <message> - <location filename="../src/qt3support/dialogs/q3tabdialog.cpp" line="+190"/> - <location line="+824"/> <source>OK</source> <translation>OK</translation> </message> <message> - <location line="-366"/> <source>Apply</source> <translation>Anwenden</translation> </message> <message> - <location line="+43"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location line="+45"/> <source>Defaults</source> <translation>Voreinstellungen</translation> </message> <message> - <location line="+50"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> @@ -1053,38 +852,30 @@ nach <context> <name>Q3TextEdit</name> <message> - <location filename="../src/qt3support/text/q3textedit.cpp" line="+5429"/> <source>&Undo</source> <translation>&Rückgängig</translation> </message> <message> - <location line="+1"/> <source>&Redo</source> <translation>Wieder&herstellen</translation> </message> <message> - <location line="+5"/> <source>Cu&t</source> <translation>&Ausschneiden</translation> </message> <message> - <location line="+1"/> <source>&Copy</source> <translation>&Kopieren</translation> </message> <message> - <location line="+2"/> <source>&Paste</source> <translation>Einf&ügen</translation> </message> <message> - <location line="+3"/> <source>Clear</source> <translation>Löschen</translation> </message> <message> - <location line="+4"/> - <location line="+2"/> <source>Select All</source> <translation>Alles auswählen</translation> </message> @@ -1092,67 +883,54 @@ nach <context> <name>Q3TitleBar</name> <message> - <location filename="../src/plugins/accessible/compat/q3complexwidgets.cpp" line="+246"/> <source>System</source> <translation>System</translation> </message> <message> - <location line="+3"/> <source>Restore up</source> <translation>Wiederherstellen</translation> </message> <message> - <location line="+1"/> <source>Minimize</source> <translation>Minimieren</translation> </message> <message> - <location line="+3"/> <source>Restore down</source> <translation>Wiederherstellen</translation> </message> <message> - <location line="+1"/> <source>Maximize</source> <translation>Maximieren</translation> </message> <message> - <location line="+2"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="+18"/> <source>Contains commands to manipulate the window</source> <translation>Enthält Befehle zum Ändern der Fenstergröße</translation> </message> <message> - <location line="+3"/> <source>Puts a minimized window back to normal</source> <translation>Stellt ein minimiertes Fenster wieder her</translation> </message> <message> - <location line="+1"/> <source>Moves the window out of the way</source> <translation>Minimiert das Fenster</translation> </message> <message> - <location line="+3"/> <source>Puts a maximized window back to normal</source> <translation>Stellt ein maximiertes Fenster wieder her</translation> </message> <message> - <location line="+1"/> <source>Makes the window full screen</source> <translation>Vollbildmodus</translation> </message> <message> - <location line="+2"/> <source>Closes the window</source> <translation>Schließt das Fenster</translation> </message> <message> - <location line="+2"/> <source>Displays the name of the window and contains controls to manipulate it</source> <translation>Zeigt den Namen des Fensters und enthält Befehle zum Ändern</translation> </message> @@ -1160,7 +938,6 @@ nach <context> <name>Q3ToolBar</name> <message> - <location filename="../src/qt3support/widgets/q3toolbar.cpp" line="+692"/> <source>More...</source> <translation>Mehr...</translation> </message> @@ -1168,51 +945,38 @@ nach <context> <name>Q3UrlOperator</name> <message> - <location filename="../src/qt3support/network/q3urloperator.cpp" line="+386"/> - <location line="+260"/> - <location line="+4"/> <source>The protocol `%1' is not supported</source> <translation>Das Protokoll `%1' wird nicht unterstützt</translation> </message> <message> - <location line="-260"/> <source>The protocol `%1' does not support listing directories</source> <translation>Das Protokoll `%1' unterstützt nicht das Auflisten von Verzeichnissen</translation> </message> <message> - <location line="+3"/> <source>The protocol `%1' does not support creating new directories</source> <translation>Das Protokoll `%1' unterstützt nicht das Anlegen neuer Verzeichnisse</translation> </message> <message> - <location line="+3"/> <source>The protocol `%1' does not support removing files or directories</source> <translation>Das Protokoll `%1' unterstützt nicht das Löschen von Dateien oder Verzeichnissen</translation> </message> <message> - <location line="+3"/> <source>The protocol `%1' does not support renaming files or directories</source> <translation>Das Protokoll `%1' unterstützt nicht das Umbenennen von Dateien oder Verzeichnissen</translation> </message> <message> - <location line="+3"/> <source>The protocol `%1' does not support getting files</source> <translation>Das Protokoll `%1' unterstützt nicht das Laden von Dateien</translation> </message> <message> - <location line="+3"/> <source>The protocol `%1' does not support putting files</source> <translation>Das Protokoll `%1' unterstützt nicht das Speichern von Dateien</translation> </message> <message> - <location line="+243"/> - <location line="+4"/> <source>The protocol `%1' does not support copying or moving files or directories</source> <translation>Das Protokoll `%1' unterstützt nicht das Kopieren oder Verschieben von Dateien oder Verzeichnissen</translation> </message> <message> - <location line="+237"/> - <location line="+1"/> <source>(unknown)</source> <translation>(unbekannt)</translation> </message> @@ -1220,27 +984,22 @@ nach <context> <name>Q3Wizard</name> <message> - <location filename="../src/qt3support/dialogs/q3wizard.cpp" line="+177"/> <source>&Cancel</source> <translation>&Abbrechen</translation> </message> <message> - <location line="+1"/> <source>< &Back</source> <translation>< &Zurück</translation> </message> <message> - <location line="+1"/> <source>&Next ></source> <translation>&Weiter ></translation> </message> <message> - <location line="+1"/> <source>&Finish</source> <translation>Ab&schließen</translation> </message> <message> - <location line="+1"/> <source>&Help</source> <translation>&Hilfe</translation> </message> @@ -1248,45 +1007,30 @@ nach <context> <name>QAbstractSocket</name> <message> - <location filename="../src/network/socket/qabstractsocket.cpp" line="+916"/> - <location filename="../src/network/socket/qhttpsocketengine.cpp" line="+629"/> - <location filename="../src/network/socket/qsocks5socketengine.cpp" line="+661"/> - <location line="+26"/> <source>Host not found</source> <translation>Rechner konnte nicht gefunden werden</translation> </message> <message> - <location line="+50"/> - <location filename="../src/network/socket/qhttpsocketengine.cpp" line="+3"/> - <location filename="../src/network/socket/qsocks5socketengine.cpp" line="+4"/> <source>Connection refused</source> <translation>Verbindung verweigert</translation> </message> <message> - <location line="+142"/> <source>Connection timed out</source> <translation>Das Zeitlimit für die Verbindung wurde überschritten</translation> </message> <message> - <location line="-559"/> - <location line="+809"/> - <location line="+220"/> <source>Operation on socket is not supported</source> <translation>Diese Socket-Operation wird nicht unterstützt</translation> </message> <message> - <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="+625"/> - <location filename="../src/network/socket/qabstractsocket.cpp" line="+203"/> <source>Socket operation timed out</source> <translation>Das Zeitlimit für die Operation wurde überschritten</translation> </message> <message> - <location filename="../src/network/socket/qabstractsocket.cpp" line="+380"/> <source>Socket is not connected</source> <translation>Nicht verbunden</translation> </message> <message> - <location filename="../src/network/socket/qsocks5socketengine.cpp" line="-8"/> <source>Network unreachable</source> <translation>Das Netzwerk ist nicht erreichbar</translation> </message> @@ -1294,17 +1038,14 @@ nach <context> <name>QAbstractSpinBox</name> <message> - <location filename="../src/gui/widgets/qabstractspinbox.cpp" line="+1263"/> <source>&Step up</source> <translation>&Inkrementieren</translation> </message> <message> - <location line="+2"/> <source>Step &down</source> <translation>&Dekrementieren</translation> </message> <message> - <location line="-8"/> <source>&Select All</source> <translation>&Alles auswählen</translation> </message> @@ -1312,7 +1053,6 @@ nach <context> <name>QAccessibleButton</name> <message> - <location filename="../src/plugins/accessible/widgets/simplewidgets.cpp" line="+250"/> <source>Press</source> <translation>Drücken</translation> </message> @@ -1320,28 +1060,23 @@ nach <context> <name>QApplication</name> <message> - <location filename="../src/gui/kernel/qapplication.cpp" line="-13"/> <source>QT_LAYOUT_DIRECTION</source> <comment>Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.</comment> <translation>LTR</translation> </message> <message> - <location filename="../src/gui/dialogs/qmessagebox.h" line="+354"/> <source>Executable '%1' requires Qt %2, found Qt %3.</source> <translation>Die Anwendung '%1' benötigt Qt %2; es wurde aber Qt %3 gefunden.</translation> </message> <message> - <location line="+2"/> <source>Incompatible Qt Library Error</source> <translation>Die Qt-Bibliothek ist inkompatibel</translation> </message> <message> - <location filename="../src/gui/accessible/qaccessibleobject.cpp" line="+376"/> <source>Activate</source> <translation>Aktivieren</translation> </message> <message> - <location line="+2"/> <source>Activates the program's main window</source> <translation>Aktiviert das Hauptfenster der Anwendung</translation> </message> @@ -1349,22 +1084,18 @@ nach <context> <name>QAxSelect</name> <message> - <location filename="../src/activeqt/container/qaxselect.ui"/> <source>Select ActiveX Control</source> <translation>ActiveX-Element auswählen</translation> </message> <message> - <location/> <source>OK</source> <translation>OK</translation> </message> <message> - <location/> <source>&Cancel</source> <translation>&Abbrechen</translation> </message> <message> - <location/> <source>COM &Object:</source> <translation>COM-&Objekt:</translation> </message> @@ -1372,17 +1103,14 @@ nach <context> <name>QCheckBox</name> <message> - <location filename="../src/plugins/accessible/widgets/simplewidgets.cpp" line="-136"/> <source>Uncheck</source> <translation>Löschen</translation> </message> <message> - <location line="+3"/> <source>Check</source> <translation>Ankreuzen</translation> </message> <message> - <location line="+1"/> <source>Toggle</source> <translation>Umschalten</translation> </message> @@ -1390,57 +1118,46 @@ nach <context> <name>QColorDialog</name> <message> - <location filename="../src/gui/dialogs/qcolordialog.cpp" line="+1378"/> <source>Hu&e:</source> <translation>Farb&ton:</translation> </message> <message> - <location line="+1"/> <source>&Sat:</source> <translation>&Sättigung:</translation> </message> <message> - <location line="+1"/> <source>&Val:</source> <translation>&Helligkeit:</translation> </message> <message> - <location line="+1"/> <source>&Red:</source> <translation>&Rot:</translation> </message> <message> - <location line="+1"/> <source>&Green:</source> <translation>&Grün:</translation> </message> <message> - <location line="+1"/> <source>Bl&ue:</source> <translation>Bla&u:</translation> </message> <message> - <location line="+1"/> <source>A&lpha channel:</source> <translation>A&lphakanal:</translation> </message> <message> - <location line="+101"/> <source>Select Color</source> <translation>Farbauswahl</translation> </message> <message> - <location line="+183"/> <source>&Basic colors</source> <translation>Grundfar&ben</translation> </message> <message> - <location line="+1"/> <source>&Custom colors</source> <translation>&Benutzerdefinierte Farben</translation> </message> <message> - <location line="+1"/> <source>&Add to Custom Colors</source> <translation>Zu benutzerdefinierten Farben &hinzufügen</translation> </message> @@ -1448,23 +1165,18 @@ nach <context> <name>QComboBox</name> <message> - <location filename="../src/plugins/accessible/widgets/complexwidgets.cpp" line="+1772"/> - <location line="+65"/> <source>Open</source> <translation>Öffnen</translation> </message> <message> - <location filename="../src/gui/itemviews/qitemeditorfactory.cpp" line="+556"/> <source>False</source> <translation>Falsch</translation> </message> <message> - <location line="+1"/> <source>True</source> <translation>Wahr</translation> </message> <message> - <location filename="../src/plugins/accessible/widgets/complexwidgets.cpp" line="+0"/> <source>Close</source> <translation>Schließen</translation> </message> @@ -1472,43 +1184,36 @@ nach <context> <name>QCoreApplication</name> <message> - <location filename="../src/corelib/kernel/qsystemsemaphore_unix.cpp" line="+119"/> <source>%1: key is empty</source> <comment>QSystemSemaphore</comment> <translation>%1: Ungültige Schlüsselangabe (leer)</translation> </message> <message> - <location line="+12"/> <source>%1: unable to make key</source> <comment>QSystemSemaphore</comment> <translation>%1: Es kann kein Schlüssel erzeugt werden</translation> </message> <message> - <location line="+9"/> <source>%1: ftok failed</source> <comment>QSystemSemaphore</comment> <translation>%1: ftok-Aufruf schlug fehl</translation> </message> <message> - <location filename="../src/corelib/kernel/qsystemsemaphore_symbian.cpp" line="+65"/> <source>%1: already exists</source> <comment>QSystemSemaphore</comment> <translation>%1: existiert bereits</translation> </message> <message> - <location line="+4"/> <source>%1: does not exist</source> <comment>QSystemSemaphore</comment> <translation>%1: Nicht existent</translation> </message> <message> - <location line="+5"/> <source>%1: out of resources</source> <comment>QSystemSemaphore</comment> <translation>%1: Keine Ressourcen mehr verfügbar</translation> </message> <message> - <location line="+4"/> <source>%1: unknown error %2</source> <comment>QSystemSemaphore</comment> <translation>%1: Unbekannter Fehler %2</translation> @@ -1517,22 +1222,18 @@ nach <context> <name>QDB2Driver</name> <message> - <location filename="../src/sql/drivers/db2/qsql_db2.cpp" line="+1253"/> <source>Unable to connect</source> <translation>Es kann keine Verbindung aufgebaut werden</translation> </message> <message> - <location line="+298"/> <source>Unable to commit transaction</source> <translation>Die Transaktion kann nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+17"/> <source>Unable to rollback transaction</source> <translation>Die Transaktion kann nicht rückgängig gemacht werden (Operation 'rollback' fehlgeschlagen)</translation> </message> <message> - <location line="+15"/> <source>Unable to set autocommit</source> <translation>'autocommit' kann nicht aktiviert werden</translation> </message> @@ -1540,33 +1241,26 @@ nach <context> <name>QDB2Result</name> <message> - <location line="-1030"/> - <location line="+240"/> <source>Unable to execute statement</source> <translation>Der Befehl kann nicht ausgeführt werden</translation> </message> <message> - <location line="-203"/> <source>Unable to prepare statement</source> <translation>Der Befehl kann nicht initialisiert werden</translation> </message> <message> - <location line="+193"/> <source>Unable to bind variable</source> <translation>Die Variable kann nicht gebunden werden</translation> </message> <message> - <location line="+89"/> <source>Unable to fetch record %1</source> <translation>Der Datensatz %1 kann nicht abgeholt werden</translation> </message> <message> - <location line="+19"/> <source>Unable to fetch next</source> <translation>Der nächste Datensatz kann nicht abgeholt werden</translation> </message> <message> - <location line="+21"/> <source>Unable to fetch first</source> <translation>Der erste Datensatz kann nicht abgeholt werden</translation> </message> @@ -1574,22 +1268,18 @@ nach <context> <name>QDateTimeEdit</name> <message> - <location filename="../src/gui/widgets/qdatetimeedit.cpp" line="+2287"/> <source>AM</source> <translation>AM</translation> </message> <message> - <location line="+0"/> <source>am</source> <translation>am</translation> </message> <message> - <location line="+2"/> <source>PM</source> <translation>PM</translation> </message> <message> - <location line="+0"/> <source>pm</source> <translation>pm</translation> </message> @@ -1597,17 +1287,14 @@ nach <context> <name>QDeclarativeAbstractAnimation</name> <message> - <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="+166"/> <source>Cannot animate non-existent property "%1"</source> <translation>Die Eigenschaft '%1" existiert nicht und kann daher nicht animiert werden</translation> </message> <message> - <location line="+3"/> <source>Cannot animate read-only property "%1"</source> <translation>Die Eigenschaft '%1" ist schreibgeschützt und kann daher nicht animiert werden</translation> </message> <message> - <location filename="../src/declarative/util/qdeclarativeutilmodule.cpp" line="+122"/> <source>Animation is an abstract class</source> <translation>Die Klasse Animation ist abstrakt</translation> </message> @@ -1615,7 +1302,6 @@ nach <context> <name>QDeclarativeAnchorAnimation</name> <message> - <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="+2568"/> <source>Cannot set a duration of < 0</source> <translation>Es kann keine Zeitdauer <0 gesetzt werden</translation> </message> @@ -1623,67 +1309,50 @@ nach <context> <name>QDeclarativeAnchors</name> <message> - <location filename="../src/declarative/graphicsitems/qdeclarativeanchors.cpp" line="+180"/> <source>Possible anchor loop detected on fill.</source> <translation>Bei der Fülloperation wurde eine potentielle Endlosschleife der Anker festgestellt.</translation> </message> <message> - <location line="+29"/> <source>Possible anchor loop detected on centerIn.</source> <translation>Bei der Operation 'centerIn' wurde eine potentielle Endlosschleife der Anker festgestellt.</translation> </message> <message> - <location line="+201"/> - <location line="+34"/> - <location line="+610"/> - <location line="+37"/> <source>Cannot anchor to an item that isn't a parent or sibling.</source> <translation>Das Ziel eines Anker muss ein Elternelement oder Element der gleichen Ebene sein.</translation> </message> <message> - <location line="-534"/> <source>Possible anchor loop detected on vertical anchor.</source> <translation>Bei einem vertikalen Anker wurde eine potentielle Endlosschleife der Anker festgestellt.</translation> </message> <message> - <location line="+59"/> <source>Possible anchor loop detected on horizontal anchor.</source> <translation>Bei einem horizontalen Anker wurde eine potentielle Endlosschleife der Anker festgestellt.</translation> </message> <message> - <location line="+422"/> <source>Cannot specify left, right, and hcenter anchors.</source> <translation>Ankerangaben für links, rechts und horizontal zentriert dürfen nicht zusammen auftreten.</translation> </message> <message> - <location line="+10"/> - <location line="+37"/> <source>Cannot anchor to a null item.</source> <translation>Es kann kein Anker zu einem Null-Element angegeben werden.</translation> </message> <message> - <location line="-34"/> <source>Cannot anchor a horizontal edge to a vertical edge.</source> <translation>Es kann kein Anker zu einer horizontalen oder vertikalen Kante angegeben werden.</translation> </message> <message> - <location line="+6"/> - <location line="+37"/> <source>Cannot anchor item to self.</source> <translation>Ein Element kann keinen Anker zu sich selbst haben.</translation> </message> <message> - <location line="-25"/> <source>Cannot specify top, bottom, and vcenter anchors.</source> <translation>Ankerangaben für oben, unten und vertikal zentriert dürfen nicht zusammen auftreten.</translation> </message> <message> - <location line="+6"/> <source>Baseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.</source> <translation>Ein Baseline-Anker darf nicht mit zusammen mit weiteren Ankerangaben für oben, unten und vertikal zentriert verwendet werden.</translation> </message> <message> - <location line="+13"/> <source>Cannot anchor a vertical edge to a horizontal edge.</source> <translation>Vertikale und horizontale Kanten können nicht mit Ankern verbunden werden.</translation> </message> @@ -1691,7 +1360,6 @@ nach <context> <name>QDeclarativeAnimatedImage</name> <message> - <location filename="../src/declarative/graphicsitems/qdeclarativeitemsmodule.cpp" line="+86"/> <source>Qt was built without support for QMovie</source> <translation>Diese Version der Qt-Bibliothek wurde ohne Unterstützung für die Klasse QMovie erstellt</translation> </message> @@ -1699,7 +1367,6 @@ nach <context> <name>QDeclarativeBehavior</name> <message> - <location filename="../src/declarative/util/qdeclarativebehavior.cpp" line="+127"/> <source>Cannot change the animation assigned to a Behavior.</source> <translation>Die zu einem Behavior-Element gehörende Animation kann nicht geändert werden.</translation> </message> @@ -1707,7 +1374,6 @@ nach <context> <name>QDeclarativeBinding</name> <message> - <location filename="../src/declarative/qml/qdeclarativebinding.cpp" line="+238"/> <source>Binding loop detected for property "%1"</source> <translation>Bei der für die Eigenschaft "%1" angegebenen Bindung wurde eine Endlosschleife festgestellt</translation> </message> @@ -1715,7 +1381,6 @@ nach <context> <name>QDeclarativeCompiledBindings</name> <message> - <location filename="../src/declarative/qml/qdeclarativecompiledbindings.cpp" line="+372"/> <source>Binding loop detected for property "%1"</source> <translation>Bei der für die Eigenschaft "%1" angegebenen Bindung wurde eine Endlosschleife festgestellt</translation> </message> @@ -1723,390 +1388,310 @@ nach <context> <name>QDeclarativeCompiler</name> <message> - <location filename="../src/declarative/qml/qdeclarativecompiler.cpp" line="+186"/> - <location line="+1596"/> - <location line="+186"/> - <location line="+81"/> - <location line="+75"/> - <location line="+487"/> <source>Invalid property assignment: "%1" is a read-only property</source> <translation>Ungültige Zuweisung bei Eigenschaft: "%1" ist schreibgeschützt</translation> </message> <message> - <location line="-2416"/> <source>Invalid property assignment: unknown enumeration</source> <translation>Ungültige Zuweisung bei Eigenschaft: Ungültiger Aufzählungswert</translation> </message> <message> - <location line="+8"/> <source>Invalid property assignment: string expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Zeichenkette erwartet</translation> </message> <message> - <location line="+3"/> <source>Invalid property assignment: url expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine URL erwartet</translation> </message> <message> - <location line="+10"/> <source>Invalid property assignment: unsigned int expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine vorzeichenloser Ganzzahlwert erwartet</translation> </message> <message> - <location line="+11"/> <source>Invalid property assignment: int expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird ein Ganzzahlwert erwartet</translation> </message> <message> - <location line="+4"/> <source>Invalid property assignment: float expected</source> - <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Gleitkommazahl erwartet</translation> + <translation type="obsolete">Ungültige Zuweisung bei Eigenschaft: Es wird eine Gleitkommazahl erwartet</translation> </message> <message> - <location line="+3"/> <source>Invalid property assignment: double expected</source> - <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Gleitkommazahl (double) erwartet</translation> + <translation type="obsolete">Ungültige Zuweisung bei Eigenschaft: Es wird eine Gleitkommazahl (double) erwartet</translation> </message> <message> - <location line="+6"/> <source>Invalid property assignment: color expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Farbspezifikation erwartet</translation> </message> <message> - <location line="+8"/> <source>Invalid property assignment: date expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Datumsangabe erwartet</translation> </message> <message> - <location line="+7"/> <source>Invalid property assignment: time expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Zeitangabe erwartet</translation> </message> <message> - <location line="+7"/> <source>Invalid property assignment: datetime expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Datumsangabe erwartet</translation> </message> <message> - <location line="+9"/> <source>Invalid property assignment: point expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Koordinatenangabe für einen Punkt erwartet</translation> </message> <message> - <location line="+8"/> <source>Invalid property assignment: size expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Größenangabe erwartet</translation> </message> <message> - <location line="+8"/> <source>Invalid property assignment: rect expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es werden Parameter für ein Rechteck erwartet</translation> </message> <message> - <location line="+5"/> <source>Invalid property assignment: boolean expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird ein Boolescher Wert erwartet</translation> </message> <message> - <location line="+7"/> <source>Invalid property assignment: 3D vector expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird ein dreidimensionaler Vektor erwartet</translation> </message> <message> - <location line="+9"/> <source>Invalid property assignment: unsupported type "%1"</source> <translation>Ungültige Zuweisung bei Eigenschaft: Der Typ "%1" ist nicht unterstützt</translation> </message> <message> - <location line="+277"/> <source>Element is not creatable.</source> <translation>Das Element kann nicht erzeugt werden.</translation> </message> <message> - <location line="+618"/> <source>Component elements may not contain properties other than id</source> <translation>Komponenten dürfen außer id keine weiteren Eigenschaften enthalten.</translation> </message> <message> - <location line="+7"/> <source>Invalid component id specification</source> <translation>Ungültige Komponentenspezifikation</translation> </message> <message> - <location line="+6"/> - <location line="+478"/> <source>id is not unique</source> <translation>ID-Wert nicht eindeutig</translation> </message> <message> - <location line="-468"/> <source>Invalid component body specification</source> <translation>Inhalt der Komponente ungültig</translation> </message> <message> - <location line="+14"/> <source>Cannot create empty component specification</source> <translation>Es kann keine leere Komponentenangabe erzeugt werden</translation> </message> <message> - <location line="+105"/> <source>Empty signal assignment</source> <translation>Leere Signalzuweisung</translation> </message> <message> - <location line="+38"/> <source>Empty property assignment</source> <translation>Leere Eigenschaftszuweisung</translation> </message> <message> - <location line="+12"/> <source>Attached properties cannot be used here</source> <translation>An dieser Stelle können keine Eigenschaften des Typs 'attached' verwendet werden</translation> </message> <message> - <location line="+15"/> - <location line="+102"/> <source>Non-existent attached object</source> <translation>Es existiert kein Bezugselement für die Eigenschaft</translation> </message> <message> - <location line="-98"/> - <location line="+101"/> <source>Invalid attached object assignment</source> <translation>Ungültige Zuweisung des Bezugselements</translation> </message> <message> - <location line="-48"/> <source>Cannot assign to non-existent default property</source> <translation>Es kann keine Zuweisung erfolgen, da keine Vorgabe-Eigenschaft existiert</translation> </message> <message> - <location line="+2"/> - <location line="+352"/> <source>Cannot assign to non-existent property "%1"</source> <translation>Es kann keine Zuweisung erfolgen, da keine Eigenschaft des Namens '%1" existiert</translation> </message> <message> - <location line="-322"/> <source>Invalid use of namespace</source> <translation>Ungültige Verwendung eines Namensraums</translation> </message> <message> - <location line="+5"/> <source>Not an attached property name</source> <translation>Kein gültiger Name einer Eigenschaft des Typs 'attached'</translation> </message> <message> - <location line="+182"/> <source>Invalid use of id property</source> <translation>Ungültige Verwendung einer Eigenschaft des Typs 'Id'</translation> </message> <message> - <location line="-357"/> <source>Incorrectly specified signal assignment</source> <translation></translation> </message> <message> - <location line="-100"/> + <source>Invalid property assignment: number expected</source> + <translation>Ungültige Zuweisung bei Eigenschaft: Es wird eine Zahl erwartet</translation> + </message> + <message> <source>Component objects cannot declare new properties.</source> <translation>Komponentenobjekte können keine neuen Eigenschaften deklarieren.</translation> </message> <message> - <location line="+2"/> <source>Component objects cannot declare new signals.</source> <translation>Komponentenobjekte können keine neuen Signale deklarieren.</translation> </message> <message> - <location line="+2"/> <source>Component objects cannot declare new functions.</source> <translation>Komponentenobjekte können keine neuen Funktionen deklarieren.</translation> </message> <message> - <location line="+108"/> <source>Cannot assign a value to a signal (expecting a script to be run)</source> <translation>Einem Signal können keine Werte zugewiesen werden (es wird ein Skript erwartet)</translation> </message> <message> - <location line="+434"/> - <location line="+2"/> <source>Property has already been assigned a value</source> <translation>Der Eigenschaft wurde bereits ein Wert zugewiesen</translation> </message> <message> - <location line="+12"/> - <location line="+7"/> <source>Invalid grouped property access</source> <translation>Falsche Gruppierung bei Zugriff auf Eigenschaft</translation> </message> <message> - <location line="+3"/> <source>Cannot assign a value directly to a grouped property</source> <translation>Bei einer Eigenschaft, die Teil einer Gruppierung ist, ist keine direkte Wertzuweisung zulässig</translation> </message> <message> - <location line="+16"/> <source>Invalid property use</source> <translation>Ungültige Verwendung von Eigenschaften</translation> </message> <message> - <location line="+13"/> <source>Property assignment expected</source> <translation>Zuweisung an Eigenschaft erwartet</translation> </message> <message> - <location line="+3"/> <source>Single property assignment expected</source> <translation>Einzelne Zuweisung an Eigenschaft erwartet</translation> </message> <message> - <location line="+5"/> <source>Unexpected object assignment</source> <translation>Zuweisung des Objekts nicht zulässig</translation> </message> <message> - <location line="+57"/> <source>Cannot assign object to list</source> <translation>Zuweisung eines Objekts an eine Liste nicht zulässig</translation> </message> <message> - <location line="+6"/> <source>Can only assign one binding to lists</source> <translation>Listen kann nur eine einzige Bindung zugewiesen werden</translation> </message> <message> - <location line="+6"/> <source>Cannot assign primitives to lists</source> <translation>Zuweisung eines einfachen Werts (primitive) an eine Liste nicht zulässig</translation> </message> <message> - <location line="+13"/> <source>Cannot assign multiple values to a script property</source> <translation>Eine Zuweisung mehrerer Werte an eine Skript-Eigenschaft ist nicht zulässig</translation> </message> <message> - <location line="+3"/> <source>Invalid property assignment: script expected</source> <translation>Ungültige Zuweisung bei Eigenschaft: Es wird ein Skript erwartet</translation> </message> <message> - <location line="+105"/> <source>Cannot assign object to property</source> <translation>Zuweisung eines Objekts an eine Eigenschaft nicht zulässig</translation> </message> <message> - <location line="+50"/> <source>"%1" cannot operate on "%2"</source> <translation>"%1" kann nicht auf "%2" angewandt werden</translation> </message> <message> - <location line="+117"/> <source>Duplicate default property</source> <translation>Mehrfaches Auftreten der Vorgabe-Eigenschaft</translation> </message> <message> - <location line="+5"/> <source>Duplicate property name</source> <translation>Mehrfaches Auftreten eines Eigenschaftsnamens</translation> </message> <message> - <location line="+3"/> <source>Property names cannot begin with an upper case letter</source> <translation>Eigenschaftsnamen dürfen nicht mit einem Großbuchstaben beginnen</translation> </message> <message> - <location line="+7"/> + <source>Illegal property name</source> + <translation>Ungültiger Name der Eigenschaft</translation> + </message> + <message> <source>Duplicate signal name</source> <translation>Mehrfaches Auftreten eines Signalnamens</translation> </message> <message> - <location line="+2"/> <source>Signal names cannot begin with an upper case letter</source> <translation>Signalnamen dürfen nicht mit einem Großbuchstaben beginnen</translation> </message> <message> - <location line="+2"/> <source>Illegal signal name</source> <translation>Ungültiger Name für Signal</translation> </message> <message> - <location line="+6"/> <source>Duplicate method name</source> <translation>Mehrfaches Auftreten eines Methodennamens</translation> </message> <message> - <location line="+2"/> <source>Method names cannot begin with an upper case letter</source> <translation>Methodennamen dürfen nicht mit einem Großbuchstaben beginnen</translation> </message> <message> - <location line="+2"/> <source>Illegal method name</source> <translation>Ungültiger Name für Methode</translation> </message> <message> - <location line="+21"/> <source>Property value set multiple times</source> <translation>Mehrfache Zuweisung eines Wertes an eine Eigenschaft</translation> </message> <message> - <location line="+4"/> <source>Invalid property nesting</source> <translation>Ungültige Schachtelung von Eigenschaften</translation> </message> <message> - <location line="+53"/> <source>Cannot override FINAL property</source> <translation>Eine als 'FINAL' ausgewiesene Eigenschaft kann nicht überschrieben werden</translation> </message> <message> - <location line="+24"/> <source>Invalid property type</source> <translation>Ungültiger Typ der Eigenschaft</translation> </message> <message> - <location line="+159"/> <source>Invalid empty ID</source> <translation>Ungültiger (leerer) Id-Wert</translation> </message> <message> - <location line="+3"/> <source>IDs cannot start with an uppercase letter</source> <translation>Id-Werte dürfen nicht mit einem Großbuchstaben beginnen</translation> </message> <message> - <location line="+6"/> <source>IDs must start with a letter or underscore</source> <translation>Id-Werte müssen mit einem Buchstaben oder dem Zeichen '_' beginnen</translation> </message> <message> - <location line="+2"/> <source>IDs must contain only letters, numbers, and underscores</source> <translation>Id-Werte dürfen nur Buchstaben oder Unterstriche enthalten</translation> </message> <message> - <location line="+6"/> <source>ID illegally masks global JavaScript property</source> <translation>Der Id-Wert überdeckt eine globale Eigenschaft aus JavaScript</translation> </message> <message> - <location line="+31"/> - <location line="+9"/> <source>No property alias location</source> <translation>Alias-Eigenschaft ohne Quellangabe</translation> </message> <message> - <location line="-4"/> - <location line="+25"/> <source>Invalid alias location</source> <translation>Ungültige Quellangabe bei Alias-Eigenschaft</translation> </message> <message> - <location line="-16"/> <source>Invalid alias reference. An alias reference must be specified as <id> or <id>.<property></source> <translation>Ungültige Referenzierung einer Alias-Eigenschaft. Die Referenz muss in der Form <id> oder <id>.<property> angegeben werden</translation> </message> <message> - <location line="+3"/> <source>Invalid alias reference. Unable to find id "%1"</source> <translation>Ungültige Referenzierung einer Alias-Eigenschaft. Der Id-Wert "%1" konnte nicht gefunden werden</translation> </message> @@ -2114,7 +1699,6 @@ nach <context> <name>QDeclarativeComponent</name> <message> - <location filename="../src/declarative/qml/qdeclarativecomponent.cpp" line="+459"/> <source>Invalid empty URL</source> <translation>Ungültige (leere) URL</translation> </message> @@ -2122,23 +1706,18 @@ nach <context> <name>QDeclarativeCompositeTypeManager</name> <message> - <location filename="../src/declarative/qml/qdeclarativecompositetypemanager.cpp" line="+475"/> - <location line="+266"/> <source>Resource %1 unavailable</source> <translation>Auf die Ressource %1 konnte nicht zugegriffen werden</translation> </message> <message> - <location line="-122"/> <source>Namespace %1 cannot be used as a type</source> <translation>Der Namensraum %1 kann nicht als Typangabe verwendet werden</translation> </message> <message> - <location line="+2"/> <source>%1 %2</source> <translation>%1 %2</translation> </message> <message> - <location line="+47"/> <source>Type %1 unavailable</source> <translation>Der Typ %1 ist nicht verfügbar</translation> </message> @@ -2146,23 +1725,18 @@ nach <context> <name>QDeclarativeConnections</name> <message> - <location filename="../src/declarative/util/qdeclarativeconnections.cpp" line="+209"/> - <location line="+60"/> <source>Cannot assign to non-existent property "%1"</source> <translation>Es kann keine Zuweisung erfolgen, da keine Eigenschaft des Namens '%1" existiert</translation> </message> <message> - <location line="-50"/> <source>Connections: nested objects not allowed</source> <translation>Verbindungen: Verschachtelte Objekte sind nicht zulässig</translation> </message> <message> - <location line="+3"/> <source>Connections: syntax error</source> <translation>Verbindungen: Syntaxfehler</translation> </message> <message> - <location line="+8"/> <source>Connections: script expected</source> <translation>Verbindungen: Skript erwartet</translation> </message> @@ -2170,33 +1744,26 @@ nach <context> <name>QDeclarativeEngine</name> <message> - <location filename="../src/declarative/qml/qdeclarativesqldatabase.cpp" line="+204"/> <source>executeSql called outside transaction()</source> <translation>'executeSql' wurde außerhalb von 'transaction()' aufgerufen</translation> </message> <message> - <location line="+58"/> <source>Read-only Transaction</source> <translation>Schreibgeschützte Transaktion</translation> </message> <message> - <location line="+20"/> <source>Version mismatch: expected %1, found %2</source> <translation>Die Version %2 kann nicht verwendet werden; es wird %1 benötigt</translation> </message> <message> - <location line="+14"/> <source>SQL transaction failed</source> <translation>Die SQL-Transaktion schlug fehl</translation> </message> <message> - <location line="+21"/> <source>transaction: missing callback</source> <translation>callback fehlt bei Transaktion</translation> </message> <message> - <location line="+57"/> - <location line="+16"/> <source>SQL: database version mismatch</source> <translation>SQL: Die Version der Datenbank entspricht nicht der erwarteten Version</translation> </message> @@ -2204,12 +1771,10 @@ nach <context> <name>QDeclarativeFlipable</name> <message> - <location filename="../src/declarative/graphicsitems/qdeclarativeflipable.cpp" line="+129"/> <source>front is a write-once property</source> <translation>'front' kann nur einmal zugewiesen werden</translation> </message> <message> - <location line="+19"/> <source>back is a write-once property</source> <translation>'back' kann nur einmal zugewiesen werden</translation> </message> @@ -2217,75 +1782,58 @@ nach <context> <name>QDeclarativeImportDatabase</name> <message> - <location filename="../src/declarative/qml/qdeclarativeimport.cpp" line="+294"/> <source>module "%1" definition "%2" not readable</source> <translation>Modul "%1" Definition "%2" kann nicht gelesen werden</translation> </message> <message> - <location line="+20"/> <source>plugin cannot be loaded for module "%1": %2</source> <translation>Das Plugin des Moduls "%1" konnte nicht geladen werden: %2</translation> </message> <message> - <location line="+5"/> <source>module "%1" plugin "%2" not found</source> <translation>Modul "%1" Plugin "%2" konnte nicht gefunden werden</translation> </message> <message> - <location line="+79"/> - <location line="+55"/> <source>module "%1" version %2.%3 is not installed</source> <translation>Modul "%1" Version %2.%3 ist nicht installiert</translation> </message> <message> - <location line="-53"/> <source>module "%1" is not installed</source> <translation>Modul "%1" ist nicht installiert</translation> </message> <message> - <location line="+14"/> - <location line="+19"/> <source>"%1": no such directory</source> <translation>Das Verzeichnis "%1" existiert nicht</translation> </message> <message> - <location line="-2"/> <source>import "%1" has no qmldir and no namespace</source> <translation>"qmldir" und Namensraum fehlen bei dem Import "%1"</translation> </message> <message> - <location line="+46"/> <source>- %1 is not a namespace</source> <translation>- %1 ist kein gültiger Namensraum</translation> </message> <message> - <location line="+6"/> <source>- nested namespaces not allowed</source> <translation>- geschachtelte Namensräume sind nicht zulässig</translation> </message> <message> - <location line="+47"/> - <location line="+4"/> <source>local directory</source> <translation>Lokales Verzeichnis'</translation> </message> <message> - <location line="+6"/> <source>is ambiguous. Found in %1 and in %2</source> <translation>ist mehrdeutig. Es kommt in %1 und in %2 vor</translation> </message> <message> - <location line="+4"/> <source>is ambiguous. Found in %1 in version %2.%3 and %4.%5</source> <translation>ist mehrdeutig. Es kommt in %1 in den Version %2.%3 und %4.%5 vor</translation> </message> <message> - <location line="+14"/> <source>is instantiated recursively</source> <translation>wird rekursiv instanziiert</translation> </message> <message> - <location line="+2"/> <source>is not a type</source> <translation>ist kein Typ</translation> </message> @@ -2293,7 +1841,6 @@ nach <context> <name>QDeclarativeKeyNavigationAttached</name> <message> - <location filename="../src/declarative/graphicsitems/qdeclarativeitemsmodule.cpp" line="+70"/> <source>KeyNavigation is only available via attached properties</source> <translation>Tastennavigation ist nur über Eigenschaften des Typs 'attached' verfügbar</translation> </message> @@ -2301,7 +1848,6 @@ nach <context> <name>QDeclarativeKeysAttached</name> <message> - <location line="+1"/> <source>Keys is only available via attached properties</source> <translation>Die Unterstützung für Tasten ist nur über Eigenschaften des Typs 'attached' verfügbar</translation> </message> @@ -2309,59 +1855,46 @@ nach <context> <name>QDeclarativeListModel</name> <message> - <location filename="../src/declarative/util/qdeclarativelistmodel.cpp" line="+399"/> <source>remove: index %1 out of range</source> <translation>remove: Der Index %1 ist außerhalb des gültigen Bereichs</translation> </message> <message> - <location line="+33"/> <source>insert: value is not an object</source> <translation>insert: Der Wert ist kein Objekt</translation> </message> <message> - <location line="+5"/> <source>insert: index %1 out of range</source> <translation>insert: Der Index %1 ist außerhalb des gültigen Bereichs</translation> </message> <message> - <location line="+30"/> <source>move: out of range</source> <translation>move: Außerhalb des gültigen Bereichs</translation> </message> <message> - <location line="+40"/> <source>append: value is not an object</source> <translation>append: Der Wert ist kein Objekt</translation> </message> <message> - <location line="+55"/> <source>set: value is not an object</source> <translation>set: Der Wert ist kein Objekt</translation> </message> <message> - <location line="+4"/> - <location line="+34"/> <source>set: index %1 out of range</source> <translation>set: Der Index %1 ist außerhalb des gültigen Bereichs</translation> </message> <message> - <location line="+39"/> - <location line="+15"/> <source>ListElement: cannot contain nested elements</source> <translation>ListElement kann keine geschachtelten Elemente enthalten</translation> </message> <message> - <location line="+4"/> <source>ListElement: cannot use reserved "id" property</source> <translation>ListElement: Die "id"-Eigenschaft kann nicht verwendet werden</translation> </message> <message> - <location line="+49"/> <source>ListElement: cannot use script for property value</source> <translation>ListElement: Es kann kein Skript für den Wert der Eigenschaft verwendet werden</translation> </message> <message> - <location line="+29"/> <source>ListModel: undefined property '%1'</source> <translation>ListModel: Die Eigenschaft '%1' ist nicht definiert</translation> </message> @@ -2369,7 +1902,6 @@ nach <context> <name>QDeclarativeLoader</name> <message> - <location filename="../src/declarative/graphicsitems/qdeclarativeloader.cpp" line="+323"/> <source>Loader does not support loading non-visual elements.</source> <translation>Das Laden nicht-visueller Elemente ist nicht unterstützt.</translation> </message> @@ -2377,18 +1909,14 @@ nach <context> <name>QDeclarativeParentAnimation</name> <message> - <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="-169"/> <source>Unable to preserve appearance under complex transform</source> <translation>Das Erscheinungsbild kann bei einer komplexen Transformation nicht beibehalten werden</translation> </message> <message> - <location line="+10"/> - <location line="+7"/> <source>Unable to preserve appearance under non-uniform scale</source> <translation>Das Erscheinungsbild kann bei einer nicht-uniformen Skalierung nicht beibehalten werden</translation> </message> <message> - <location line="+7"/> <source>Unable to preserve appearance under scale of 0</source> <translation>Das Erscheinungsbild kann bei einer Skalierung mit 0 nicht beibehalten werden</translation> </message> @@ -2396,18 +1924,14 @@ nach <context> <name>QDeclarativeParentChange</name> <message> - <location filename="../src/declarative/util/qdeclarativestateoperations.cpp" line="+95"/> <source>Unable to preserve appearance under complex transform</source> <translation>Das Erscheinungsbild kann bei einer komplexen Transformation nicht beibehalten werden</translation> </message> <message> - <location line="+10"/> - <location line="+7"/> <source>Unable to preserve appearance under non-uniform scale</source> <translation>Das Erscheinungsbild kann bei einer nicht-uniformen Skalierung nicht beibehalten werden</translation> </message> <message> - <location line="+7"/> <source>Unable to preserve appearance under scale of 0</source> <translation>Das Erscheinungsbild kann bei einer Skalierung mit 0 nicht beibehalten werden</translation> </message> @@ -2415,144 +1939,110 @@ nach <context> <name>QDeclarativeParser</name> <message> - <location filename="../src/declarative/qml/parser/qdeclarativejslexer.cpp" line="+579"/> <source>Illegal character</source> <translation>Ungültiges Zeichen</translation> </message> <message> - <location line="+14"/> <source>Unclosed string at end of line</source> <translation>Zeichenkette am Zeilenende nicht abgeschlossen</translation> </message> <message> - <location line="+26"/> <source>Illegal escape squence</source> <translation>Ungültiges Escape-Sequenz</translation> </message> <message> - <location line="-77"/> - <location line="+123"/> - <location line="+54"/> <source>Illegal unicode escape sequence</source> <translation>Ungültige Unicode-Escape-Sequenz</translation> </message> <message> - <location line="-28"/> <source>Unclosed comment at end of file</source> <translation>Kommentar am Dateiende nicht abgeschlossen</translation> </message> <message> - <location line="+102"/> <source>Illegal syntax for exponential number</source> <translation>Ungültige Syntax des Exponenten</translation> </message> <message> - <location line="+26"/> <source>Identifier cannot start with numeric literal</source> <translation>Ein Bezeichner darf nicht mit einem numerischen Literal beginnen</translation> </message> <message> - <location line="+338"/> <source>Unterminated regular expression literal</source> <translation>Regulärer Ausdruck nicht abgeschlossen</translation> </message> <message> - <location line="+15"/> <source>Invalid regular expression flag '%0'</source> <translation>Ungültiger Modifikator '%0' bei regulärem Ausdruck</translation> </message> <message> - <location line="+16"/> - <location line="+22"/> <source>Unterminated regular expression backslash sequence</source> <translation>Regulärer Ausdruck nicht abgeschlossen</translation> </message> <message> - <location line="+13"/> <source>Unterminated regular expression class</source> <translation>Klasse im regulären Ausdruck nicht abgeschlossen</translation> </message> <message> - <location filename="../src/declarative/qml/parser/qdeclarativejsparser.cpp" line="+1828"/> - <location line="+67"/> <source>Syntax error</source> <translation>Syntaxfehler</translation> </message> <message> - <location line="-65"/> <source>Unexpected token `%1'</source> <translation>Unerwartetes Element '%1'</translation> </message> <message> - <location line="+28"/> - <location line="+24"/> <source>Expected token `%1'</source> <translation>Es wird das Element '%1' erwartet</translation> </message> <message> - <location filename="../src/declarative/qml/qdeclarativescriptparser.cpp" line="+260"/> - <location line="+431"/> - <location line="+59"/> <source>Property value set multiple times</source> <translation>Mehrfache Zuweisung eines Wertes an eine Eigenschaft</translation> </message> <message> - <location line="-479"/> <source>Expected type name</source> <translation>Es wird ein Typname erwartet</translation> </message> <message> - <location line="+136"/> <source>Invalid import qualifier ID</source> <translation>Ungültige Id-Angabe bei Import</translation> </message> <message> - <location line="+8"/> <source>Reserved name "Qt" cannot be used as an qualifier</source> <translation>Der reservierte Name "Qt" kann nicht als Bezeichner verwendet werden</translation> </message> <message> - <location line="+15"/> <source>Script import qualifiers must be unique.</source> <translation>Der für den Skript-Import angegebene Qualifizierer muss eindeutig sein.</translation> </message> <message> - <location line="+10"/> <source>Script import requires a qualifier</source> <translation>Der Skript-Import erfordert die Angabe eines Qualifizierers.</translation> </message> <message> - <location line="+11"/> <source>Library import requires a version</source> <translation>Der Import einer Bibliothek erfordert eine Versionsangabe</translation> </message> <message> - <location line="+59"/> <source>Expected parameter type</source> <translation>Es wird eine Typangabe für den Parameter erwartet</translation> </message> <message> - <location line="+42"/> <source>Invalid property type modifier</source> <translation>Ungültiger Modifikator für den Typ der Eigenschaft</translation> </message> <message> - <location line="+9"/> <source>Unexpected property type modifier</source> <translation>Modifikator für den Typ der Eigenschaft an dieser Stelle nicht zulässig</translation> </message> <message> - <location line="+9"/> <source>Expected property type</source> <translation>Typangabe für Eigenschaft erwartet</translation> </message> <message> - <location line="+9"/> <source>Readonly not yet supported</source> <translation>'read-only' wird an dieser Stelle noch nicht unterstützt</translation> </message> <message> - <location line="+215"/> <source>JavaScript declaration outside Script element</source> <translation>Eine JavaScript-Deklaration ist außerhalb eines Skriptelementes nicht zulässig</translation> </message> @@ -2560,39 +2050,47 @@ nach <context> <name>QDeclarativePauseAnimation</name> <message> - <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="-1990"/> <source>Cannot set a duration of < 0</source> <translation>Es kann keine Zeitdauer <0 gesetzt werden</translation> </message> </context> <context> - <name>QDeclarativePixmapCache</name> + <name>QDeclarativePixmap</name> <message> - <location filename="../src/declarative/util/qdeclarativepixmapcache.cpp" line="+190"/> <source>Error decoding: %1: %2</source> <translation>Fehler beim Decodieren: %1: %2</translation> </message> <message> - <location line="+70"/> <source>Failed to get image from provider: %1</source> <translation>Bilddaten konnten nicht erhalten werden: %1</translation> </message> <message> - <location line="+19"/> - <location line="+345"/> <source>Cannot open: %1</source> <translation>Fehlschlag beim Öffnen: %1</translation> </message> +</context> +<context> + <name>QDeclarativePixmapCache</name> + <message> + <source>Error decoding: %1: %2</source> + <translation type="obsolete">Fehler beim Decodieren: %1: %2</translation> + </message> + <message> + <source>Failed to get image from provider: %1</source> + <translation type="obsolete">Bilddaten konnten nicht erhalten werden: %1</translation> + </message> + <message> + <source>Cannot open: %1</source> + <translation type="obsolete">Fehlschlag beim Öffnen: %1</translation> + </message> <message> - <location line="+37"/> <source>Unknown Error loading %1</source> - <translation>Unbekannter Fehler beim Laden von %1</translation> + <translation type="obsolete">Unbekannter Fehler beim Laden von %1</translation> </message> </context> <context> <name>QDeclarativePropertyAnimation</name> <message> - <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="+1113"/> <source>Cannot set a duration of < 0</source> <translation>Es kann keine Zeitdauer <0 gesetzt werden</translation> </message> @@ -2600,17 +2098,14 @@ nach <context> <name>QDeclarativePropertyChanges</name> <message> - <location filename="../src/declarative/util/qdeclarativepropertychanges.cpp" line="+267"/> <source>PropertyChanges does not support creating state-specific objects.</source> <translation>Die Erzeugung von Objekten, die einem Zustand zugeordnet sind, wird von PropertyChanges nicht unterstützt.</translation> </message> <message> - <location line="+157"/> <source>Cannot assign to non-existent property "%1"</source> <translation>Es kann keine Zuweisung erfolgen, da keine Eigenschaft des Namens '%1" existiert</translation> </message> <message> - <location line="+3"/> <source>Cannot assign to read-only property "%1"</source> <translation>Die Eigenschaft '%1" ist schreibgeschützt und kann daher nicht zugewiesen werden</translation> </message> @@ -2618,13 +2113,10 @@ nach <context> <name>QDeclarativeTextInput</name> <message> - <location filename="../src/declarative/graphicsitems/qdeclarativetextinput.cpp" line="+793"/> - <location line="+8"/> <source>Could not load cursor delegate</source> <translation>Cursor-Delegate konnte nicht geladen werden</translation> </message> <message> - <location line="+11"/> <source>Could not instantiate cursor delegate</source> <translation>Cursor-Delegate konnte angelegt werden</translation> </message> @@ -2632,47 +2124,38 @@ nach <context> <name>QDeclarativeVME</name> <message> - <location filename="../src/declarative/qml/qdeclarativevme.cpp" line="+194"/> <source>Unable to create object of type %1</source> <translation>Es konnte kein Objekt des Typs %1 erzeugt werden</translation> </message> <message> - <location line="+390"/> <source>Cannot assign value %1 to property %2</source> <translation>Der Wert '%1' kann nicht der Eigenschaft %2 zugewiesen werden</translation> </message> <message> - <location line="+22"/> <source>Cannot assign object type %1 with no default method</source> <translation>Der Objekttyp %1 kann nicht zugewiesen werden, da keine Vorgabe-Methode existiert</translation> </message> <message> - <location line="+3"/> <source>Cannot connect mismatched signal/slot %1 %vs. %2</source> <translation>Es kann keine Verbindung zwischen dem Signal %1 und dem Slot %2 hergestellt werden, da sie nicht zusammenpassen</translation> </message> <message> - <location line="+5"/> <source>Cannot assign an object to signal property %1</source> <translation>Der Signal-Eigenschaft %1 kann kein Objekt zugewiesen werden</translation> </message> <message> - <location line="+146"/> <source>Cannot assign object to list</source> <translation>Zuweisung eines Objekts an eine Liste nicht zulässig</translation> </message> <message> - <location line="+41"/> <source>Cannot assign object to interface property</source> <translation>Der Eigenschaft der Schnittstelle kann kein Objekt zugewiesen werden</translation> </message> <message> - <location line="+11"/> <source>Unable to create attached object</source> <translation>Es konnte kein 'attached'-Objekt erzeugt werden</translation> </message> <message> - <location line="+32"/> <source>Cannot set properties on %1 as it is null</source> <translation>Es können keine Eigenschaften auf %1 gesetzt werden, da es 'null' ist</translation> </message> @@ -2680,7 +2163,6 @@ nach <context> <name>QDeclarativeVisualDataModel</name> <message> - <location filename="../src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp" line="+1090"/> <source>Delegate component must be Item type.</source> <translation>Delegate-Komponente muss vom Typ 'Item' sein</translation> </message> @@ -2688,8 +2170,6 @@ nach <context> <name>QDeclarativeXmlListModel</name> <message> - <location filename="../src/declarative/util/qdeclarativeutilmodule.cpp" line="-12"/> - <location line="+2"/> <source>Qt was built without support for xmlpatterns</source> <translation>Diese Version der Qt-Bibliothek wurde ohne Unterstützung für xmlpatterns erstellt</translation> </message> @@ -2697,7 +2177,6 @@ nach <context> <name>QDeclarativeXmlListModelRole</name> <message> - <location filename="../src/declarative/util/qdeclarativexmllistmodel_p.h" line="+174"/> <source>An XmlRole query must not start with '/'</source> <translation>Eine XmlRole-Abfrage darf nicht mit '/' beginnen</translation> </message> @@ -2705,7 +2184,6 @@ nach <context> <name>QDeclarativeXmlRoleList</name> <message> - <location filename="../src/declarative/util/qdeclarativexmllistmodel.cpp" line="+712"/> <source>An XmlListModel query must start with '/' or "//"</source> <translation>Eine XmlListModel-Abfrage muss mit '/' oder "//" beginnen</translation> </message> @@ -2713,17 +2191,14 @@ nach <context> <name>QDial</name> <message> - <location filename="../src/plugins/accessible/widgets/rangecontrols.cpp" line="+951"/> <source>QDial</source> <translation>QDial</translation> </message> <message> - <location line="+2"/> <source>SpeedoMeter</source> <translation>Tachometer</translation> </message> <message> - <location line="+2"/> <source>SliderHandle</source> <translation>Schieberegler</translation> </message> @@ -2731,12 +2206,10 @@ nach <context> <name>QDialog</name> <message> - <location filename="../src/gui/dialogs/qdialog.cpp" line="+645"/> <source>What's This?</source> <translation>Direkthilfe</translation> </message> <message> - <location line="-122"/> <source>Done</source> <translation>Fertig</translation> </message> @@ -2744,124 +2217,98 @@ nach <context> <name>QDialogButtonBox</name> <message> - <location filename="../src/gui/dialogs/qmessagebox.cpp" line="+1920"/> - <location line="+464"/> - <location filename="../src/gui/widgets/qdialogbuttonbox.cpp" line="+649"/> <source>OK</source> <translation>OK</translation> </message> <message> - <location filename="../src/gui/widgets/qdialogbuttonbox.cpp" line="+3"/> <source>Save</source> <translation>Speichern</translation> </message> <message> - <location line="+0"/> <source>&Save</source> <translation>S&peichern</translation> </message> <message> - <location line="+3"/> <source>Open</source> <translation>Öffnen</translation> </message> <message> - <location line="+3"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location line="+0"/> <source>&Cancel</source> <translation>&Abbrechen</translation> </message> <message> - <location line="+3"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="+0"/> <source>&Close</source> <translation>Schl&ießen</translation> </message> <message> - <location line="+3"/> <source>Apply</source> <translation>Anwenden</translation> </message> <message> - <location line="+3"/> <source>Reset</source> <translation>Zurücksetzen</translation> </message> <message> - <location line="+3"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location line="+4"/> <source>Don't Save</source> <translation>Nicht speichern</translation> </message> <message> - <location line="+4"/> <source>Discard</source> <translation>Verwerfen</translation> </message> <message> - <location line="+3"/> <source>&Yes</source> <translation>&Ja</translation> </message> <message> - <location line="+3"/> <source>Yes to &All</source> <translation>Ja, &alle</translation> </message> <message> - <location line="+3"/> <source>&No</source> <translation>&Nein</translation> </message> <message> - <location line="+3"/> <source>N&o to All</source> <translation>N&ein, keine</translation> </message> <message> - <location line="+3"/> <source>Save All</source> <translation>Alles speichern</translation> </message> <message> - <location line="+3"/> <source>Abort</source> <translation>Abbrechen</translation> </message> <message> - <location line="+3"/> <source>Retry</source> <translation>Wiederholen</translation> </message> <message> - <location line="+3"/> <source>Ignore</source> <translation>Ignorieren</translation> </message> <message> - <location line="+3"/> <source>Restore Defaults</source> <translation>Voreinstellungen</translation> </message> <message> - <location line="-29"/> <source>Close without Saving</source> <translation>Schließen ohne Speichern</translation> </message> <message> - <location line="-27"/> <source>&OK</source> <translation>&OK</translation> </message> @@ -2869,29 +2316,24 @@ nach <context> <name>QDirModel</name> <message> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+457"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+1"/> <source>Size</source> <translation>Größe</translation> </message> <message> - <location line="+3"/> <source>Kind</source> <comment>Match OS X Finder</comment> <translation>Art</translation> </message> <message> - <location line="+2"/> <source>Type</source> <comment>All other platforms</comment> <translation>Typ</translation> </message> <message> - <location line="+6"/> <source>Date Modified</source> <translation>Änderungsdatum</translation> </message> @@ -2899,17 +2341,14 @@ nach <context> <name>QDockWidget</name> <message> - <location filename="../src/plugins/accessible/widgets/qaccessiblewidgets.cpp" line="+1239"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="+2"/> <source>Dock</source> <translation>Andocken</translation> </message> <message> - <location line="+1"/> <source>Float</source> <translation>Herauslösen</translation> </message> @@ -2917,12 +2356,10 @@ nach <context> <name>QDoubleSpinBox</name> <message> - <location filename="../src/plugins/accessible/widgets/rangecontrols.cpp" line="-537"/> <source>More</source> <translation>Mehr</translation> </message> <message> - <location line="+2"/> <source>Less</source> <translation>Weniger</translation> </message> @@ -2930,27 +2367,22 @@ nach <context> <name>QErrorMessage</name> <message> - <location filename="../src/gui/dialogs/qerrormessage.cpp" line="+414"/> <source>&Show this message again</source> <translation>Diese Meldung wieder an&zeigen</translation> </message> <message> - <location line="+1"/> <source>&OK</source> <translation>&OK</translation> </message> <message> - <location line="-207"/> <source>Debug Message:</source> <translation>Debug-Ausgabe:</translation> </message> <message> - <location line="+3"/> <source>Warning:</source> <translation>Achtung:</translation> </message> <message> - <location line="+3"/> <source>Fatal Error:</source> <translation>Fehler:</translation> </message> @@ -2958,38 +2390,30 @@ nach <context> <name>QFile</name> <message> - <location filename="../src/corelib/io/qfile.cpp" line="+703"/> - <location line="+155"/> <source>Destination file exists</source> <translation>Die Zieldatei existiert bereits</translation> </message> <message> - <location line="-140"/> <source>Will not rename sequential file using block copy</source> <translation>Eine sequentielle Datei kann nicht durch blockweises Kopieren umbenannt werden</translation> </message> <message> - <location line="+23"/> <source>Cannot remove source file</source> <translation>Die Quelldatei kann nicht entfernt werden</translation> </message> <message> - <location line="+130"/> <source>Cannot open %1 for input</source> <translation>%1 kann nicht zum Lesen geöffnet werden</translation> </message> <message> - <location line="+17"/> <source>Cannot open for output</source> <translation>Das Öffnen zum Schreiben ist fehlgeschlagen</translation> </message> <message> - <location line="+10"/> <source>Failure to write block</source> <translation>Der Datenblock konnte nicht geschrieben werden</translation> </message> <message> - <location line="+13"/> <source>Cannot create %1 for output</source> <translation>%1 kann nicht erstellt werden</translation> </message> @@ -2997,113 +2421,84 @@ nach <context> <name>QFileDialog</name> <message> - <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+558"/> - <location line="+481"/> <source>All Files (*)</source> <translation>Alle Dateien (*)</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.ui"/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>Back</source> <translation>Zurück</translation> </message> <message> - <location/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>List View</source> <translation>Liste</translation> </message> <message> - <location/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>Detail View</source> <translation>Details</translation> </message> <message> - <location filename="../src/gui/itemviews/qfileiconprovider.cpp" line="+467"/> - <location line="+1"/> <source>File</source> <translation>Datei</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-498"/> <source>Open</source> <translation>Öffnen</translation> </message> <message> - <location line="+2"/> <source>Save As</source> <translation>Speichern unter</translation> </message> <message> - <location line="+709"/> - <location line="+55"/> - <location line="+1532"/> <source>&Open</source> <translation>&Öffnen</translation> </message> <message> - <location line="-1587"/> - <location line="+55"/> <source>&Save</source> <translation>S&peichern</translation> </message> <message> - <location line="+1805"/> <source>Recent Places</source> <translation>Zuletzt besucht</translation> </message> <message> - <location line="-2540"/> <source>&Rename</source> <translation>&Umbenennen</translation> </message> <message> - <location line="+1"/> <source>&Delete</source> <translation>&Löschen</translation> </message> <message> - <location line="+1"/> <source>Show &hidden files</source> <translation>&Versteckte Dateien anzeigen</translation> </message> <message> - <location line="+1986"/> <source>New Folder</source> <translation>Neues Verzeichnis</translation> </message> <message> - <location line="-2021"/> <source>Find Directory</source> <translation>Verzeichnis suchen</translation> </message> <message> - <location line="+716"/> <source>Directories</source> <translation>Verzeichnisse</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog_win.cpp" line="+148"/> <source>All Files (*.*)</source> <translation>Alle Dateien (*.*)</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-675"/> - <location line="+679"/> <source>Directory:</source> <translation>Verzeichnis:</translation> </message> <message> - <location line="+819"/> <source>%1 already exists. Do you want to replace it?</source> <translation>Die Datei %1 existiert bereits. Soll sie überschrieben werden?</translation> </message> <message> - <location line="+20"/> <source>%1 File not found. Please verify the correct file name was given.</source> @@ -3112,25 +2507,18 @@ Die Datei konnte nicht gefunden werden. Stellen Sie sicher, dass der Dateiname richtig ist.</translation> </message> <message> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+402"/> <source>My Computer</source> <translation>Mein Computer</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.ui"/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>Parent Directory</source> <translation>Übergeordnetes Verzeichnis</translation> </message> <message> - <location/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>Files of type:</source> <translation>Dateien des Typs:</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-54"/> - <location line="+862"/> <source>%1 Directory not found. Please verify the correct directory name was given.</source> @@ -3139,128 +2527,100 @@ Das Verzeichnis konnte nicht gefunden werden. Stellen Sie sicher, dass der Verzeichnisname richtig ist.</translation> </message> <message> - <location line="-218"/> <source>'%1' is write protected. Do you want to delete it anyway?</source> <translation>'%1' ist schreibgeschützt. Möchten Sie die Datei trotzdem löschen?</translation> </message> <message> - <location line="+5"/> <source>Are sure you want to delete '%1'?</source> <translation>Sind Sie sicher, dass Sie '%1' löschen möchten?</translation> </message> <message> - <location line="+15"/> <source>Could not delete directory.</source> <translation>Konnte Verzeichnis nicht löschen.</translation> </message> <message> - <location filename="../src/gui/itemviews/qfileiconprovider.cpp" line="-4"/> <source>Drive</source> <translation>Laufwerk</translation> </message> <message> - <location line="+9"/> <source>File Folder</source> <comment>Match Windows Explorer</comment> <translation>Ordner</translation> </message> <message> - <location line="+2"/> <source>Folder</source> <comment>All other platforms</comment> <translation>Order</translation> </message> <message> - <location line="+9"/> <source>Alias</source> <comment>Mac OS X Finder</comment> <translation>Alias</translation> </message> <message> - <location line="+2"/> <source>Shortcut</source> <comment>All other platforms</comment> <translation>Symbolischer Link</translation> </message> <message> - <location line="+7"/> <source>Unknown</source> <translation>Unbekannt</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-2140"/> <source>Show </source> <translation>Anzeigen </translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.ui"/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>Forward</source> <translation>Vorwärts</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+7"/> <source>&New Folder</source> <translation>&Neues Verzeichnis</translation> </message> <message> - <location line="+687"/> - <location line="+43"/> <source>&Choose</source> <translation>&Auswählen</translation> </message> <message> - <location filename="../src/gui/dialogs/qsidebar.cpp" line="+442"/> <source>Remove</source> <translation>Löschen</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-723"/> - <location line="+683"/> <source>File &name:</source> <translation>Datei&name:</translation> </message> <message> - <location filename="../src/gui/dialogs/qfiledialog.ui"/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>Look in:</source> <translation>Suchen in:</translation> </message> <message> - <location/> - <location filename="../src/gui/dialogs/qfiledialog_embedded.ui"/> <source>Create New Folder</source> <translation>Neuen Ordner erstellen</translation> </message> <message> - <location/> <source>Go back</source> <translation>Zurück</translation> </message> <message> - <location/> <source>Go forward</source> <translation>Vor</translation> </message> <message> - <location/> <source>Go to the parent directory</source> <translation>Gehe zum übergeordneten Verzeichnis</translation> </message> <message> - <location/> <source>Create a New Folder</source> <translation>Neuen Ordner erstellen</translation> </message> <message> - <location/> <source>Change to list view mode</source> <translation>Wechsle zu Listenansicht</translation> </message> <message> - <location/> <source>Change to detail view mode</source> <translation>Wechsle zu Detailansicht</translation> </message> @@ -3268,83 +2628,64 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QFileSystemModel</name> <message> - <location filename="../src/gui/dialogs/qfilesystemmodel.cpp" line="+740"/> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+482"/> <source>%1 TB</source> <translation>%1 TB</translation> </message> <message> - <location line="+2"/> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+2"/> <source>%1 GB</source> <translation>%1 GB</translation> </message> <message> - <location line="+2"/> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+2"/> <source>%1 MB</source> <translation>%1 MB</translation> </message> <message> - <location line="+2"/> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+2"/> <source>%1 KB</source> <translation>%1 KB</translation> </message> <message> - <location line="+1"/> <source>%1 bytes</source> <translation>%1 Byte</translation> </message> <message> - <location line="+89"/> <source>Invalid filename</source> <translation>Ungültiger Dateiname</translation> </message> <message> - <location line="+1"/> <source><b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks.</source> <translation><b>Der Name "%1" kann nicht verwendet werden.</b><p>Versuchen Sie, die Sonderzeichen zu entfernen oder einen kürzeren Namen zu verwenden.</translation> </message> <message> - <location line="+64"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+2"/> <source>Size</source> <translation>Größe</translation> </message> <message> - <location line="+4"/> <source>Kind</source> <comment>Match OS X Finder</comment> <translation>Art</translation> </message> <message> - <location line="+2"/> <source>Type</source> <comment>All other platforms</comment> <translation>Typ</translation> </message> <message> - <location line="+7"/> <source>Date Modified</source> <translation>Änderungsdatum</translation> </message> <message> - <location filename="../src/gui/dialogs/qfilesystemmodel_p.h" line="+261"/> <source>My Computer</source> <translation>Mein Computer</translation> </message> <message> - <location line="+2"/> <source>Computer</source> <translation>Computer</translation> </message> <message> - <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+1"/> <source>%1 byte(s)</source> <translation>%1 byte</translation> </message> @@ -3352,221 +2693,170 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QFontDatabase</name> <message> - <location filename="../src/gui/text/qfontdatabase.cpp" line="+102"/> - <location line="+1342"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location line="-1339"/> - <location line="+12"/> - <location line="+1315"/> <source>Bold</source> <translation>Fett</translation> </message> <message> - <location line="-1324"/> - <location line="+1326"/> <source>Demi Bold</source> <translation>Halbfett</translation> </message> <message> - <location line="-1323"/> - <location line="+18"/> - <location line="+1301"/> <source>Black</source> <translation>Schwarz</translation> </message> <message> - <location line="-1311"/> <source>Demi</source> <translation>Semi</translation> </message> <message> - <location line="+6"/> - <location line="+1311"/> <source>Light</source> <translation>Leicht</translation> </message> <message> - <location line="-1165"/> - <location line="+1168"/> <source>Italic</source> <translation>Kursiv</translation> </message> <message> - <location line="-1165"/> - <location line="+1167"/> <source>Oblique</source> <translation>Schräggestellt</translation> </message> <message> - <location line="+704"/> <source>Any</source> <translation>Alle</translation> </message> <message> - <location line="+3"/> <source>Latin</source> <translation>Lateinisch</translation> </message> <message> - <location line="+3"/> <source>Greek</source> <translation>Griechisch</translation> </message> <message> - <location line="+3"/> <source>Cyrillic</source> <translation>Kyrillisch</translation> </message> <message> - <location line="+3"/> <source>Armenian</source> <translation>Armenisch</translation> </message> <message> - <location line="+3"/> <source>Hebrew</source> <translation>Hebräisch</translation> </message> <message> - <location line="+3"/> <source>Arabic</source> <translation>Arabisch</translation> </message> <message> - <location line="+3"/> <source>Syriac</source> <translation>Syrisch</translation> </message> <message> - <location line="+3"/> <source>Thaana</source> <translation>Thaana</translation> </message> <message> - <location line="+3"/> <source>Devanagari</source> <translation>Devanagari</translation> </message> <message> - <location line="+3"/> <source>Bengali</source> <translation>Bengalisch</translation> </message> <message> - <location line="+3"/> <source>Gurmukhi</source> <translation>Gurmukhi</translation> </message> <message> - <location line="+3"/> <source>Gujarati</source> <translation>Gujarati</translation> </message> <message> - <location line="+3"/> <source>Oriya</source> <translation>Oriya</translation> </message> <message> - <location line="+3"/> <source>Tamil</source> <translation>Tamilisch</translation> </message> <message> - <location line="+3"/> <source>Telugu</source> <translation>Telugu</translation> </message> <message> - <location line="+3"/> <source>Kannada</source> <translation>Kannada</translation> </message> <message> - <location line="+3"/> <source>Malayalam</source> <translation>Malayalam</translation> </message> <message> - <location line="+3"/> <source>Sinhala</source> <translation>Sinhala</translation> </message> <message> - <location line="+3"/> <source>Thai</source> <translation>Thailändisch</translation> </message> <message> - <location line="+3"/> <source>Lao</source> <translation>Laotisch</translation> </message> <message> - <location line="+3"/> <source>Tibetan</source> <translation>Tibetisch</translation> </message> <message> - <location line="+3"/> <source>Myanmar</source> <translation>Myanmar</translation> </message> <message> - <location line="+3"/> <source>Georgian</source> <translation>Georgisch</translation> </message> <message> - <location line="+3"/> <source>Khmer</source> <translation>Khmer</translation> </message> <message> - <location line="+3"/> <source>Simplified Chinese</source> <translation>Chinesisch (Kurzzeichen)</translation> </message> <message> - <location line="+3"/> <source>Traditional Chinese</source> <translation>Chinesisch (Langzeichen)</translation> </message> <message> - <location line="+3"/> <source>Japanese</source> <translation>Japanisch</translation> </message> <message> - <location line="+3"/> <source>Korean</source> <translation>Koreanisch</translation> </message> <message> - <location line="+3"/> <source>Vietnamese</source> <translation>Vietnamesisch</translation> </message> <message> - <location line="+3"/> <source>Symbol</source> <translation>Symbol</translation> </message> <message> - <location line="+3"/> <source>Ogham</source> <translation>Ogham</translation> </message> <message> - <location line="+3"/> <source>Runic</source> <translation>Runen</translation> </message> <message> - <location line="+3"/> <source>N'Ko</source> <translation>N'Ko</translation> </message> @@ -3574,47 +2864,38 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QFontDialog</name> <message> - <location filename="../src/gui/dialogs/qfontdialog.cpp" line="+768"/> <source>&Font</source> <translation>&Schriftart</translation> </message> <message> - <location line="+1"/> <source>Font st&yle</source> <translation>Schrifts&til</translation> </message> <message> - <location line="+1"/> <source>&Size</source> <translation>&Größe</translation> </message> <message> - <location line="+4"/> <source>Effects</source> <translation>Effekte</translation> </message> <message> - <location line="+2"/> <source>Stri&keout</source> <translation>Durch&gestrichen</translation> </message> <message> - <location line="+1"/> <source>&Underline</source> <translation>&Unterstrichen</translation> </message> <message> - <location line="+1"/> <source>Sample</source> <translation>Beispiel</translation> </message> <message> - <location line="-595"/> <source>Select Font</source> <translation>Schriftart auswählen</translation> </message> <message> - <location line="+596"/> <source>Wr&iting System</source> <translation>&Schriftsystem</translation> </message> @@ -3622,145 +2903,104 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QFtp</name> <message> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+2303"/> <source>Host %1 found</source> <translation>Rechner %1 gefunden</translation> </message> <message> - <location line="+7"/> <source>Host found</source> <translation>Rechner gefunden</translation> </message> <message> - <location filename="../src/network/access/qftp.cpp" line="+1008"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="-1456"/> - <location line="+1451"/> <source>Connected to host %1</source> <translation>Verbunden mit Rechner %1</translation> </message> <message> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+7"/> <source>Connected to host</source> <translation>Verbindung mit Rechner besteht</translation> </message> <message> - <location line="-5"/> <source>Connection to %1 closed</source> <translation>Verbindung mit %1 beendet</translation> </message> <message> - <location filename="../src/network/access/qftp.cpp" line="+1383"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="-243"/> - <location line="+250"/> <source>Connection closed</source> <translation>Verbindung beendet</translation> </message> <message> - <location line="-1495"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="-1566"/> <source>Host %1 not found</source> <translation>Rechner %1 konnte nicht gefunden werden</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+4"/> <source>Connection refused to host %1</source> <translation>Verbindung mit %1 verweigert</translation> </message> <message> - <location line="+4"/> <source>Connection timed out to host %1</source> <translation>Das Zeitlimit für die Verbindung zu '%1' wurde überschritten</translation> </message> <message> - <location line="+501"/> - <location line="+29"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+458"/> - <location line="+728"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location line="+897"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+77"/> <source>Connecting to host failed: %1</source> <translation>Verbindung mit Rechner schlug fehl: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Login failed: %1</source> <translation>Anmeldung schlug fehl: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Listing directory failed: %1</source> <translation>Der Inhalt des Verzeichnisses kann nicht angezeigt werden: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Changing directory failed: %1</source> <translation>Ändern des Verzeichnisses schlug fehl: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Downloading file failed: %1</source> <translation>Herunterladen der Datei schlug fehl: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Uploading file failed: %1</source> <translation>Hochladen der Datei schlug fehl: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Removing file failed: %1</source> <translation>Löschen der Datei schlug fehl: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Creating directory failed: %1</source> <translation>Erstellen des Verzeichnisses schlug fehl: %1</translation> </message> <message> - <location line="+4"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+3"/> <source>Removing directory failed: %1</source> <translation>Löschen des Verzeichnisses schlug fehl: %1</translation> </message> <message> - <location line="-1535"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="-1356"/> <source>Not connected</source> <translation>Keine Verbindung</translation> </message> <message> - <location line="+399"/> - <location filename="../src/qt3support/network/q3ftp.cpp" line="+332"/> <source>Connection refused for data connection</source> <translation>Verbindung für die Daten Verbindung verweigert</translation> </message> @@ -3768,12 +3008,10 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QHostInfo</name> <message> - <location filename="../src/network/kernel/qhostinfo_p.h" line="+103"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location filename="../src/network/kernel/qhostinfo.cpp" line="+171"/> <source>No host name given</source> <translation>Es wurde kein Hostname angegeben</translation> </message> @@ -3781,37 +3019,22 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QHostInfoAgent</name> <message> - <location filename="../src/network/kernel/qhostinfo_unix.cpp" line="+260"/> - <location line="+32"/> - <location filename="../src/network/kernel/qhostinfo_win.cpp" line="+215"/> - <location line="+27"/> <source>Host not found</source> <translation>Rechner konnte nicht gefunden werden</translation> </message> <message> - <location line="-45"/> - <location line="+39"/> - <location filename="../src/network/kernel/qhostinfo_win.cpp" line="-34"/> - <location line="+29"/> <source>Unknown address type</source> <translation>Unbekannter Adresstyp</translation> </message> <message> - <location line="+10"/> - <location filename="../src/network/kernel/qhostinfo_win.cpp" line="-19"/> - <location line="+27"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location line="-98"/> - <location filename="../src/network/kernel/qhostinfo_win.cpp" line="-67"/> <source>No host name given</source> <translation>Es wurde kein Hostname angegeben</translation> </message> <message> - <location line="+1"/> - <location filename="../src/network/kernel/qhostinfo_win.cpp" line="+0"/> <source>Invalid hostname</source> <translation>Ungültiger Rechnername</translation> </message> @@ -3819,153 +3042,110 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QHttp</name> <message> - <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="-6"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+1835"/> <source>Connection refused</source> <translation>Verbindung verweigert</translation> </message> <message> - <location filename="../src/network/access/qhttp.cpp" line="+2639"/> - <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="-4"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+3"/> <source>Host %1 not found</source> <translation>Rechner %1 konnte nicht gefunden werden</translation> </message> <message> - <location line="-62"/> - <location filename="../src/qt3support/network/q3http.cpp" line="-45"/> <source>Wrong content length</source> <translation>Ungültige Längenangabe</translation> </message> <message> - <location line="+82"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+48"/> <source>HTTP request failed</source> <translation>HTTP-Anfrage fehlgeschlagen</translation> </message> <message> - <location filename="../src/qt3support/network/q3http.cpp" line="+450"/> <source>Host %1 found</source> <translation>Rechner %1 gefunden</translation> </message> <message> - <location line="+14"/> <source>Host found</source> <translation>Rechner gefunden</translation> </message> <message> - <location line="-11"/> <source>Connected to host %1</source> <translation>Verbunden mit Rechner %1</translation> </message> <message> - <location line="+14"/> <source>Connected to host</source> <translation>Verbindung mit Rechner besteht</translation> </message> <message> - <location line="-11"/> <source>Connection to %1 closed</source> <translation>Verbindung mit %1 beendet</translation> </message> <message> - <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="+7"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+14"/> <source>Connection closed</source> <translation>Verbindung beendet</translation> </message> <message> - <location filename="../src/network/access/qhttp.cpp" line="-1077"/> - <location line="+820"/> - <location filename="../src/qt3support/network/q3http.cpp" line="-1152"/> - <location line="+567"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location line="-568"/> - <location filename="../src/qt3support/network/q3http.cpp" line="-370"/> <source>Request aborted</source> <translation>Anfrage wurde abgebrochen</translation> </message> <message> - <location line="+579"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+381"/> <source>No server set to connect to</source> <translation>Für die Verbindung wurde kein Server-Rechner angegeben</translation> </message> <message> - <location line="+168"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+60"/> <source>Server closed connection unexpectedly</source> <translation>Der Server hat die Verbindung unerwartet geschlossen</translation> </message> <message> - <location line="+172"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+113"/> <source>Invalid HTTP response header</source> <translation>Der Kopfteil der HTTP-Antwort ist ungültig</translation> </message> <message> - <location line="+28"/> <source>Unknown authentication method</source> <translation>Unbekannte Authentifizierungsmethode</translation> </message> <message> - <location line="+97"/> - <location line="+48"/> - <location filename="../src/qt3support/network/q3http.cpp" line="+40"/> - <location line="+47"/> <source>Invalid HTTP chunked body</source> <translation>Der Inhalt (chunked body) der HTTP-Antwort ist ungültig</translation> </message> <message> - <location line="+38"/> <source>Error writing response to device</source> <translation>Beim Schreiben der Antwort auf das Ausgabegerät ist ein Fehler aufgetreten</translation> </message> <message> - <location line="-173"/> <source>Proxy authentication required</source> <translation>Proxy-Authentifizierung erforderlich</translation> </message> <message> - <location line="+4"/> <source>Authentication required</source> <translation>Authentifizierung erforderlich</translation> </message> <message> - <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="+6"/> <source>Proxy requires authentication</source> <translation>Der Proxy-Server verlangt eine Authentifizierung</translation> </message> <message> - <location line="+3"/> <source>Host requires authentication</source> <translation>Der Hostrechner verlangt eine Authentifizierung</translation> </message> <message> - <location line="+3"/> <source>Data corrupted</source> <translation>Die Daten sind verfälscht</translation> </message> <message> - <location line="+6"/> <source>SSL handshake failed</source> <translation>Im Ablauf des SSL-Protokolls ist ein Fehler aufgetreten.</translation> </message> <message> - <location line="-3"/> <source>Unknown protocol specified</source> <translation>Es wurde ein unbekanntes Protokoll angegeben</translation> </message> <message> - <location filename="../src/network/access/qhttp.cpp" line="-159"/> <source>Connection refused (or timed out)</source> <translation>Verbindung verweigert oder Zeitlimit überschritten</translation> </message> <message> - <location line="-2266"/> <source>HTTPS connection requested but SSL support not compiled in</source> <translation>Die angeforderte HTTPS-Verbindung kann nicht aufgebaut werden, da keine SSL-Unterstützung vorhanden ist</translation> </message> @@ -3973,47 +3153,38 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QHttpSocketEngine</name> <message> - <location filename="../src/network/socket/qhttpsocketengine.cpp" line="-89"/> <source>Did not receive HTTP response from proxy</source> <translation>Keine HTTP-Antwort vom Proxy-Server</translation> </message> <message> - <location line="+25"/> <source>Error parsing authentication request from proxy</source> <translation>Fehler beim Auswerten der Authentifizierungsanforderung des Proxy-Servers</translation> </message> <message> - <location line="+31"/> <source>Authentication required</source> <translation>Authentifizierung erforderlich</translation> </message> <message> - <location line="+27"/> <source>Proxy denied connection</source> <translation>Der Proxy-Server hat den Aufbau einer Verbindung verweigert</translation> </message> <message> - <location line="+10"/> <source>Error communicating with HTTP proxy</source> <translation>Fehler bei der Kommunikation mit dem Proxy-Server</translation> </message> <message> - <location line="+23"/> <source>Proxy server not found</source> <translation>Es konnte kein Proxy-Server gefunden werden</translation> </message> <message> - <location line="+2"/> <source>Proxy connection refused</source> <translation>Der Proxy-Server hat den Aufbau einer Verbindung verweigert</translation> </message> <message> - <location line="+2"/> <source>Proxy server connection timed out</source> <translation>Bei der Verbindung mit dem Proxy-Server wurde ein Zeitlimit überschritten</translation> </message> <message> - <location line="+2"/> <source>Proxy connection closed prematurely</source> <translation>Der Proxy-Server hat die Verbindung vorzeitig beendet</translation> </message> @@ -4021,22 +3192,18 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QIBaseDriver</name> <message> - <location filename="../src/sql/drivers/ibase/qsql_ibase.cpp" line="+1491"/> <source>Error opening database</source> <translation>Die Datenbankverbindung konnte nicht geöffnet werden</translation> </message> <message> - <location line="+54"/> <source>Could not start transaction</source> <translation>Es konnte keine Transaktion gestartet werden</translation> </message> <message> - <location line="+13"/> <source>Unable to commit transaction</source> <translation>Die Transaktion konnte nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+13"/> <source>Unable to rollback transaction</source> <translation>Die Transaktion konnte nicht rückgängig gemacht werden (Operation 'rollback' fehlgeschlagen)</translation> </message> @@ -4044,89 +3211,70 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QIBaseResult</name> <message> - <location line="-1149"/> <source>Unable to create BLOB</source> <translation>Es konnte kein BLOB erzeugt werden</translation> </message> <message> - <location line="+6"/> <source>Unable to write BLOB</source> <translation>Der BLOB konnte nicht geschrieben werden</translation> </message> <message> - <location line="+14"/> <source>Unable to open BLOB</source> <translation>Der BLOB konnte nicht geöffnet werden</translation> </message> <message> - <location line="+16"/> <source>Unable to read BLOB</source> <translation>Der BLOB konnte nicht gelesen werden</translation> </message> <message> - <location line="+125"/> - <location line="+187"/> <source>Could not find array</source> <translation>Das Feld konnte nicht gefunden werden</translation> </message> <message> - <location line="-155"/> <source>Could not get array data</source> <translation>Die Daten des Feldes konnten nicht gelesen werden</translation> </message> <message> - <location line="+210"/> <source>Could not get query info</source> <translation>Die erforderlichen Informationen zur Abfrage sind nicht verfügbar</translation> </message> <message> - <location line="+20"/> <source>Could not start transaction</source> <translation>Es konnte keine Transaktion gestartet werden</translation> </message> <message> - <location line="+19"/> <source>Unable to commit transaction</source> <translation>Die Transaktion konnte nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+42"/> <source>Could not allocate statement</source> <translation>Die Allokation des Befehls schlug fehl</translation> </message> <message> - <location line="+5"/> <source>Could not prepare statement</source> <translation>Der Befehl konnte nicht initialisiert werden</translation> </message> <message> - <location line="+5"/> - <location line="+11"/> <source>Could not describe input statement</source> <translation>Es konnte keine Beschreibung des Eingabebefehls erhalten werden</translation> </message> <message> - <location line="+14"/> <source>Could not describe statement</source> <translation>Es konnte keine Beschreibung des Befehls erhalten werden</translation> </message> <message> - <location line="+115"/> <source>Unable to close statement</source> <translation>Der Befehl konnte nicht geschlossen werden</translation> </message> <message> - <location line="+8"/> <source>Unable to execute query</source> <translation>Der Befehl konnte nicht ausgeführt werden</translation> </message> <message> - <location line="+46"/> <source>Could not fetch next item</source> <translation>Das nächste Element konnte nicht abgeholt werden</translation> </message> <message> - <location line="+197"/> <source>Could not get statement info</source> <translation>Es ist keine Information zum Befehl verfügbar</translation> </message> @@ -4134,27 +3282,22 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QIODevice</name> <message> - <location filename="../src/corelib/global/qglobal.cpp" line="+2120"/> <source>Permission denied</source> <translation>Zugriff verweigert</translation> </message> <message> - <location line="+3"/> <source>Too many open files</source> <translation>Zu viele Dateien geöffnet</translation> </message> <message> - <location line="+3"/> <source>No such file or directory</source> <translation>Die Datei oder das Verzeichnis konnte nicht gefunden werden</translation> </message> <message> - <location line="+3"/> <source>No space left on device</source> <translation>Kein freier Speicherplatz auf dem Gerät vorhanden</translation> </message> <message> - <location filename="../src/corelib/io/qiodevice.cpp" line="+1598"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> @@ -4162,32 +3305,26 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QInputContext</name> <message> - <location filename="../src/gui/inputmethod/qinputcontextfactory.cpp" line="+301"/> <source>XIM</source> <translation>XIM</translation> </message> <message> - <location line="+4"/> <source>FEP</source> <translation>FEP</translation> </message> <message> - <location line="+23"/> <source>XIM input method</source> <translation>XIM-Eingabemethode</translation> </message> <message> - <location line="+4"/> <source>Windows input method</source> <translation>Windows-Eingabemethode</translation> </message> <message> - <location line="+4"/> <source>Mac OS X input method</source> <translation>Mac OS X-Eingabemethode</translation> </message> <message> - <location line="+4"/> <source>S60 FEP input method</source> <translation>S60-FEP-Eingabemethode</translation> </message> @@ -4195,7 +3332,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QInputDialog</name> <message> - <location filename="../src/gui/dialogs/qinputdialog.cpp" line="+223"/> <source>Enter a value:</source> <translation>Geben Sie einen Wert ein:</translation> </message> @@ -4203,67 +3339,50 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QLibrary</name> <message> - <location filename="../src/corelib/plugin/qlibrary.cpp" line="+383"/> <source>Could not mmap '%1': %2</source> <translation>Operation mmap fehlgeschlagen für '%1': %2</translation> </message> <message> - <location line="+22"/> <source>Plugin verification data mismatch in '%1'</source> <translation>Die Prüfdaten des Plugins '%1' stimmen nicht überein</translation> </message> <message> - <location line="+6"/> <source>Could not unmap '%1': %2</source> <translation>Operation unmap fehlgeschlagen für '%1': %2</translation> </message> <message> - <location line="+375"/> <source>The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]</source> <translation>Das Plugin '%1' verwendet eine inkompatible Qt-Bibliothek. (%2.%3.%4) [%5]</translation> </message> <message> - <location line="+20"/> <source>The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"</source> <translation>Das Plugin '%1' verwendet eine inkompatible Qt-Bibliothek. Erforderlicher build-spezifischer Schlüssel "%2", erhalten "%3"</translation> </message> <message> - <location line="+365"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location line="-540"/> - <location line="+138"/> - <location filename="../src/corelib/plugin/qpluginloader.cpp" line="+343"/> <source>The shared library was not found.</source> <translation>Die dynamische Bibliothek konnte nicht gefunden werden.</translation> </message> <message> - <location line="+2"/> <source>The file '%1' is not a valid Qt plugin.</source> <translation>Die Datei '%1' ist kein gültiges Qt-Plugin.</translation> </message> <message> - <location line="+43"/> <source>The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)</source> <translation>Das Plugin '%1' verwendet eine inkompatible Qt-Bibliothek. (Im Debug- bzw. Release-Modus erstellte Bibliotheken können nicht zusammen verwendet werden.)</translation> </message> <message> - <location filename="../src/corelib/plugin/qlibrary_unix.cpp" line="+236"/> - <location filename="../src/corelib/plugin/qlibrary_win.cpp" line="+87"/> <source>Cannot load library %1: %2</source> <translation>Die Bibliothek %1 kann nicht geladen werden: %2</translation> </message> <message> - <location line="+17"/> - <location filename="../src/corelib/plugin/qlibrary_win.cpp" line="+22"/> <source>Cannot unload library %1: %2</source> <translation>Die Bibliothek %1 kann nicht entladen werden: %2</translation> </message> <message> - <location line="+34"/> - <location filename="../src/corelib/plugin/qlibrary_win.cpp" line="+15"/> <source>Cannot resolve symbol "%1" in %2: %3</source> <translation>Das Symbol "%1" kann in %2 nicht aufgelöst werden: %3</translation> </message> @@ -4271,37 +3390,30 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QLineEdit</name> <message> - <location filename="../src/gui/widgets/qlineedit.cpp" line="+2116"/> <source>Select All</source> <translation>Alles auswählen</translation> </message> <message> - <location line="-40"/> <source>&Undo</source> <translation>&Rückgängig</translation> </message> <message> - <location line="+4"/> <source>&Redo</source> <translation>Wieder&herstellen</translation> </message> <message> - <location line="+9"/> <source>Cu&t</source> <translation>&Ausschneiden</translation> </message> <message> - <location line="+6"/> <source>&Copy</source> <translation>&Kopieren</translation> </message> <message> - <location line="+6"/> <source>&Paste</source> <translation>Einf&ügen</translation> </message> <message> - <location line="+7"/> <source>Delete</source> <translation>Löschen</translation> </message> @@ -4309,23 +3421,18 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QLocalServer</name> <message> - <location filename="../src/network/socket/qlocalserver.cpp" line="+224"/> - <location filename="../src/network/socket/qlocalserver_unix.cpp" line="+246"/> <source>%1: Name error</source> <translation>%1: Fehlerhafter Name</translation> </message> <message> - <location filename="../src/network/socket/qlocalserver_unix.cpp" line="-8"/> <source>%1: Permission denied</source> <translation>%1: Zugriff verweigert</translation> </message> <message> - <location line="+12"/> <source>%1: Address in use</source> <translation>%1: Die Adresse wird bereits verwendet</translation> </message> <message> - <location line="+5"/> <source>%1: Unknown error %2</source> <translation>%1: Unbekannter Fehler %2</translation> </message> @@ -4333,70 +3440,46 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QLocalSocket</name> <message> - <location filename="../src/network/socket/qlocalsocket_tcp.cpp" line="+132"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+139"/> <source>%1: Connection refused</source> <translation>%1: Der Verbindungsaufbau wurde verweigert</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> <source>%1: Remote closed</source> <translation>%1: Die Verbindung wurde von der Gegenseite geschlossen</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> - <location filename="../src/network/socket/qlocalsocket_win.cpp" line="+79"/> - <location line="+59"/> <source>%1: Invalid name</source> <translation>%1: Ungültiger Name</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> <source>%1: Socket access error</source> <translation>%1: Fehler beim Zugriff auf den Socket</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> <source>%1: Socket resource error</source> <translation>%1: Socket-Fehler (Ressourcenproblem)</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> <source>%1: Socket operation timed out</source> <translation>%1: Zeitüberschreitung bei Socket-Operation</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> <source>%1: Datagram too large</source> <translation>%1: Das Datagramm ist zu groß</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> - <location filename="../src/network/socket/qlocalsocket_win.cpp" line="-64"/> <source>%1: Connection error</source> <translation>%1: Verbindungsfehler</translation> </message> <message> - <location line="+3"/> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/> <source>%1: The socket operation is not supported</source> <translation>%1: Diese Socket-Operation wird nicht unterstützt</translation> </message> <message> - <location line="+4"/> <source>%1: Unknown error</source> <translation>%1: Unbekannter Fehler</translation> </message> <message> - <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+4"/> - <location filename="../src/network/socket/qlocalsocket_win.cpp" line="+10"/> <source>%1: Unknown error %2</source> <translation>%1: Unbekannter Fehler %2</translation> </message> @@ -4404,27 +3487,22 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMYSQLDriver</name> <message> - <location filename="../src/sql/drivers/mysql/qsql_mysql.cpp" line="+1287"/> <source>Unable to open database '</source> <translation>Die Datenbankverbindung kann nicht geöffnet werden '</translation> </message> <message> - <location line="+11"/> <source>Unable to connect</source> <translation>Es kann keine Verbindung aufgebaut werden</translation> </message> <message> - <location line="+150"/> <source>Unable to begin transaction</source> <translation>Es kann keine Transaktion gestartet werden</translation> </message> <message> - <location line="+17"/> <source>Unable to commit transaction</source> <translation>Die Transaktion kann nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+17"/> <source>Unable to rollback transaction</source> <translation>Die Transaktion kann nicht rückgängig gemacht werden (Operation 'rollback' fehlgeschlagen)</translation> </message> @@ -4432,60 +3510,46 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMYSQLResult</name> <message> - <location line="-977"/> - <location line="+31"/> <source>Unable to fetch data</source> <translation>Es konnten keine Daten abgeholt werden</translation> </message> <message> - <location line="+161"/> <source>Unable to execute query</source> <translation>Die Abfrage konnte nicht ausgeführt werden</translation> </message> <message> - <location line="+6"/> <source>Unable to store result</source> <translation>Das Ergebnis konnte nicht gespeichert werden</translation> </message> <message> - <location line="+191"/> - <location line="+8"/> <source>Unable to prepare statement</source> <translation>Der Befehl konnte nicht initialisiert werden</translation> </message> <message> - <location line="+37"/> <source>Unable to reset statement</source> <translation>Der Befehl konnte nicht zurückgesetzt werden</translation> </message> <message> - <location line="+86"/> <source>Unable to bind value</source> <translation>Der Wert konnte nicht gebunden werden</translation> </message> <message> - <location line="+11"/> <source>Unable to execute statement</source> <translation>Der Befehl konnte nicht ausgeführt werden</translation> </message> <message> - <location line="+14"/> - <location line="+21"/> <source>Unable to bind outvalues</source> <translation>Die Ausgabewerte konnten nicht gebunden werden</translation> </message> <message> - <location line="-12"/> <source>Unable to store statement results</source> <translation>Die Ergebnisse des Befehls konnten nicht gespeichert werden</translation> </message> <message> - <location line="-253"/> <source>Unable to execute next query</source> <translation>Die folgende Abfrage kann nicht ausgeführt werden</translation> </message> <message> - <location line="+10"/> <source>Unable to store next result</source> <translation>Das folgende Ergebnis kann nicht gespeichert werden</translation> </message> @@ -4493,7 +3557,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMdiArea</name> <message> - <location filename="../src/gui/widgets/qmdiarea.cpp" line="+290"/> <source>(Untitled)</source> <translation>(Unbenannt)</translation> </message> @@ -4501,92 +3564,74 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMdiSubWindow</name> <message> - <location filename="../src/gui/widgets/qmdisubwindow.cpp" line="+280"/> <source>%1 - [%2]</source> <translation>%1 - [%2]</translation> </message> <message> - <location line="+72"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="-18"/> <source>Minimize</source> <translation>Minimieren</translation> </message> <message> - <location line="+13"/> <source>Restore Down</source> <translation>Wiederherstellen</translation> </message> <message> - <location line="+707"/> <source>&Restore</source> <translation>Wieder&herstellen</translation> </message> <message> - <location line="+3"/> <source>&Move</source> <translation>Ver&schieben</translation> </message> <message> - <location line="+1"/> <source>&Size</source> <translation>Größe ä&ndern</translation> </message> <message> - <location line="+1"/> <source>Mi&nimize</source> <translation>M&inimieren</translation> </message> <message> - <location line="+2"/> <source>Ma&ximize</source> <translation>Ma&ximieren</translation> </message> <message> - <location line="+2"/> <source>Stay on &Top</source> <translation>Im &Vordergrund bleiben</translation> </message> <message> - <location line="+3"/> <source>&Close</source> <translation>Schl&ießen</translation> </message> <message> - <location line="-729"/> <source>Maximize</source> <translation>Maximieren</translation> </message> <message> - <location line="+3"/> <source>Unshade</source> <translation>Herabrollen</translation> </message> <message> - <location line="+3"/> <source>Shade</source> <translation>Aufrollen</translation> </message> <message> - <location line="+6"/> <source>Restore</source> <translation>Wiederherstellen</translation> </message> <message> - <location line="+6"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location line="+3"/> <source>Menu</source> <translation>Menü</translation> </message> <message> - <location line="-79"/> <source>- [%1]</source> <translation>- [%1]</translation> </message> @@ -4594,21 +3639,14 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMenu</name> <message> - <location filename="../src/plugins/accessible/widgets/qaccessiblemenu.cpp" line="+157"/> - <location line="+225"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="-224"/> - <location line="+225"/> <source>Open</source> <translation>Öffnen</translation> </message> <message> - <location line="-223"/> - <location line="+225"/> - <location line="+51"/> <source>Execute</source> <translation>Ausführen</translation> </message> @@ -4616,7 +3654,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMenuBar</name> <message> - <location filename="../src/gui/widgets/qmenu_symbian.cpp" line="+456"/> <source>Actions</source> <translation>Optionen</translation> </message> @@ -4624,40 +3661,30 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMessageBox</name> <message> - <location filename="../src/gui/dialogs/qmessagebox.cpp" line="-1964"/> - <location line="+847"/> - <location filename="../src/gui/dialogs/qmessagebox.h" line="-52"/> - <location line="+8"/> <source>OK</source> <translation>OK</translation> </message> <message> - <location line="+477"/> <source><h3>About Qt</h3><p>This program uses Qt version %1.</p></source> <translation type="unfinished"></translation> </message> <message> - <location line="+5"/> <source><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p></source> <translation type="unfinished"></translation> </message> <message> - <location line="+31"/> <source>About Qt</source> <translation>Über Qt</translation> </message> <message> - <location line="-512"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location line="-1129"/> <source>Show Details...</source> <translation>Details einblenden...</translation> </message> <message> - <location line="+0"/> <source>Hide Details...</source> <translation>Details ausblenden...</translation> </message> @@ -4665,7 +3692,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMultiInputContext</name> <message> - <location filename="../src/plugins/inputmethods/imsw-multi/qmultiinputcontext.cpp" line="+88"/> <source>Select IM</source> <translation>Eingabemethode auswählen</translation> </message> @@ -4673,12 +3699,10 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QMultiInputContextPlugin</name> <message> - <location filename="../src/plugins/inputmethods/imsw-multi/qmultiinputcontextplugin.cpp" line="+95"/> <source>Multiple input method switcher</source> <translation>Umschalter für Eingabemethoden</translation> </message> <message> - <location line="+7"/> <source>Multiple input method switcher that uses the context menu of the text widgets</source> <translation>Mehrfachumschalter für Eingabemethoden, der das Kontextmenü des Text-Widgets verwendet</translation> </message> @@ -4686,132 +3710,106 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNativeSocketEngine</name> <message> - <location filename="../src/network/socket/qnativesocketengine.cpp" line="+209"/> <source>The remote host closed the connection</source> <translation>Der entfernte Rechner hat die Verbindung geschlossen</translation> </message> <message> - <location line="+3"/> <source>Network operation timed out</source> <translation>Das Zeitlimit für die Operation wurde überschritten</translation> </message> <message> - <location line="+3"/> <source>Out of resources</source> <translation>Keine Ressourcen verfügbar</translation> </message> <message> - <location line="+3"/> <source>Unsupported socket operation</source> <translation> Socket-Kommando nicht unterstützt</translation> </message> <message> - <location line="+3"/> <source>Protocol type not supported</source> <translation>Das Protokoll wird nicht unterstützt</translation> </message> <message> - <location line="+3"/> <source>Invalid socket descriptor</source> <translation>Ungültiger Socket-Deskriptor</translation> </message> <message> - <location line="+6"/> <source>Network unreachable</source> <translation>Das Netzwerk ist nicht erreichbar</translation> </message> <message> - <location line="+3"/> <source>Permission denied</source> <translation>Zugriff verweigert</translation> </message> <message> - <location line="+3"/> <source>Connection timed out</source> <translation>Das Zeitlimit für die Verbindung wurde überschritten</translation> </message> <message> - <location line="+3"/> <source>Connection refused</source> <translation>Verbindung verweigert</translation> </message> <message> - <location line="+3"/> <source>The bound address is already in use</source> <translation>Die angegebene Adresse ist bereits in Gebrauch</translation> </message> <message> - <location line="+3"/> <source>The address is not available</source> <translation>Die Adresse ist nicht verfügbar</translation> </message> <message> - <location line="+3"/> <source>The address is protected</source> <translation>Die Adresse ist geschützt</translation> </message> <message> - <location line="+6"/> <source>Unable to send a message</source> <translation>Die Nachricht konnte nicht gesendet werden</translation> </message> <message> - <location line="+3"/> <source>Unable to receive a message</source> <translation>Die Nachricht konnte nicht empfangen werden</translation> </message> <message> - <location line="+3"/> <source>Unable to write</source> <translation>Der Schreibvorgang konnte nicht ausgeführt werden</translation> </message> <message> - <location line="+3"/> <source>Network error</source> <translation>Netzwerkfehler</translation> </message> <message> - <location line="+3"/> <source>Another socket is already listening on the same port</source> <translation>Auf diesem Port hört bereits ein anderer Socket</translation> </message> <message> - <location line="-66"/> <source>Unable to initialize non-blocking socket</source> <translation>Der nichtblockierende Socket konnte nicht initialisiert werden</translation> </message> <message> - <location line="+3"/> <source>Unable to initialize broadcast socket</source> <translation>Der Broadcast-Socket konnte nicht initialisiert werden</translation> </message> <message> - <location line="+3"/> <source>Attempt to use IPv6 socket on a platform with no IPv6 support</source> <translation>Es wurde versucht, einen IPv6-Socket auf einem System ohne IPv6-Unterstützung zu verwenden</translation> </message> <message> - <location line="+21"/> <source>Host unreachable</source> <translation>Der Zielrechner kann nicht erreicht werden</translation> </message> <message> - <location line="+24"/> <source>Datagram was too large to send</source> <translation>Das Datagram konnte nicht gesendet werden, weil es zu groß ist</translation> </message> <message> - <location line="+18"/> <source>Operation on non-socket</source> <translation>Operation kann nur auf einen Socket angewandt werden</translation> </message> <message> - <location line="+6"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location line="-3"/> <source>The proxy type is invalid for this operation</source> <translation>Die Operation kann mit dem Proxy-Typ nicht durchgeführt werden</translation> </message> @@ -4819,7 +3817,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkAccessCacheBackend</name> <message> - <location filename="../src/network/access/qnetworkaccesscachebackend.cpp" line="+66"/> <source>Error opening %1</source> <translation>%1 konnte nicht geöffnet werden</translation> </message> @@ -4827,12 +3824,10 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkAccessDataBackend</name> <message> - <location filename="../src/network/access/qnetworkaccessdatabackend.cpp" line="+76"/> <source>Operation not supported on %1</source> <translation>Diese Operation wird von %1 nicht unterstützt</translation> </message> <message> - <location line="+25"/> <source>Invalid URI: %1</source> <translation>Ungültiger URI: %1</translation> </message> @@ -4840,17 +3835,14 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkAccessDebugPipeBackend</name> <message> - <location filename="../src/network/access/qnetworkaccessdebugpipebackend.cpp" line="+195"/> <source>Write error writing to %1: %2</source> <translation>Fehler beim Schreiben zu %1: %2</translation> </message> <message> - <location line="+60"/> <source>Socket error on %1: %2</source> <translation>Socket-Fehler bei %1: %2</translation> </message> <message> - <location line="+15"/> <source>Remote host closed the connection prematurely on %1</source> <translation>Der entfernte Rechner hat die Verbindung zu %1 vorzeitig beendet</translation> </message> @@ -4858,30 +3850,22 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkAccessFileBackend</name> <message> - <location filename="../src/network/access/qfilenetworkreply.cpp" line="+85"/> - <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+100"/> <source>Request for opening non-local file %1</source> <translation>Anforderung zum Öffnen einer Datei über Netzwerk %1</translation> </message> <message> - <location line="+33"/> - <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+45"/> <source>Error opening %1: %2</source> <translation>%1 konnte nicht geöffnet werden: %2</translation> </message> <message> - <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+38"/> <source>Write error writing to %1: %2</source> <translation>Fehler beim Schreiben zur Datei %1: %2</translation> </message> <message> - <location filename="../src/network/access/qfilenetworkreply.cpp" line="-13"/> - <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+48"/> <source>Cannot open %1: Path is a directory</source> <translation>%1 kann nicht geöffnet werden: Der Pfad spezifiziert ein Verzeichnis</translation> </message> <message> - <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+21"/> <source>Read error reading from %1: %2</source> <translation>Beim Lesen von der Datei %1 trat ein Fehler auf: %2</translation> </message> @@ -4889,27 +3873,22 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkAccessFtpBackend</name> <message> - <location filename="../src/network/access/qnetworkaccessftpbackend.cpp" line="+131"/> <source>No suitable proxy found</source> <translation>Es konnte kein geeigneter Proxy-Server gefunden werden</translation> </message> <message> - <location line="+14"/> <source>Cannot open %1: is a directory</source> <translation>%1 kann nicht geöffnet werden: Es handelt sich um ein Verzeichnis</translation> </message> <message> - <location line="+112"/> <source>Logging in to %1 failed: authentication required</source> <translation>Die Anmeldung bei %1 schlug fehl: Es ist eine Authentifizierung erforderlich</translation> </message> <message> - <location line="+39"/> <source>Error while downloading %1: %2</source> <translation>Beim Herunterladen von %1 trat ein Fehler auf: %2</translation> </message> <message> - <location line="+2"/> <source>Error while uploading %1: %2</source> <translation>Beim Hochladen von %1 trat ein Fehler auf: %2</translation> </message> @@ -4917,7 +3896,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkAccessHttpBackend</name> <message> - <location filename="../src/network/access/qnetworkaccesshttpbackend.cpp" line="+652"/> <source>No suitable proxy found</source> <translation>Es konnte kein geeigneter Proxy-Server gefunden werden</translation> </message> @@ -4925,7 +3903,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkAccessManager</name> <message> - <location filename="../src/network/access/qnetworkreplyimpl.cpp" line="+942"/> <source>Network access is disabled.</source> <translation>Der Zugriff auf das Netzwerk ist nicht gestattet.</translation> </message> @@ -4933,22 +3910,18 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkReply</name> <message> - <location filename="../src/network/access/qnetworkaccesshttpbackend.cpp" line="+100"/> <source>Error downloading %1 - server replied: %2</source> <translation>Beim Herunterladen von %1 trat ein Fehler auf - Die Antwort des Servers ist: %2</translation> </message> <message> - <location filename="../src/network/access/qnetworkreplyimpl.cpp" line="-860"/> <source>Protocol "%1" is unknown</source> <translation>Das Protokoll "%1" ist unbekannt</translation> </message> <message> - <location line="+192"/> <source>Network session error.</source> <translation>Fehler bei Netzwerkverbindung.</translation> </message> <message> - <location line="+352"/> <source>Temporary network failure.</source> <translation>Das Netzwerk ist zur Zeit ausgefallen.</translation> </message> @@ -4956,8 +3929,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkReplyImpl</name> <message> - <location line="+120"/> - <location line="+28"/> <source>Operation canceled</source> <translation>Operation abgebrochen</translation> </message> @@ -4965,7 +3936,6 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkSession</name> <message> - <location filename="../src/network/bearer/qnetworksession.cpp" line="+449"/> <source>Invalid configuration.</source> <translation>Ungültige Konfiguration.</translation> </message> @@ -4973,47 +3943,34 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QNetworkSessionPrivateImpl</name> <message> - <location filename="../src/plugins/bearer/qnetworksession_impl.cpp" line="+272"/> - <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+271"/> <source>Unknown session error.</source> <translation>Unbekannter Fehler bei Netzwerkverbindung.</translation> </message> <message> - <location line="+2"/> - <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/> <source>The session was aborted by the user or system.</source> <translation>Die Verbindung wurde vom Nutzer oder vom Betriebssystem unterbrochen.</translation> </message> <message> - <location line="+2"/> - <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/> <source>The requested operation is not supported by the system.</source> <translation>Die angeforderte Operation wird vom System nicht unterstützt.</translation> </message> <message> - <location line="+2"/> - <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/> <source>The specified configuration cannot be used.</source> <translation>Die angegebene Konfiguration kann nicht verwendet werden.</translation> </message> <message> - <location line="+2"/> - <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/> <source>Roaming was aborted or is not possible.</source> <translation>Das Roaming wurde abgebrochen oder ist hier nicht möglich.</translation> </message> <message> - <location filename="../src/plugins/bearer/icd/qnetworksession_impl.cpp" line="+1005"/> <source>Roaming error</source> <translation>Fehler beim Roaming</translation> </message> <message> - <location line="+3"/> <source>Session aborted by user or system</source> <translation>Die Verbindung wurde vom Nutzer oder vom Betriebssystem unterbrochen</translation> </message> <message> - <location line="+4"/> <source>Unidentified Error</source> <translation>Unbekannter Fehler</translation> </message> @@ -5021,28 +3978,23 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QOCIDriver</name> <message> - <location filename="../src/sql/drivers/oci/qsql_oci.cpp" line="+2088"/> <source>Unable to logon</source> <translation>Logon-Vorgang fehlgeschlagen</translation> </message> <message> - <location line="-144"/> <source>Unable to initialize</source> <comment>QOCIDriver</comment> <translation>Initialisierung fehlgeschlagen</translation> </message> <message> - <location line="+215"/> <source>Unable to begin transaction</source> <translation>Es konnte keine Transaktion gestartet werden</translation> </message> <message> - <location line="+19"/> <source>Unable to commit transaction</source> <translation>Die Transaktion konnte nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+19"/> <source>Unable to rollback transaction</source> <translation>Die Transaktion konnte nicht rückgängig gemacht werden (Operation 'rollback' fehlgeschlagen)</translation> </message> @@ -5050,44 +4002,34 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QOCIResult</name> <message> - <location line="-979"/> - <location line="+168"/> - <location line="+15"/> <source>Unable to bind column for batch execute</source> <translation>Die Spalte konnte nicht für den Stapelverarbeitungs-Befehl gebunden werden</translation> </message> <message> - <location line="+15"/> <source>Unable to execute batch statement</source> <translation>Der Stapelverarbeitungs-Befehl konnte nicht ausgeführt werden</translation> </message> <message> - <location line="+304"/> <source>Unable to goto next</source> <translation>Kann nicht zum nächsten Element gehen</translation> </message> <message> - <location line="+59"/> <source>Unable to alloc statement</source> <translation>Die Allokation des Befehls schlug fehl</translation> </message> <message> - <location line="+15"/> <source>Unable to prepare statement</source> <translation>Der Befehl konnte nicht initialisiert werden</translation> </message> <message> - <location line="+26"/> <source>Unable to get statement type</source> <translation>Der Anweisungstyp kann nicht bestimmt werden</translation> </message> <message> - <location line="+20"/> <source>Unable to bind value</source> <translation>Der Wert konnte nicht gebunden werden</translation> </message> <message> - <location line="+19"/> <source>Unable to execute statement</source> <translation>Der Befehl konnte nicht ausgeführt werden</translation> </message> @@ -5095,32 +4037,26 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QODBCDriver</name> <message> - <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="+1888"/> <source>Unable to connect</source> <translation>Es kann keine Verbindung aufgebaut werden</translation> </message> <message> - <location line="+269"/> <source>Unable to disable autocommit</source> <translation>'autocommit' konnte nicht deaktiviert werden</translation> </message> <message> - <location line="+17"/> <source>Unable to commit transaction</source> <translation>Die Transaktion konnte nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+17"/> <source>Unable to rollback transaction</source> <translation>Die Transaktion konnte nicht rückgängig gemacht werden (Operation 'rollback' fehlgeschlagen)</translation> </message> <message> - <location line="+15"/> <source>Unable to enable autocommit</source> <translation>'autocommit' konnte nicht aktiviert werden</translation> </message> <message> - <location line="-312"/> <source>Unable to connect - Driver doesn't support all functionality required</source> <translation>Es kann keine Verbindung aufgebaut werden weil der Treiber die benötigte Funktionalität nicht vollständig unterstützt</translation> </message> @@ -5128,51 +4064,38 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QODBCResult</name> <message> - <location line="-941"/> - <location line="+351"/> <source>QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration</source> <translation>QODBCResult::reset: 'SQL_CURSOR_STATIC' konnte nicht als Attribut des Befehls gesetzt werden. Bitte prüfen Sie die Konfiguration Ihres ODBC-Treibers</translation> </message> <message> - <location line="-334"/> - <location line="+627"/> <source>Unable to execute statement</source> <translation>Der Befehl konnte nicht ausgeführt werden</translation> </message> <message> - <location line="-546"/> <source>Unable to fetch next</source> <translation>Der nächste Datensatz konnte nicht abgeholt werden</translation> </message> <message> - <location line="+271"/> <source>Unable to prepare statement</source> <translation>Der Befehl konnte nicht initialisiert werden</translation> </message> <message> - <location line="+267"/> <source>Unable to bind variable</source> <translation>Die Variable konnte nicht gebunden werden</translation> </message> <message> - <location filename="../src/sql/drivers/db2/qsql_db2.cpp" line="+189"/> - <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="-466"/> - <location line="+578"/> <source>Unable to fetch last</source> <translation>Der letzte Datensatz konnte nicht abgeholt werden</translation> </message> <message> - <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="-672"/> <source>Unable to fetch</source> <translation>Es konnten keine Daten abgeholt werden</translation> </message> <message> - <location line="+44"/> <source>Unable to fetch first</source> <translation>Der erste Datensatz konnte nicht abgeholt werden</translation> </message> <message> - <location line="+19"/> <source>Unable to fetch previous</source> <translation>Der vorangegangene Datensatz kann nicht abgeholt werden</translation> </message> @@ -5180,19 +4103,14 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QObject</name> <message> - <location filename="../src/declarative/util/qdeclarativexmllistmodel.cpp" line="-241"/> <source>"%1" duplicates a previous role name and will be disabled.</source> <translation>"%1" ist bereits als Name einer Rolle vergeben und wird daher deaktiviert.</translation> </message> <message> - <location line="+515"/> - <location line="+4"/> <source>invalid query: "%1"</source> <translation>Ungültige Abfrage: "%1"</translation> </message> <message> - <location filename="../src/3rdparty/phonon/phonon/pulsesupport.cpp" line="+162"/> - <location line="+11"/> <source>PulseAudio Sound Server</source> <translation>PulseAudio Sound Server</translation> </message> @@ -5200,12 +4118,10 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QPPDOptionsModel</name> <message> - <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="+1238"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+2"/> <source>Value</source> <translation>Wert</translation> </message> @@ -5213,32 +4129,26 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QPSQLDriver</name> <message> - <location filename="../src/sql/drivers/psql/qsql_psql.cpp" line="+782"/> <source>Unable to connect</source> <translation>Es kann keine Verbindung aufgebaut werden</translation> </message> <message> - <location line="+49"/> <source>Could not begin transaction</source> <translation>Es konnte keine Transaktion gestartet werden</translation> </message> <message> - <location line="+30"/> <source>Could not commit transaction</source> <translation>Die Transaktion konnte nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+16"/> <source>Could not rollback transaction</source> <translation>Die Transaktion konnte nicht rückgängig gemacht werden (Operation 'rollback' fehlgeschlagen)</translation> </message> <message> - <location line="+374"/> <source>Unable to subscribe</source> <translation>Die Registrierung schlug fehl</translation> </message> <message> - <location line="+32"/> <source>Unable to unsubscribe</source> <translation>Die Registrierung konnte nicht aufgehoben werden</translation> </message> @@ -5246,12 +4156,10 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QPSQLResult</name> <message> - <location line="-1085"/> <source>Unable to create query</source> <translation>Es konnte keine Abfrage erzeugt werden</translation> </message> <message> - <location line="+372"/> <source>Unable to prepare statement</source> <translation>Der Befehl konnte nicht initialisiert werden</translation> </message> @@ -5259,102 +4167,82 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QPageSetupWidget</name> <message> - <location filename="../src/gui/dialogs/qpagesetupdialog_unix.cpp" line="+304"/> <source>Centimeters (cm)</source> <translation>Zentimeter (cm)</translation> </message> <message> - <location line="+0"/> <source>Millimeters (mm)</source> <translation>Millimeter (mm)</translation> </message> <message> - <location line="+0"/> <source>Inches (in)</source> <translation>Zoll (in)</translation> </message> <message> - <location line="+0"/> <source>Points (pt)</source> <translation>Punkte (pt)</translation> </message> <message> - <location filename="../src/gui/dialogs/qpagesetupwidget.ui"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location/> <source>Paper</source> <translation>Papier</translation> </message> <message> - <location/> <source>Page size:</source> <translation>Seitengröße:</translation> </message> <message> - <location/> <source>Width:</source> <translation>Breite:</translation> </message> <message> - <location/> <source>Height:</source> <translation>Höhe:</translation> </message> <message> - <location/> <source>Paper source:</source> <translation>Papierquelle:</translation> </message> <message> - <location/> <source>Orientation</source> <translation>Ausrichtung</translation> </message> <message> - <location/> <source>Portrait</source> <translation>Hochformat</translation> </message> <message> - <location/> <source>Landscape</source> <translation>Querformat</translation> </message> <message> - <location/> <source>Reverse landscape</source> <translation>Umgekehrtes Querformat</translation> </message> <message> - <location/> <source>Reverse portrait</source> <translation>Umgekehrtes Hochformat</translation> </message> <message> - <location/> <source>Margins</source> <translation>Ränder</translation> </message> <message> - <location/> <source>top margin</source> <translation>Oberer Rand</translation> </message> <message> - <location/> <source>left margin</source> <translation>Linker Rand</translation> </message> <message> - <location/> <source>right margin</source> <translation>Rechter Rand</translation> </message> <message> - <location/> <source>bottom margin</source> <translation>Unterer Rand</translation> </message> @@ -5362,12 +4250,10 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QPluginLoader</name> <message> - <location filename="../src/corelib/plugin/qpluginloader.cpp" line="+24"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> <message> - <location line="-113"/> <source>The plugin was not loaded.</source> <translation>Das Plugin wurde nicht geladen.</translation> </message> @@ -5375,433 +4261,344 @@ Möchten Sie die Datei trotzdem löschen?</translation> <context> <name>QPrintDialog</name> <message> - <location filename="../src/gui/painting/qprinterinfo_unix.cpp" line="+110"/> <source>locally connected</source> <translation>direkt verbunden</translation> </message> <message> - <location line="+23"/> - <location line="+225"/> <source>Aliases: %1</source> <translation>Alias: %1</translation> </message> <message> - <location line="+225"/> - <location line="+199"/> <source>unknown</source> <translation>unbekannt</translation> </message> <message> - <location filename="../src/gui/dialogs/qprintdialog_win.cpp" line="+272"/> <source>OK</source> <translation>OK</translation> </message> <message> - <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="+379"/> <source>Print all</source> <translation>Alles drucken</translation> </message> <message> - <location line="+2"/> <source>Print range</source> <translation>Bereich drucken</translation> </message> <message> - <location line="-48"/> <source>A0 (841 x 1189 mm)</source> <translation>A0 (841 x 1189 mm)</translation> </message> <message> - <location line="+1"/> <source>A1 (594 x 841 mm)</source> <translation>A1 (594 x 841 mm)</translation> </message> <message> - <location line="+1"/> <source>A2 (420 x 594 mm)</source> <translation>A2 (420 x 594 mm)</translation> </message> <message> - <location line="+1"/> <source>A3 (297 x 420 mm)</source> <translation>A3 (297 x 420 mm)</translation> </message> <message> - <location line="+2"/> <source>A5 (148 x 210 mm)</source> <translation>A5 (148 x 210 mm)</translation> </message> <message> - <location line="+1"/> <source>A6 (105 x 148 mm)</source> <translation>A6 (105 x 148 mm)</translation> </message> <message> - <location line="+1"/> <source>A7 (74 x 105 mm)</source> <translation>A7 (74 x 105 mm)</translation> </message> <message> - <location line="+1"/> <source>A8 (52 x 74 mm)</source> <translation>A8 (52 x 74 mm)</translation> </message> <message> - <location line="+1"/> <source>A9 (37 x 52 mm)</source> <translation>A9 (37 x 52 mm)</translation> </message> <message> - <location line="+1"/> <source>B0 (1000 x 1414 mm)</source> <translation>B0 (1000 x 1414 mm)</translation> </message> <message> - <location line="+1"/> <source>B1 (707 x 1000 mm)</source> <translation>B1 (707 x 1000 mm)</translation> </message> <message> - <location line="+1"/> <source>B2 (500 x 707 mm)</source> <translation>B2 (500 x 707 mm)</translation> </message> <message> - <location line="+1"/> <source>B3 (353 x 500 mm)</source> <translation>B3 (353 x 500 mm)</translation> </message> <message> - <location line="+1"/> <source>B4 (250 x 353 mm)</source> <translation>B4 (250 x 353 mm)</translation> </message> <message> - <location line="+2"/> <source>B6 (125 x 176 mm)</source> <translation>B6 (125 x 176 mm)</translation> </message> <message> - <location line="+1"/> <source>B7 (88 x 125 mm)</source> <translation>B7 (88 x 125 mm)</translation> </message> <message> - <location line="+1"/> <source>B8 (62 x 88 mm)</source> <translation>B8 (62 x 88 mm)</translation> </message> <message> - <location line="+1"/> <source>B9 (44 x 62 mm)</source> <translation>B9 (44 x 62 mm)</translation> </message> <message> - <location line="+1"/> <source>B10 (31 x 44 mm)</source> <translation>B10 (31 x 44 mm)</translation> </message> <message> - <location line="+1"/> <source>C5E (163 x 229 mm)</source> <translation>C5E (163 x 229 mm)</translation> </message> <message> - <location line="+1"/> <source>DLE (110 x 220 mm)</source> <translation>DLE (110 x 220 mm)</translation> </message> <message> - <location line="+2"/> <source>Folio (210 x 330 mm)</source> <translation>Folio (210 x 330 mm)</translation> </message> <message> - <location line="+1"/> <source>Ledger (432 x 279 mm)</source> <translation>Ledger (432 x 279 mm)</translation> </message> <message> - <location line="+3"/> <source>Tabloid (279 x 432 mm)</source> <translation>Tabloid (279 x 432 mm)</translation> </message> <message> - <location line="+1"/> <source>US Common #10 Envelope (105 x 241 mm)</source> <translation>US Common #10 Envelope (105 x 241 mm)</translation> </message> <message> - <location line="+20"/> <source>Print current page</source> <translation>Diese Seite drucken</translation> </message> <message> - <location line="-45"/> <source>A4 (210 x 297 mm, 8.26 x 11.7 inches)</source> <translation>A4 (210 x 297 mm)</translation> </message> <message> - <location line="+11"/> <source>B5 (176 x 250 mm, 6.93 x 9.84 inches)</source> <translation>B5 (176 x 250 mm)</translation> </message> <message> - <location line="+8"/> <source>Executive (7.5 x 10 inches, 191 x 254 mm)</source> <translation>Executive (7,5 x 10 Zoll, 191 x 254 mm)</translation> </message> <message> - <location line="+3"/> <source>Legal (8.5 x 14 inches, 216 x 356 mm)</source> <translation>Legal (8,5 x 14 Zoll, 216 x 356 mm)</translation> </message> <message> - <location line="+1"/> <source>Letter (8.5 x 11 inches, 216 x 279 mm)</source> <translation>Letter (8,5 x 11 Zoll, 216 x 279 mm)</translation> </message> <message> - <location line="+20"/> <source>Print selection</source> <translation>Auswahl drucken</translation> </message> <message> - <location filename="../src/gui/dialogs/qabstractprintdialog.cpp" line="+113"/> - <location line="+13"/> - <location filename="../src/gui/dialogs/qprintdialog_win.cpp" line="-2"/> <source>Print</source> <translation>Drucken</translation> </message> <message> - <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="-392"/> <source>Print To File ...</source> <translation>In Datei drucken ...</translation> </message> <message> - <location line="+82"/> <source>File %1 is not writable. Please choose a different file name.</source> <translation>Die Datei %1 ist schreibgeschützt. Bitte wählen Sie einen anderen Dateinamen.</translation> </message> <message> - <location line="+4"/> <source>%1 already exists. Do you want to overwrite it?</source> <translation>Die Datei %1 existiert bereits. Soll sie überschrieben werden?</translation> </message> <message> - <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="-232"/> <source>File exists</source> <translation>Die Datei existiert bereits</translation> </message> <message> - <location line="+1"/> <source><qt>Do you want to overwrite it?</qt></source> <translation><qt>Soll sie überschrieben werden?</qt></translation> </message> <message> - <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="-8"/> <source>%1 is a directory. Please choose a different file name.</source> <translation>%1 ist ein Verzeichnis. Bitte wählen Sie einen anderen Dateinamen.</translation> </message> <message> - <location filename="../src/gui/dialogs/qprintdialog_win.cpp" line="+1"/> <source>The 'From' value cannot be greater than the 'To' value.</source> <translation>Die Angabe für die erste Seite darf nicht größer sein als die für die letzte Seite.</translation> </message> <message> - <location filename="../src/gui/dialogs/qpagesetupdialog_unix.cpp" line="-232"/> <source>A0</source> <translation>A0</translation> </message> <message> - <location line="+1"/> <source>A1</source> <translation>A1</translation> </message> <message> - <location line="+1"/> <source>A2</source> <translation>A2</translation> </message> <message> - <location line="+1"/> <source>A3</source> <translation>A3</translation> </message> <message> - <location line="+1"/> <source>A4</source> <translation>A4</translation> </message> <message> - <location line="+1"/> <source>A5</source> <translation>A5</translation> </message> <message> - <location line="+1"/> <source>A6</source> <translation>A6</translation> </message> <message> - <location line="+1"/> <source>A7</source> <translation>A7</translation> </message> <message> - <location line="+1"/> <source>A8</source> <translation>A8</translation> </message> <message> - <location line="+1"/> <source>A9</source> <translation>A9</translation> </message> <message> - <location line="+1"/> <source>B0</source> <translation>B0</translation> </message> <message> - <location line="+1"/> <source>B1</source> <translation>B1</translation> </message> <message> - <location line="+1"/> <source>B2</source> <translation>B2</translation> </message> <message> - <location line="+1"/> <source>B3</source> <translation>B3</translation> </message> <message> - <location line="+1"/> <source>B4</source> <translation>B4</translation> </message> <message> - <location line="+1"/> <source>B5</source> <translation>B5</translation> </message> <message> - <location line="+1"/> <source>B6</source> <translation>B6</translation> </message> <message> - <location line="+1"/> <source>B7</source> <translation>B7</translation> </message> <message> - <location line="+1"/> <source>B8</source> <translation>B8</translation> </message> <message> - <location line="+1"/> <source>B9</source> <translation>B9</translation> </message> <message> - <location line="+1"/> <source>B10</source> <translation>B10</translation> </message> <message> - <location line="+1"/> <source>C5E</source> <translation>C5E</translation> </message> <message> - <location line="+1"/> <source>DLE</source> <translation>DLE</translation> </message> <message> - <location line="+1"/> <source>Executive</source> <translation>Executive</translation> </message> <message> - <location line="+1"/> <source>Folio</source> <translation>Folio</translation> </message> <message> - <location line="+1"/> <source>Ledger</source> <translation>Ledger</translation> </message> <message> - <location line="+1"/> <source>Legal</source> <translation>Legal</translation> </message> <message> - <location line="+1"/> <source>Letter</source> <translation>Letter</translation> </message> <message> - <location line="+1"/> <source>Tabloid</source> <translation>Tabloid</translation> </message> <message> - <location line="+1"/> <source>US Common #10 Envelope</source> <translation>US Common #10 Envelope</translation> </message> <message> - <location line="+1"/> <source>Custom</source> <translation>Benutzerdefiniert</translation> </message> <message> - <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="-530"/> - <location line="+68"/> <source>&Options >></source> <translation>&Einstellungen >></translation> </message> <message> - <location line="+4"/> <source>&Options <<</source> <translation>&Einstellungen << </translation> </message> <message> - <location line="+260"/> <source>Print to File (PDF)</source> <translation>In PDF-Datei drucken</translation> </message> <message> - <location line="+1"/> <source>Print to File (Postscript)</source> <translation>In Postscript-Datei drucken</translation> </message> <message> - <location line="+47"/> <source>Local file</source> <translation>Lokale Datei</translation> </message> <message> - <location line="+1"/> <source>Write %1 file</source> <translation>Schreiben der Datei %1</translation> </message> <message> - <location line="-376"/> <source>&Print</source> <translation>&Drucken</translation> </message> @@ -5809,108 +4606,86 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QPrintPreviewDialog</name> <message> - <location filename="../src/gui/dialogs/qprintpreviewdialog.cpp" line="+249"/> <source>%1%</source> <translation>%1%</translation> </message> <message> - <location line="+84"/> <source>Print Preview</source> <translation>Druckvorschau</translation> </message> <message> - <location line="+30"/> <source>Next page</source> <translation>Nächste Seite</translation> </message> <message> - <location line="+1"/> <source>Previous page</source> <translation>Vorige Seite</translation> </message> <message> - <location line="+1"/> <source>First page</source> <translation>Erste Seite</translation> </message> <message> - <location line="+1"/> <source>Last page</source> <translation>Letzte Seite</translation> </message> <message> - <location line="+9"/> <source>Fit width</source> <translation>Breite anpassen</translation> </message> <message> - <location line="+1"/> <source>Fit page</source> <translation>Seite anpassen</translation> </message> <message> - <location line="+11"/> <source>Zoom in</source> <translation>Vergrößern</translation> </message> <message> - <location line="+1"/> <source>Zoom out</source> <translation>Verkleinern</translation> </message> <message> - <location line="+6"/> <source>Portrait</source> <translation>Hochformat</translation> </message> <message> - <location line="+1"/> <source>Landscape</source> <translation>Querformat</translation> </message> <message> - <location line="+10"/> <source>Show single page</source> <translation>Einzelne Seite anzeigen</translation> </message> <message> - <location line="+1"/> <source>Show facing pages</source> <translation>Gegenüberliegende Seiten anzeigen</translation> </message> <message> - <location line="+1"/> <source>Show overview of all pages</source> <translation>Übersicht aller Seiten</translation> </message> <message> - <location line="+15"/> <source>Print</source> <translation>Drucken</translation> </message> <message> - <location line="+1"/> <source>Page setup</source> <translation>Seite einrichten</translation> </message> <message> - <location line="+6"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="+148"/> <source>Export to PDF</source> <translation>PDF exportieren</translation> </message> <message> - <location line="+3"/> <source>Export to PostScript</source> <translation>PostScript exportieren</translation> </message> <message> - <location filename="../src/gui/dialogs/qabstractpagesetupdialog.cpp" line="+68"/> - <location line="+12"/> <source>Page Setup</source> <translation>Seite einrichten</translation> </message> @@ -5918,17 +4693,14 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QPrintPropertiesWidget</name> <message> - <location filename="../src/gui/dialogs/qprintpropertieswidget.ui"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location/> <source>Page</source> <translation>Seite</translation> </message> <message> - <location/> <source>Advanced</source> <translation>Erweitert</translation> </message> @@ -5936,102 +4708,82 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QPrintSettingsOutput</name> <message> - <location filename="../src/gui/dialogs/qprintsettingsoutput.ui"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location/> <source>Copies</source> <translation>Anzahl Exemplare</translation> </message> <message> - <location/> <source>Print range</source> <translation>Bereich drucken</translation> </message> <message> - <location/> <source>Print all</source> <translation>Alles drucken</translation> </message> <message> - <location/> <source>Pages from</source> <translation>Seiten von</translation> </message> <message> - <location/> <source>to</source> <translation>bis</translation> </message> <message> - <location/> <source>Selection</source> <translation>Auswahl</translation> </message> <message> - <location/> <source>Output Settings</source> <translation>Ausgabeeinstellungen</translation> </message> <message> - <location/> <source>Copies:</source> <translation>Anzahl Exemplare:</translation> </message> <message> - <location/> <source>Collate</source> <translation>Sortieren</translation> </message> <message> - <location/> <source>Reverse</source> <translation>Umgekehrt</translation> </message> <message> - <location/> <source>Options</source> <translation>Optionen</translation> </message> <message> - <location/> <source>Color Mode</source> <translation>Farbmodus</translation> </message> <message> - <location/> <source>Color</source> <translation>Farbe</translation> </message> <message> - <location/> <source>Grayscale</source> <translation>Graustufen</translation> </message> <message> - <location/> <source>Duplex Printing</source> <translation>Duplexdruck</translation> </message> <message> - <location/> <source>None</source> <translation>Kein</translation> </message> <message> - <location/> <source>Long side</source> <translation>Lange Seite</translation> </message> <message> - <location/> <source>Short side</source> <translation>Kurze Seite</translation> </message> <message> - <location/> <source>Current Page</source> <translation></translation> </message> @@ -6039,47 +4791,38 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QPrintWidget</name> <message> - <location filename="../src/gui/dialogs/qprintwidget.ui"/> <source>Form</source> <translation>Formular</translation> </message> <message> - <location/> <source>Printer</source> <translation>Drucker</translation> </message> <message> - <location/> <source>&Name:</source> <translation>&Name:</translation> </message> <message> - <location/> <source>P&roperties</source> <translation>&Eigenschaften</translation> </message> <message> - <location/> <source>Location:</source> <translation>Standort:</translation> </message> <message> - <location/> <source>Preview</source> <translation>Vorschau</translation> </message> <message> - <location/> <source>Type:</source> <translation>Typ:</translation> </message> <message> - <location/> <source>Output &file:</source> <translation>Ausgabe&datei:</translation> </message> <message> - <location/> <source>...</source> <translation>...</translation> </message> @@ -6087,62 +4830,38 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QProcess</name> <message> - <location filename="../src/corelib/io/qprocess_unix.cpp" line="+406"/> - <location filename="../src/corelib/io/qprocess_win.cpp" line="+137"/> <source>Could not open input redirection for reading</source> <translation>Die Eingabeumleitung konnte nicht zum Lesen geöffnet werden</translation> </message> <message> - <location line="+12"/> - <location filename="../src/corelib/io/qprocess_win.cpp" line="+20"/> <source>Could not open output redirection for writing</source> <translation>Die Ausgabeumleitung konnte nicht zum Lesen geöffnet werden</translation> </message> <message> - <location line="+239"/> <source>Resource error (fork failure): %1</source> <translation>Ressourcenproblem ("fork failure"): %1</translation> </message> <message> - <location line="+258"/> - <location line="+52"/> - <location line="+74"/> - <location line="+66"/> - <location filename="../src/corelib/io/qprocess_win.cpp" line="+406"/> - <location line="+50"/> - <location line="+75"/> - <location line="+42"/> - <location line="+54"/> <source>Process operation timed out</source> <translation>Zeitüberschreitung</translation> </message> <message> - <location filename="../src/corelib/io/qprocess.cpp" line="+866"/> - <location line="+52"/> - <location filename="../src/corelib/io/qprocess_win.cpp" line="-211"/> - <location line="+50"/> <source>Error reading from process</source> <translation>Das Lesen vom Prozess schlug fehl</translation> </message> <message> - <location line="+47"/> - <location line="+826"/> - <location filename="../src/corelib/io/qprocess_win.cpp" line="+140"/> <source>Error writing to process</source> <translation>Das Schreiben zum Prozess schlug fehl</translation> </message> <message> - <location line="-756"/> <source>Process crashed</source> <translation>Der Prozess ist abgestürzt</translation> </message> <message> - <location line="+959"/> <source>No program defined</source> <translation>Es wurde kein Programm angegeben</translation> </message> <message> - <location filename="../src/corelib/io/qprocess_win.cpp" line="-360"/> <source>Process failed to start: %1</source> <translation>Das Starten des Prozesses schlug fehl: %1</translation> </message> @@ -6150,7 +4869,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QProgressDialog</name> <message> - <location filename="../src/gui/dialogs/qprogressdialog.cpp" line="+196"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> @@ -6158,7 +4876,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QPushButton</name> <message> - <location filename="../src/plugins/accessible/widgets/simplewidgets.cpp" line="-8"/> <source>Open</source> <translation>Öffnen</translation> </message> @@ -6166,7 +4883,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QRadioButton</name> <message> - <location line="+12"/> <source>Check</source> <translation>Ankreuzen</translation> </message> @@ -6174,57 +4890,46 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QRegExp</name> <message> - <location filename="../src/corelib/tools/qregexp.cpp" line="+65"/> <source>no error occurred</source> <translation>kein Fehler</translation> </message> <message> - <location line="+1"/> <source>disabled feature used</source> <translation>deaktivierte Eigenschaft wurde benutzt</translation> </message> <message> - <location line="+1"/> <source>bad char class syntax</source> <translation>falsche Syntax für Zeichenklasse</translation> </message> <message> - <location line="+1"/> <source>bad lookahead syntax</source> <translation>falsche Syntax für Lookahead</translation> </message> <message> - <location line="+1"/> <source>bad repetition syntax</source> <translation>falsche Syntax für Wiederholungen</translation> </message> <message> - <location line="+1"/> <source>invalid octal value</source> <translation>ungültiger Oktal-Wert</translation> </message> <message> - <location line="+1"/> <source>missing left delim</source> <translation>fehlende linke Begrenzung</translation> </message> <message> - <location line="+1"/> <source>unexpected end</source> <translation>unerwartetes Ende</translation> </message> <message> - <location line="+1"/> <source>met internal limit</source> <translation>internes Limit erreicht</translation> </message> <message> - <location line="+1"/> <source>invalid interval</source> <translation>ungültiges Intervall</translation> </message> <message> - <location line="+1"/> <source>invalid category</source> <translation>ungültige Kategorie</translation> </message> @@ -6232,22 +4937,18 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSQLite2Driver</name> <message> - <location filename="../src/sql/drivers/sqlite2/qsql_sqlite2.cpp" line="+399"/> <source>Error opening database</source> <translation>Die Datenbankverbindung konnte nicht geöffnet werden</translation> </message> <message> - <location line="+41"/> <source>Unable to begin transaction</source> <translation>Es konnte keine Transaktion gestartet werden</translation> </message> <message> - <location line="+17"/> <source>Unable to commit transaction</source> <translation>Die Transaktion konnte nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+17"/> <source>Unable to rollback transaction</source> <translation>Die Transaktion kann nicht rückgängig gemacht werden</translation> </message> @@ -6255,12 +4956,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSQLite2Result</name> <message> - <location line="-326"/> <source>Unable to fetch results</source> <translation>Das Ergebnis konnte nicht abgeholt werden</translation> </message> <message> - <location line="+150"/> <source>Unable to execute statement</source> <translation>Der Befehl konnte nicht ausgeführt werden</translation> </message> @@ -6268,27 +4967,22 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSQLiteDriver</name> <message> - <location filename="../src/sql/drivers/sqlite/qsql_sqlite.cpp" line="+539"/> <source>Error opening database</source> <translation>Die Datenbankverbindung konnte nicht geöffnet werden</translation> </message> <message> - <location line="+11"/> <source>Error closing database</source> <translation>Die Datenbankverbindung konnte nicht geschlossen werden</translation> </message> <message> - <location line="+20"/> <source>Unable to begin transaction</source> <translation>Es konnte keine Transaktion gestartet werden</translation> </message> <message> - <location line="+15"/> <source>Unable to commit transaction</source> <translation>Die Transaktion konnte nicht durchgeführt werden (Operation 'commit' fehlgeschlagen)</translation> </message> <message> - <location line="+15"/> <source>Unable to rollback transaction</source> <translation>Die Transaktion konnte nicht rückgängig gemacht werden (Operation 'rollback' fehlgeschlagen)</translation> </message> @@ -6296,34 +4990,26 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSQLiteResult</name> <message> - <location line="-396"/> - <location line="+63"/> - <location line="+8"/> <source>Unable to fetch row</source> <translation>Der Datensatz konnte nicht abgeholt werden</translation> </message> <message> - <location line="+59"/> <source>Unable to execute statement</source> <translation>Der Befehl konnte nicht ausgeführt werden</translation> </message> <message> - <location line="+20"/> <source>Unable to reset statement</source> <translation>Der Befehl konnte nicht zurückgesetzt werden</translation> </message> <message> - <location line="+45"/> <source>Unable to bind parameters</source> <translation>Die Parameter konnte nicht gebunden werden</translation> </message> <message> - <location line="+7"/> <source>Parameter count mismatch</source> <translation>Die Anzahl der Parameter ist falsch</translation> </message> <message> - <location line="-201"/> <source>No query</source> <translation>Kein Abfrage</translation> </message> @@ -6331,32 +5017,26 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptBreakpointsModel</name> <message> - <location filename="../src/scripttools/debugging/qscriptbreakpointsmodel.cpp" line="+455"/> <source>ID</source> <translation>ID</translation> </message> <message> - <location line="+2"/> <source>Location</source> <translation>Stelle</translation> </message> <message> - <location line="+2"/> <source>Condition</source> <translation>Bedingung</translation> </message> <message> - <location line="+2"/> <source>Ignore-count</source> <translation>Auslösen nach</translation> </message> <message> - <location line="+2"/> <source>Single-shot</source> <translation>Einmal auslösen</translation> </message> <message> - <location line="+2"/> <source>Hit-count</source> <translation>Ausgelöst</translation> </message> @@ -6364,12 +5044,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptBreakpointsWidget</name> <message> - <location filename="../src/scripttools/debugging/qscriptbreakpointswidget.cpp" line="+298"/> <source>New</source> <translation>Neu</translation> </message> <message> - <location line="+6"/> <source>Delete</source> <translation>Löschen</translation> </message> @@ -6377,143 +5055,114 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptDebugger</name> <message> - <location filename="../src/scripttools/debugging/qscriptdebugger.cpp" line="+885"/> - <location line="+1013"/> <source>Go to Line</source> <translation>Gehe zu Zeile</translation> </message> <message> - <location line="-1012"/> <source>Line:</source> <translation>Zeile:</translation> </message> <message> - <location line="+791"/> <source>Interrupt</source> <translation>Unterbrechen</translation> </message> <message> - <location line="+2"/> <source>Shift+F5</source> <translation>Shift+F5</translation> </message> <message> - <location line="+15"/> <source>Continue</source> <translation>Weiter</translation> </message> <message> - <location line="+2"/> <source>F5</source> <translation>F5</translation> </message> <message> - <location line="+15"/> <source>Step Into</source> <translation>Einzelschritt herein</translation> </message> <message> - <location line="+2"/> <source>F11</source> <translation>F11</translation> </message> <message> - <location line="+15"/> <source>Step Over</source> <translation>Einzelschritt über</translation> </message> <message> - <location line="+2"/> <source>F10</source> <translation>F10</translation> </message> <message> - <location line="+15"/> <source>Step Out</source> <translation>Einzelschritt heraus</translation> </message> <message> - <location line="+2"/> <source>Shift+F11</source> <translation>Shift+F11</translation> </message> <message> - <location line="+15"/> <source>Run to Cursor</source> <translation>Bis Cursor ausführen</translation> </message> <message> - <location line="+2"/> <source>Ctrl+F10</source> <translation>Ctrl+F10</translation> </message> <message> - <location line="+16"/> <source>Run to New Script</source> <translation>Bis zu neuem Skript ausführen</translation> </message> <message> - <location line="+15"/> <source>Toggle Breakpoint</source> <translation>Haltepunkt umschalten</translation> </message> <message> - <location line="+1"/> <source>F9</source> <translation>F9</translation> </message> <message> - <location line="+14"/> <source>Clear Debug Output</source> <translation>Debug-Ausgabe löschen</translation> </message> <message> - <location line="+13"/> <source>Clear Error Log</source> <translation>Fehlerausgabe löschen</translation> </message> <message> - <location line="+13"/> <source>Clear Console</source> <translation>Konsole löschen</translation> </message> <message> - <location line="+14"/> <source>&Find in Script...</source> <translation>&Suche im Skript...</translation> </message> <message> - <location line="+1"/> <source>Ctrl+F</source> <translation>Ctrl+F</translation> </message> <message> - <location line="+17"/> <source>Find &Next</source> <translation>&Nächste Fundstelle</translation> </message> <message> - <location line="+2"/> <source>F3</source> <translation>F3</translation> </message> <message> - <location line="+13"/> <source>Find &Previous</source> <translation>Vorhergehende Fundstelle</translation> </message> <message> - <location line="+2"/> <source>Shift+F3</source> <translation>Shift+F3</translation> </message> <message> - <location line="+14"/> <source>Ctrl+G</source> <translation>Ctrl+G</translation> </message> <message> - <location line="+11"/> <source>Debug</source> <translation>Debuggen</translation> </message> @@ -6521,32 +5170,26 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptDebuggerCodeFinderWidget</name> <message> - <location filename="../src/scripttools/debugging/qscriptdebuggercodefinderwidget.cpp" line="+141"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="+13"/> <source>Previous</source> <translation>Vorige</translation> </message> <message> - <location line="+7"/> <source>Next</source> <translation>Nächste</translation> </message> <message> - <location line="+5"/> <source>Case Sensitive</source> <translation>Groß/Kleinschreibung beachten</translation> </message> <message> - <location line="+3"/> <source>Whole words</source> <translation>Ganze Worte</translation> </message> <message> - <location line="+9"/> <source><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped</source> <translation><img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Die Suche hat das Ende erreicht</translation> </message> @@ -6554,12 +5197,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptDebuggerLocalsModel</name> <message> - <location filename="../src/scripttools/debugging/qscriptdebuggerlocalsmodel.cpp" line="+897"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+2"/> <source>Value</source> <translation>Wert</translation> </message> @@ -6567,17 +5208,14 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptDebuggerStackModel</name> <message> - <location filename="../src/scripttools/debugging/qscriptdebuggerstackmodel.cpp" line="+161"/> <source>Level</source> <translation>Ebene</translation> </message> <message> - <location line="+2"/> <source>Name</source> <translation>Name</translation> </message> <message> - <location line="+2"/> <source>Location</source> <translation>Stelle</translation> </message> @@ -6585,22 +5223,18 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptEdit</name> <message> - <location filename="../src/scripttools/debugging/qscriptedit.cpp" line="+411"/> <source>Toggle Breakpoint</source> <translation>Haltepunkt umschalten</translation> </message> <message> - <location line="+2"/> <source>Disable Breakpoint</source> <translation>Haltepunkt deaktivieren</translation> </message> <message> - <location line="+1"/> <source>Enable Breakpoint</source> <translation>Haltepunkt aktivieren</translation> </message> <message> - <location line="+4"/> <source>Breakpoint Condition:</source> <translation>Bedingung:</translation> </message> @@ -6608,52 +5242,42 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptEngineDebugger</name> <message> - <location filename="../src/scripttools/debugging/qscriptenginedebugger.cpp" line="+523"/> <source>Loaded Scripts</source> <translation>Geladene Skripte</translation> </message> <message> - <location line="+6"/> <source>Breakpoints</source> <translation>Haltepunkte</translation> </message> <message> - <location line="+6"/> <source>Stack</source> <translation>Stapel</translation> </message> <message> - <location line="+6"/> <source>Locals</source> <translation>Lokale Variablen</translation> </message> <message> - <location line="+6"/> <source>Console</source> <translation>Konsole</translation> </message> <message> - <location line="+6"/> <source>Debug Output</source> <translation>Debug-Ausgabe</translation> </message> <message> - <location line="+6"/> <source>Error Log</source> <translation>Fehlerausgabe</translation> </message> <message> - <location line="+12"/> <source>Search</source> <translation>Suche</translation> </message> <message> - <location line="+7"/> <source>View</source> <translation>Ansicht</translation> </message> <message> - <location line="+18"/> <source>Qt Script Debugger</source> <translation>Qt Script Debugger</translation> </message> @@ -6661,7 +5285,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScriptNewBreakpointWidget</name> <message> - <location filename="../src/scripttools/debugging/qscriptbreakpointswidget.cpp" line="-223"/> <source>Close</source> <translation>Schließen</translation> </message> @@ -6669,84 +5292,66 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QScrollBar</name> <message> - <location filename="../src/gui/widgets/qscrollbar.cpp" line="+454"/> <source>Scroll here</source> <translation>Hierher scrollen</translation> </message> <message> - <location line="+2"/> <source>Left edge</source> <translation>Linker Rand</translation> </message> <message> - <location line="+0"/> <source>Top</source> <translation>Anfang</translation> </message> <message> - <location line="+1"/> <source>Right edge</source> <translation>Rechter Rand</translation> </message> <message> - <location line="+0"/> <source>Bottom</source> <translation>Ende</translation> </message> <message> - <location line="+2"/> <source>Page left</source> <translation>Eine Seite nach links</translation> </message> <message> - <location line="+0"/> - <location filename="../src/plugins/accessible/widgets/rangecontrols.cpp" line="+143"/> <source>Page up</source> <translation>Eine Seite nach oben</translation> </message> <message> - <location line="+1"/> <source>Page right</source> <translation>Eine Seite nach rechts</translation> </message> <message> - <location line="+0"/> - <location filename="../src/plugins/accessible/widgets/rangecontrols.cpp" line="+4"/> <source>Page down</source> <translation>Eine Seite nach unten</translation> </message> <message> - <location line="+2"/> <source>Scroll left</source> <translation>Nach links scrollen</translation> </message> <message> - <location line="+0"/> <source>Scroll up</source> <translation>Nach oben scrollen</translation> </message> <message> - <location line="+1"/> <source>Scroll right</source> <translation>Nach rechts scrollen</translation> </message> <message> - <location line="+0"/> <source>Scroll down</source> <translation>Nach unten scrollen</translation> </message> <message> - <location filename="../src/plugins/accessible/widgets/rangecontrols.cpp" line="-6"/> <source>Line up</source> <translation>Ausrichten</translation> </message> <message> - <location line="+4"/> <source>Position</source> <translation>Position</translation> </message> <message> - <location line="+4"/> <source>Line down</source> <translation>Eine Zeile nach unten</translation> </message> @@ -6754,111 +5359,78 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSharedMemory</name> <message> - <location filename="../src/corelib/kernel/qsharedmemory.cpp" line="+304"/> <source>%1: create size is less then 0</source> <translation>%1: Die Größenangabe für die Erzeugung ist kleiner als Null</translation> </message> <message> - <location line="+168"/> - <location filename="../src/corelib/kernel/qsharedmemory_p.h" line="+155"/> <source>%1: unable to lock</source> <translation>%1: Sperrung fehlgeschlagen</translation> </message> <message> - <location line="+22"/> <source>%1: unable to unlock</source> <translation>%1: Die Sperrung konnte nicht aufgehoben werden</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory_symbian.cpp" line="+83"/> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+81"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+87"/> <source>%1: permission denied</source> <translation>%1: Zugriff verweigert</translation> </message> <message> - <location line="-16"/> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+4"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="-22"/> <source>%1: already exists</source> <translation>%1: existiert bereits</translation> </message> <message> - <location line="+4"/> <source>%1: doesn't exists</source> <translation>%1: existiert nicht</translation> </message> <message> - <location line="+8"/> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+10"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+18"/> <source>%1: out of resources</source> <translation>%1: Keine Ressourcen mehr verfügbar</translation> </message> <message> - <location line="+7"/> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+4"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+7"/> <source>%1: unknown error %2</source> <translation>%1: Unbekannter Fehler %2</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+21"/> <source>%1: key is empty</source> <translation>%1: Ungültige Schlüsselangabe (leer)</translation> </message> <message> - <location line="+15"/> <source>%1: ftok failed</source> <translation>%1: ftok-Aufruf schlug fehl</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory_symbian.cpp" line="+56"/> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+51"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+15"/> <source>%1: unable to make key</source> <translation>%1: Es kann kein Schlüssel erzeugt werden</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="-97"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="-31"/> <source>%1: doesn't exist</source> <translation>%1: existiert nicht</translation> </message> <message> - <location line="+39"/> <source>%1: UNIX key file doesn't exist</source> <translation>%1: Die Unix-Schlüsseldatei existiert nicht</translation> </message> <message> - <location line="+78"/> <source>%1: system-imposed size restrictions</source> <translation>%1: Ein systembedingtes Limit der Größe wurde erreicht</translation> </message> <message> - <location line="+53"/> <source>%1: not attached</source> <translation>%1: nicht verbunden</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory_symbian.cpp" line="-67"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+4"/> <source>%1: invalid size</source> <translation>%1: Ungültige Größe</translation> </message> <message> - <location line="+40"/> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+63"/> <source>%1: key error</source> <translation>%1: Fehlerhafter Schlüssel</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+32"/> <source>%1: size query failed</source> <translation>%1: Die Abfrage der Größe schlug fehl</translation> </message> <message> - <location filename="../src/corelib/kernel/qsharedmemory.cpp" line="-271"/> <source>%1: unable to set key on lock</source> <translation>%1: Es kann kein Schlüssel für die Sperrung gesetzt werden</translation> </message> @@ -6866,1095 +5438,884 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QShortcut</name> <message> - <location filename="../src/gui/kernel/qkeysequence.cpp" line="+396"/> <source>Space</source> <extracomment>This and all following "incomprehensible" strings in QShortcut context are key names. Please use the localized names appearing on actual keyboards or whatever is commonly used.</extracomment> <translation>Leertaste</translation> </message> <message> - <location line="+1"/> <source>Esc</source> <translation>Esc</translation> </message> <message> - <location line="+1"/> <source>Tab</source> <translation>Tab</translation> </message> <message> - <location line="+1"/> <source>Backtab</source> <translation>Rück-Tab</translation> </message> <message> - <location line="+1"/> <source>Backspace</source> <translation>Rücktaste</translation> </message> <message> - <location line="+1"/> <source>Return</source> <translation>Return</translation> </message> <message> - <location line="+1"/> <source>Enter</source> <translation>Enter</translation> </message> <message> - <location line="+1"/> <source>Ins</source> <translation>Einfg</translation> </message> <message> - <location line="+1"/> <source>Del</source> <translation>Entf</translation> </message> <message> - <location line="+1"/> <source>Pause</source> <translation>Pause</translation> </message> <message> - <location line="+1"/> <source>Print</source> <translation>Druck</translation> </message> <message> - <location line="+1"/> <source>SysReq</source> <translation>SysReq</translation> </message> <message> - <location line="+1"/> <source>Home</source> <translation>Pos1</translation> </message> <message> - <location line="+1"/> <source>End</source> <translation>Ende</translation> </message> <message> - <location line="+1"/> <source>Left</source> <translation>Links</translation> </message> <message> - <location line="+1"/> <source>Up</source> <translation>Hoch</translation> </message> <message> - <location line="+1"/> <source>Right</source> <translation>Rechts</translation> </message> <message> - <location line="+1"/> <source>Down</source> <translation>Runter</translation> </message> <message> - <location line="+1"/> <source>PgUp</source> <translation>Bild aufwärts</translation> </message> <message> - <location line="+1"/> <source>PgDown</source> <translation>Bild abwärts</translation> </message> <message> - <location line="+1"/> <source>CapsLock</source> <translation>Feststelltaste</translation> </message> <message> - <location line="+1"/> <source>NumLock</source> <translation>Zahlen-Feststelltaste</translation> </message> <message> - <location line="+1"/> <source>ScrollLock</source> <translation>Rollen-Feststelltaste</translation> </message> <message> - <location line="+1"/> <source>Menu</source> <translation>Menü</translation> </message> <message> - <location line="+1"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location line="+5"/> <source>Back</source> <translation>Zurück</translation> </message> <message> - <location line="+1"/> <source>Forward</source> <translation>Vorwärts</translation> </message> <message> - <location line="+1"/> <source>Stop</source> <translation>Abbrechen</translation> </message> <message> - <location line="+1"/> <source>Refresh</source> <translation>Aktualisieren</translation> </message> <message> - <location line="+1"/> <source>Volume Down</source> <translation>Lautstärke -</translation> </message> <message> - <location line="+1"/> <source>Volume Mute</source> <translation>Ton aus</translation> </message> <message> - <location line="+1"/> <source>Volume Up</source> <translation>Lautstärke +</translation> </message> <message> - <location line="+1"/> <source>Bass Boost</source> <translation>Bass-Boost</translation> </message> <message> - <location line="+1"/> <source>Bass Up</source> <translation>Bass +</translation> </message> <message> - <location line="+1"/> <source>Bass Down</source> <translation>Bass -</translation> </message> <message> - <location line="+1"/> <source>Treble Up</source> <translation>Höhen +</translation> </message> <message> - <location line="+1"/> <source>Treble Down</source> <translation>Höhen -</translation> </message> <message> - <location line="+1"/> <source>Media Play</source> <translation>Wiedergabe</translation> </message> <message> - <location line="+1"/> <source>Media Stop</source> <translation>Stopp</translation> </message> <message> - <location line="+1"/> <source>Media Previous</source> <translation>Vorheriger</translation> </message> <message> - <location line="+1"/> <source>Media Next</source> <translation>Nächster</translation> </message> <message> - <location line="+1"/> <source>Media Record</source> <translation>Aufzeichnen</translation> </message> <message> - <location line="+2"/> + <source>Media Pause</source> + <extracomment>Media player pause button</extracomment> + <translation>Pause</translation> + </message> + <message> + <source>Toggle Media Play/Pause</source> + <extracomment>Media player button to toggle between playing and paused</extracomment> + <translation>Pause</translation> + </message> + <message> <source>Favorites</source> <translation>Favoriten</translation> </message> <message> - <location line="+1"/> <source>Search</source> <translation>Suchen</translation> </message> <message> - <location line="+1"/> <source>Standby</source> <translation>Standby</translation> </message> <message> - <location line="+1"/> <source>Open URL</source> <translation>URL öffnen</translation> </message> <message> - <location line="+1"/> <source>Launch Mail</source> <translation>Mail starten</translation> </message> <message> - <location line="+1"/> <source>Launch Media</source> <translation>Medienspieler starten</translation> </message> <message> - <location line="+1"/> <source>Launch (0)</source> <translation>(0) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (1)</source> <translation>(1) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (2)</source> <translation>(2) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (3)</source> <translation>(3) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (4)</source> <translation>(4) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (5)</source> <translation>(5) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (6)</source> <translation>(6) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (7)</source> <translation>(7) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (8)</source> <translation>(8) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (9)</source> <translation>(9) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (A)</source> <translation>(A) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (B)</source> <translation>(B) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (C)</source> <translation>(C) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (D)</source> <translation>(D) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (E)</source> <translation>(E) starten</translation> </message> <message> - <location line="+1"/> <source>Launch (F)</source> <translation>(F) starten</translation> </message> <message> - <location line="+1"/> <source>Monitor Brightness Up</source> <translation>Monitor heller</translation> </message> <message> - <location line="+1"/> <source>Monitor Brightness Down</source> <translation>Monitor dunkler</translation> </message> <message> - <location line="+1"/> <source>Keyboard Light On/Off</source> <translation>Tastaturbeleuchtung Ein/Aus</translation> </message> <message> - <location line="+1"/> <source>Keyboard Brightness Up</source> <translation>Tastaturbeleuchtung heller</translation> </message> <message> - <location line="+1"/> <source>Keyboard Brightness Down</source> <translation>Tastaturbeleuchtung dunkler</translation> </message> <message> - <location line="+1"/> <source>Power Off</source> <translation>Ausschalten</translation> </message> <message> - <location line="+1"/> <source>Wake Up</source> <translation>Aufwecken</translation> </message> <message> - <location line="+1"/> <source>Eject</source> <translation>Auswerfen</translation> </message> <message> - <location line="+1"/> <source>Screensaver</source> <translation>Bildschirmschoner</translation> </message> <message> - <location line="+1"/> <source>WWW</source> <translation>Internet</translation> </message> <message> - <location line="+1"/> <source>Sleep</source> <translation>Schlafmodus</translation> </message> <message> - <location line="+1"/> <source>LightBulb</source> <translation>Beleuchtung</translation> </message> <message> - <location line="+1"/> <source>Shop</source> <translation>Shop</translation> </message> <message> - <location line="+1"/> <source>History</source> <translation>Verlauf</translation> </message> <message> - <location line="+1"/> <source>Add Favorite</source> <translation>Lesezeichen hinzufügen</translation> </message> <message> - <location line="+1"/> <source>Hot Links</source> <translation>Empfohlene Verweise</translation> </message> <message> - <location line="+1"/> <source>Adjust Brightness</source> <translation>Helligkeit einstellen</translation> </message> <message> - <location line="+1"/> <source>Finance</source> <translation>Finanzen</translation> </message> <message> - <location line="+1"/> <source>Community</source> <translation>Community</translation> </message> <message> - <location line="+1"/> <source>Audio Rewind</source> <translation>Audio rückspulen</translation> </message> <message> - <location line="+1"/> <source>Back Forward</source> <translation>Hinterstes nach vorn</translation> </message> <message> - <location line="+1"/> <source>Application Left</source> <translation>Anwendung links</translation> </message> <message> - <location line="+1"/> <source>Application Right</source> <translation>Anwendung rechts</translation> </message> <message> - <location line="+1"/> <source>Book</source> <translation>Buch</translation> </message> <message> - <location line="+1"/> <source>CD</source> <translation>CD</translation> </message> <message> - <location line="+1"/> <source>Calculator</source> <translation>Rechner</translation> </message> <message> - <location line="+1"/> <source>Clear</source> <translation>Löschen</translation> </message> <message> - <location line="+1"/> <source>Clear Grab</source> <translation>Zugriff löschen</translation> </message> <message> - <location line="+1"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="+1"/> <source>Copy</source> <translation>Kopieren</translation> </message> <message> - <location line="+1"/> <source>Cut</source> <translation>Ausschneiden</translation> </message> <message> - <location line="+1"/> <source>Display</source> <translation>Anzeigen</translation> </message> <message> - <location line="+1"/> <source>DOS</source> <translation>DOS</translation> </message> <message> - <location line="+1"/> <source>Documents</source> <translation>Dokumente</translation> </message> <message> - <location line="+1"/> <source>Spreadsheet</source> <translation>Spreadsheet</translation> </message> <message> - <location line="+1"/> <source>Browser</source> <translation>Browser</translation> </message> <message> - <location line="+1"/> <source>Game</source> <translation>Spiel</translation> </message> <message> - <location line="+1"/> <source>Go</source> <translation>Los</translation> </message> <message> - <location line="+1"/> <source>iTouch</source> <translation>iTouch</translation> </message> <message> - <location line="+1"/> <source>Logoff</source> <translation>Logoff</translation> </message> <message> - <location line="+1"/> <source>Market</source> <translation>Markt</translation> </message> <message> - <location line="+1"/> <source>Meeting</source> <translation>Versammlung</translation> </message> <message> - <location line="+1"/> <source>Keyboard Menu</source> <translation>Tastaturmenü</translation> </message> <message> - <location line="+1"/> <source>Menu PB</source> <translation>Menü PB</translation> </message> <message> - <location line="+1"/> <source>My Sites</source> <translation>Meine Orte</translation> </message> <message> - <location line="+1"/> <source>News</source> <translation>Nachrichten</translation> </message> <message> - <location line="+1"/> <source>Home Office</source> <translation>Home Office</translation> </message> <message> - <location line="+1"/> <source>Option</source> <translation>Option</translation> </message> <message> - <location line="+1"/> <source>Paste</source> <translation>Einfügen</translation> </message> <message> - <location line="+1"/> <source>Phone</source> <translation>Telefon</translation> </message> <message> - <location line="+1"/> <source>Reply</source> <translation>Antworten</translation> </message> <message> - <location line="+1"/> <source>Reload</source> <translation>Neu laden</translation> </message> <message> - <location line="+1"/> <source>Rotate Windows</source> <translation>Fenster rotieren</translation> </message> <message> - <location line="+1"/> <source>Rotation PB</source> <translation>Rotation PB</translation> </message> <message> - <location line="+1"/> <source>Rotation KB</source> <translation>Rotation KB</translation> </message> <message> - <location line="+1"/> <source>Save</source> <translation>Speichern</translation> </message> <message> - <location line="+1"/> <source>Send</source> <translation>Senden</translation> </message> <message> - <location line="+1"/> <source>Spellchecker</source> <translation>Rechtschreibprüfung</translation> </message> <message> - <location line="+1"/> <source>Split Screen</source> <translation>Bildschirm teilen</translation> </message> <message> - <location line="+1"/> <source>Support</source> <translation>Hilfe</translation> </message> <message> - <location line="+1"/> <source>Task Panel</source> <translation>Task-Leiste</translation> </message> <message> - <location line="+1"/> <source>Terminal</source> <translation>Terminal</translation> </message> <message> - <location line="+1"/> <source>Tools</source> <translation>Werkzeuge</translation> </message> <message> - <location line="+1"/> <source>Travel</source> <translation>Reise</translation> </message> <message> - <location line="+1"/> <source>Video</source> <translation>Video</translation> </message> <message> - <location line="+1"/> <source>Word Processor</source> <translation>Textverarbeitung</translation> </message> <message> - <location line="+1"/> <source>XFer</source> <translation>XFer</translation> </message> <message> - <location line="+1"/> <source>Zoom In</source> <translation>Vergrößern</translation> </message> <message> - <location line="+1"/> <source>Zoom Out</source> <translation>Verkleinern</translation> </message> <message> - <location line="+1"/> <source>Away</source> <translation>Abwesend</translation> </message> <message> - <location line="+1"/> <source>Messenger</source> <translation>Messenger</translation> </message> <message> - <location line="+1"/> <source>WebCam</source> <translation>WebCam</translation> </message> <message> - <location line="+1"/> <source>Mail Forward</source> <translation>Weiterleitung</translation> </message> <message> - <location line="+1"/> <source>Pictures</source> <translation>Bilder</translation> </message> <message> - <location line="+1"/> <source>Music</source> <translation>Musik</translation> </message> <message> - <location line="+1"/> <source>Battery</source> <translation>Batterie</translation> </message> <message> - <location line="+1"/> <source>Bluetooth</source> <translation>Bluetooth</translation> </message> <message> - <location line="+1"/> <source>Wireless</source> <translation>Drahtlos</translation> </message> <message> - <location line="+1"/> <source>Ultra Wide Band</source> <translation>Ultra Wide Band</translation> </message> <message> - <location line="+1"/> <source>Audio Forward</source> <translation>Audio vorspulen</translation> </message> <message> - <location line="+1"/> <source>Audio Repeat</source> <translation>Audio wiederholen</translation> </message> <message> - <location line="+1"/> <source>Audio Random Play</source> <translation>Audio zufällige Auswahl spielen</translation> </message> <message> - <location line="+1"/> <source>Subtitle</source> <translation>Untertitel</translation> </message> <message> - <location line="+1"/> <source>Audio Cycle Track</source> <translation>Audiospur wechseln</translation> </message> <message> - <location line="+1"/> <source>Time</source> <translation>Zeit</translation> </message> <message> - <location line="+2"/> <source>View</source> <translation>Ansicht</translation> </message> <message> - <location line="+1"/> <source>Top Menu</source> <translation>Hauptmenü</translation> </message> <message> - <location line="+1"/> <source>Suspend</source> <translation>Pause</translation> </message> <message> - <location line="+1"/> <source>Hibernate</source> <translation>Hibernate</translation> </message> <message> - <location line="+4"/> <source>Print Screen</source> <translation>Bildschirm drucken</translation> </message> <message> - <location line="+1"/> <source>Page Up</source> <translation>Bild aufwärts</translation> </message> <message> - <location line="+1"/> <source>Page Down</source> <translation>Bild abwärts</translation> </message> <message> - <location line="+1"/> <source>Caps Lock</source> <translation>Feststelltaste</translation> </message> <message> - <location line="+1"/> <source>Num Lock</source> <translation>Zahlen-Feststelltaste</translation> </message> <message> - <location line="+1"/> <source>Number Lock</source> <translation>Zahlen-Feststelltaste</translation> </message> <message> - <location line="+1"/> <source>Scroll Lock</source> <translation>Rollen-Feststelltaste</translation> </message> <message> - <location line="+1"/> <source>Insert</source> <translation>Einfügen</translation> </message> <message> - <location line="+1"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+1"/> <source>Escape</source> <translation>Escape</translation> </message> <message> - <location line="+1"/> <source>System Request</source> <translation>System Request</translation> </message> <message> - <location line="-18"/> - <location line="+22"/> <source>Select</source> <translation>Auswählen</translation> </message> <message> - <location line="+1"/> <source>Yes</source> <translation>Ja</translation> </message> <message> - <location line="+1"/> <source>No</source> <translation>Nein</translation> </message> <message> - <location line="+4"/> <source>Context1</source> <translation>Kontext1</translation> </message> <message> - <location line="+1"/> <source>Context2</source> <translation>Kontext2</translation> </message> <message> - <location line="+1"/> <source>Context3</source> <translation>Kontext3</translation> </message> <message> - <location line="+1"/> <source>Context4</source> <translation>Kontext4</translation> </message> <message> - <location line="+2"/> <source>Call</source> <extracomment>Button to start a call (note: a separate button is used to end the call)</extracomment> <translation>Anruf</translation> </message> <message> - <location line="+2"/> <source>Hangup</source> <extracomment>Button to end a call (note: a separate button is used to start the call)</extracomment> <translation>Auflegen</translation> </message> <message> - <location line="+2"/> <source>Toggle Call/Hangup</source> <extracomment>Button that will hang up if we're in call, or make a call if we're not.</extracomment> <translation>Anrufen/Aufhängen</translation> </message> <message> - <location line="+1"/> <source>Flip</source> <translation>Umdrehen</translation> </message> <message> - <location line="+2"/> <source>Voice Dial</source> <extracomment>Button to trigger voice dialling</extracomment> <translation>Sprachwahl</translation> </message> <message> - <location line="+2"/> <source>Last Number Redial</source> <extracomment>Button to redial the last number called</extracomment> <translation>Wahlwiederholung</translation> </message> <message> - <location line="+2"/> <source>Camera Shutter</source> <extracomment>Button to trigger the camera shutter (take a picture)</extracomment> <translation>Auslöser</translation> </message> <message> - <location line="+2"/> <source>Camera Focus</source> <extracomment>Button to focus the camera</extracomment> <translation>Scharfstellen</translation> </message> <message> - <location line="+4"/> <source>Kanji</source> <translation>Kanji</translation> </message> <message> - <location line="+1"/> <source>Muhenkan</source> <translation>Muhenkan</translation> </message> <message> - <location line="+1"/> <source>Henkan</source> <translation>Henkan</translation> </message> <message> - <location line="+1"/> <source>Romaji</source> <translation>Romaji</translation> </message> <message> - <location line="+1"/> <source>Hiragana</source> <translation>Hiragana</translation> </message> <message> - <location line="+1"/> <source>Katakana</source> <translation>Katakana</translation> </message> <message> - <location line="+1"/> <source>Hiragana Katakana</source> <translation>Hiragana Katakana</translation> </message> <message> - <location line="+1"/> <source>Zenkaku</source> <translation>Zenkaku</translation> </message> <message> - <location line="+1"/> <source>Hankaku</source> <translation>Hankaku</translation> </message> <message> - <location line="+1"/> <source>Zenkaku Hankaku</source> <translation>Zenkaku Hankaku</translation> </message> <message> - <location line="+1"/> <source>Touroku</source> <translation>Touroku</translation> </message> <message> - <location line="+1"/> <source>Massyo</source> <translation>Massyo</translation> </message> <message> - <location line="+1"/> <source>Kana Lock</source> <translation>Kana Lock</translation> </message> <message> - <location line="+1"/> <source>Kana Shift</source> <translation>Kana Shift</translation> </message> <message> - <location line="+1"/> <source>Eisu Shift</source> <translation>Eisu Shift</translation> </message> <message> - <location line="+1"/> <source>Eisu toggle</source> <translation>Eisu toggle</translation> </message> <message> - <location line="+1"/> <source>Code input</source> <translation>Code-Eingabe</translation> </message> <message> - <location line="+1"/> <source>Multiple Candidate</source> <translation>Mehrere Vorschläge</translation> </message> <message> - <location line="+1"/> <source>Previous Candidate</source> <translation>Vorangegangener Vorschlag</translation> </message> <message> - <location line="+4"/> <source>Hangul</source> <translation>Hangul</translation> </message> <message> - <location line="+1"/> <source>Hangul Start</source> <translation>Hangul Anfang</translation> </message> <message> - <location line="+1"/> <source>Hangul End</source> <translation>Hangul Ende</translation> </message> <message> - <location line="+1"/> <source>Hangul Hanja</source> <translation>Hangul Hanja</translation> </message> <message> - <location line="+1"/> <source>Hangul Jamo</source> <translation>Hangul Jamo</translation> </message> <message> - <location line="+1"/> <source>Hangul Romaja</source> <translation>Hangul Romaja</translation> </message> <message> - <location line="+1"/> <source>Hangul Jeonja</source> <translation>Hangul Jeonja</translation> </message> <message> - <location line="+1"/> <source>Hangul Banja</source> <translation>Hangul Banja</translation> </message> <message> - <location line="+1"/> <source>Hangul PreHanja</source> <translation>Hangul PreHanja</translation> </message> <message> - <location line="+1"/> <source>Hangul PostHanja</source> <translation>Hangul PostHanja</translation> </message> <message> - <location line="+1"/> <source>Hangul Special</source> <translation>Hangul Special</translation> </message> <message> - <location line="+602"/> - <location line="+135"/> <source>Ctrl</source> <translation>Strg</translation> </message> <message> - <location line="-134"/> - <location line="+138"/> <source>Shift</source> <translation>Umschalt</translation> </message> <message> - <location line="-137"/> - <location line="+135"/> <source>Alt</source> <translation>Alt</translation> </message> <message> - <location line="-134"/> - <location line="+130"/> <source>Meta</source> <translation>Meta</translation> </message> <message> - <location line="-40"/> <source>+</source> <translation>+</translation> </message> <message> - <location line="+61"/> <source>F%1</source> <translation>F%1</translation> </message> <message> - <location line="-934"/> <source>Home Page</source> <translation>Startseite</translation> </message> @@ -7962,27 +6323,22 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSlider</name> <message> - <location filename="../src/plugins/accessible/widgets/rangecontrols.cpp" line="+151"/> <source>Page left</source> <translation>Eine Seite nach links</translation> </message> <message> - <location line="+0"/> <source>Page up</source> <translation>Eine Seite nach oben</translation> </message> <message> - <location line="+2"/> <source>Position</source> <translation>Position</translation> </message> <message> - <location line="+3"/> <source>Page right</source> <translation>Eine Seite nach rechts</translation> </message> <message> - <location line="+0"/> <source>Page down</source> <translation>Eine Seite nach unten</translation> </message> @@ -7990,72 +6346,58 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSocks5SocketEngine</name> <message> - <location filename="../src/network/socket/qsocks5socketengine.cpp" line="-67"/> <source>Connection to proxy refused</source> <translation>Der Proxy-Server hat den Aufbau einer Verbindung verweigert</translation> </message> <message> - <location line="+4"/> <source>Connection to proxy closed prematurely</source> <translation>Der Proxy-Server hat die Verbindung vorzeitig beendet</translation> </message> <message> - <location line="+4"/> <source>Proxy host not found</source> <translation>Der Proxy-Server konnte nicht gefunden werden</translation> </message> <message> - <location line="+5"/> <source>Connection to proxy timed out</source> <translation>Bei der Verbindung mit dem Proxy-Server wurde ein Zeitlimit überschritten</translation> </message> <message> - <location line="+17"/> <source>Proxy authentication failed</source> <translation>Die Authentifizierung beim Proxy-Server schlug fehl</translation> </message> <message> - <location line="+1"/> <source>Proxy authentication failed: %1</source> <translation>Die Authentifizierung beim Proxy-Server schlug fehl: %1</translation> </message> <message> - <location line="+9"/> <source>SOCKS version 5 protocol error</source> <translation>Protokoll-Fehler (SOCKS version 5)</translation> </message> <message> - <location line="+19"/> <source>General SOCKSv5 server failure</source> <translation>Allgemeiner Fehler bei der Kommunikation mit dem SOCKSv5-Server</translation> </message> <message> - <location line="+4"/> <source>Connection not allowed by SOCKSv5 server</source> <translation>Der SOCKSv5-Server hat die Verbindung verweigert</translation> </message> <message> - <location line="+16"/> <source>TTL expired</source> <translation>TTL verstrichen</translation> </message> <message> - <location line="+4"/> <source>SOCKSv5 command not supported</source> <translation>Dieses SOCKSv5-Kommando wird nicht unterstützt</translation> </message> <message> - <location line="+4"/> <source>Address type not supported</source> <translation>Dieser Adresstyp wird nicht unterstützt</translation> </message> <message> - <location line="+5"/> <source>Unknown SOCKSv5 proxy error code 0x%1</source> <translation>Unbekannten Fehlercode vom SOCKSv5-Proxy-Server erhalten: 0x%1</translation> </message> <message> - <location line="+689"/> <source>Network operation timed out</source> <translation>Das Zeitlimit für die Operation wurde überschritten</translation> </message> @@ -8063,32 +6405,26 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSoftKeyManager</name> <message> - <location filename="../src/gui/kernel/qsoftkeymanager.cpp" line="+63"/> <source>Ok</source> <translation>Ok</translation> </message> <message> - <location line="+3"/> <source>Select</source> <translation>Auswählen</translation> </message> <message> - <location line="+3"/> <source>Done</source> <translation>Fertig</translation> </message> <message> - <location line="+3"/> <source>Options</source> <translation>Optionen</translation> </message> <message> - <location line="+3"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location filename="../src/gui/kernel/qsoftkeymanager_s60.cpp" line="+321"/> <source>Exit</source> <translation>Beenden</translation> </message> @@ -8096,12 +6432,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSpinBox</name> <message> - <location filename="../src/plugins/accessible/widgets/rangecontrols.cpp" line="-574"/> <source>More</source> <translation>Mehr</translation> </message> <message> - <location line="+2"/> <source>Less</source> <translation>Weniger</translation> </message> @@ -8109,56 +6443,42 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSql</name> <message> - <location filename="../src/qt3support/sql/q3sqlmanager_p.cpp" line="+890"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+1"/> <source>Delete this record?</source> <translation>Diesen Datensatz löschen?</translation> </message> <message> - <location line="+1"/> - <location line="+16"/> - <location line="+36"/> <source>Yes</source> <translation>Ja</translation> </message> <message> - <location line="-51"/> - <location line="+16"/> - <location line="+36"/> <source>No</source> <translation>Nein</translation> </message> <message> - <location line="-44"/> <source>Insert</source> <translation>Einfügen</translation> </message> <message> - <location line="+2"/> <source>Update</source> <translation>Aktualisieren</translation> </message> <message> - <location line="+4"/> <source>Save edits?</source> <translation>Änderungen speichern?</translation> </message> <message> - <location line="+3"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location line="+32"/> <source>Confirm</source> <translation>Bestätigen</translation> </message> <message> - <location line="+1"/> <source>Cancel your edits?</source> <translation>Änderungen verwerfen?</translation> </message> @@ -8166,177 +6486,142 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSslSocket</name> <message> - <location filename="../src/network/ssl/qsslsocket_openssl.cpp" line="+550"/> <source>Unable to write data: %1</source> <translation>Die Daten konnten nicht geschrieben werden: %1</translation> </message> <message> - <location line="+63"/> <source>Unable to decrypt data: %1</source> <translation>Die Daten konnten nicht entschlüsselt werden: %1</translation> </message> <message> - <location line="+76"/> <source>Error while reading: %1</source> <translation>Beim Lesen ist ein Fehler aufgetreten: %1</translation> </message> <message> - <location line="+96"/> <source>Error during SSL handshake: %1</source> <translation>Im Ablauf des SSL-Protokolls ist ein Fehler aufgetreten: %1</translation> </message> <message> - <location line="-524"/> <source>Error creating SSL context (%1)</source> <translation>Es konnte keine SSL-Kontextstruktur erzeugt werden (%1)</translation> </message> <message> - <location line="+25"/> <source>Invalid or empty cipher list (%1)</source> <translation>Ungültige oder leere Schlüsselliste (%1)</translation> </message> <message> - <location line="+45"/> <source>Private key does not certify public key, %1</source> <translation>Der private Schlüssel passt nicht zum öffentlichen Schlüssel, %1</translation> </message> <message> - <location line="+20"/> <source>Error creating SSL session, %1</source> <translation>Es konnte keine SSL-Sitzung erzeugt werden, %1</translation> </message> <message> - <location line="+15"/> <source>Error creating SSL session: %1</source> <translation>Es konnte keine SSL-Sitzung erzeugt werden: %1</translation> </message> <message> - <location line="-64"/> <source>Cannot provide a certificate with no key, %1</source> <translation>Ohne Schlüssel kann kein Zertifikat zur Verfügung gestellt werden, %1</translation> </message> <message> - <location line="+7"/> <source>Error loading local certificate, %1</source> <translation>Das lokale Zertifikat konnte nicht geladen werden, %1</translation> </message> <message> - <location line="+15"/> <source>Error loading private key, %1</source> <translation>Der private Schlüssel konnte nicht geladen werden, %1</translation> </message> <message> - <location filename="../src/network/ssl/qsslerror.cpp" line="+213"/> <source>No error</source> <translation>Kein Fehler</translation> </message> <message> - <location line="+3"/> <source>The issuer certificate could not be found</source> <translation>Das Zertifikat des Ausstellers konnte nicht gefunden werden</translation> </message> <message> - <location line="+3"/> <source>The certificate signature could not be decrypted</source> <translation>Die Signatur des Zertifikats konnte nicht entschlüsselt werden</translation> </message> <message> - <location line="+3"/> <source>The public key in the certificate could not be read</source> <translation>Der öffentliche Schlüssel konnte nicht gelesen werden</translation> </message> <message> - <location line="+3"/> <source>The signature of the certificate is invalid</source> <translation>Die Signatur des Zertifikats ist ungültig</translation> </message> <message> - <location line="+3"/> <source>The certificate is not yet valid</source> <translation>Das Zertifikat ist noch nicht gültig</translation> </message> <message> - <location line="+3"/> <source>The certificate has expired</source> <translation>Die Gültigkeit des Zertifikats ist abgelaufen</translation> </message> <message> - <location line="+3"/> <source>The certificate's notBefore field contains an invalid time</source> <translation>Das Feld 'notBefore' des Zertifikats enthält eine ungültige Zeit</translation> </message> <message> - <location line="+3"/> <source>The certificate's notAfter field contains an invalid time</source> <translation>Das Feld 'notAfter' des Zertifikats enthält eine ungültige Zeit</translation> </message> <message> - <location line="+3"/> <source>The certificate is self-signed, and untrusted</source> <translation>Das Zertifikat ist selbstsigniert und daher nicht vertrauenswürdig</translation> </message> <message> - <location line="+3"/> <source>The root certificate of the certificate chain is self-signed, and untrusted</source> <translation>Das oberste Zertifikat der Kette ist selbstsigniert und daher nicht vertrauenswürdig</translation> </message> <message> - <location line="+3"/> <source>The issuer certificate of a locally looked up certificate could not be found</source> <translation>Das Zertifikat des Ausstellers eines lokal gefundenen Zertifikats konnte nicht gefunden werden</translation> </message> <message> - <location line="+3"/> <source>No certificates could be verified</source> <translation>Keines der Zertifikate konnte verifiziert werden</translation> </message> <message> - <location line="+3"/> <source>One of the CA certificates is invalid</source> <translation>Eines der Zertifikate der Zertifizierungsstelle ist ungültig</translation> </message> <message> - <location line="+3"/> <source>The basicConstraints path length parameter has been exceeded</source> <translation>Die Länge des basicConstraints-Pfades wurde überschritten</translation> </message> <message> - <location line="+3"/> <source>The supplied certificate is unsuitable for this purpose</source> <translation>Das angegebene Zertifikat kann in diesem Fall nicht verwendet werden</translation> </message> <message> - <location line="+3"/> <source>The root CA certificate is not trusted for this purpose</source> <translation>Das oberste Zertifikat der Zertifizierungsstelle ist für diesen Fall nicht vertrauenswürdig</translation> </message> <message> - <location line="+3"/> <source>The root CA certificate is marked to reject the specified purpose</source> <translation>Das oberste Zertifikat der Zertifizierungsstelle weist diesen Fall auf Grund einer speziellen Kennzeichnung zurück</translation> </message> <message> - <location line="+3"/> <source>The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate</source> <translation>Das Zertifikat des betrachteten Ausstellers wurde zurückgewiesen da sein Subjektname nicht dem Namen des Austellers des aktuellen Zertifikats entspricht</translation> </message> <message> - <location line="+4"/> <source>The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate</source> <translation>Das Zertifikat des betrachteten Ausstellers wurde zurückgewiesen da Ausstellername und Seriennummer vorhanden sind und nicht dem Bezeichner der Zertifizierungsstelle des aktuellen Zertifikats entsprechen</translation> </message> <message> - <location line="+5"/> <source>The peer did not present any certificate</source> <translation>Die Gegenstelle hat kein Zertifikat angegeben</translation> </message> <message> - <location line="+3"/> <source>The host name did not match any of the valid hosts for this certificate</source> <translation>Der Name des Hosts ist keiner aus der Liste der für dieses Zertifikat gültigen Hosts</translation> </message> <message> - <location line="+6"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> @@ -8344,22 +6629,18 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QStateMachine</name> <message> - <location filename="../src/corelib/statemachine/qstatemachine.cpp" line="+1028"/> <source>Missing initial state in compound state '%1'</source> <translation>Der Anfangszustand des zusammengesetzten Zustands '%1' fehlt</translation> </message> <message> - <location line="+7"/> <source>Missing default state in history state '%1'</source> <translation>Der Anfangszustand im Verlauf bei Zustand '%1' fehlt</translation> </message> <message> - <location line="+7"/> <source>No common ancestor for targets and source of transition from state '%1'</source> <translation>Die Ziele und die Quelle des Übergangs vom Zustand '%1' haben keinen gemeinsamen Ursprung</translation> </message> <message> - <location line="+4"/> <source>Unknown error</source> <translation>Unbekannter Fehler</translation> </message> @@ -8367,30 +6648,22 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QSystemSemaphore</name> <message> - <location filename="../src/corelib/kernel/qsystemsemaphore_unix.cpp" line="-46"/> <source>%1: does not exist</source> <translation>%1: Nicht existent</translation> </message> <message> - <location line="+5"/> - <location filename="../src/corelib/kernel/qsystemsemaphore_win.cpp" line="+66"/> <source>%1: out of resources</source> <translation>%1: Keine Ressourcen mehr verfügbar</translation> </message> <message> - <location line="-13"/> - <location filename="../src/corelib/kernel/qsystemsemaphore_win.cpp" line="+4"/> <source>%1: permission denied</source> <translation>%1: Zugriff verweigert</translation> </message> <message> - <location line="+4"/> <source>%1: already exists</source> <translation>%1: Existiert bereits</translation> </message> <message> - <location line="+13"/> - <location filename="../src/corelib/kernel/qsystemsemaphore_win.cpp" line="+3"/> <source>%1: unknown error %2</source> <translation>%1: Unbekannter Fehler %2</translation> </message> @@ -8398,12 +6671,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QTDSDriver</name> <message> - <location filename="../src/sql/drivers/tds/qsql_tds.cpp" line="+595"/> <source>Unable to open connection</source> <translation>Die Datenbankverbindung kann nicht geöffnet werden</translation> </message> <message> - <location line="+5"/> <source>Unable to use database</source> <translation>Die Datenbank kann nicht verwendet werden</translation> </message> @@ -8411,12 +6682,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QTabBar</name> <message> - <location filename="../src/plugins/accessible/widgets/complexwidgets.cpp" line="-326"/> <source>Scroll Left</source> <translation>Nach links scrollen</translation> </message> <message> - <location line="+0"/> <source>Scroll Right</source> <translation>Nach rechts scrollen</translation> </message> @@ -8424,7 +6693,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QTcpServer</name> <message> - <location filename="../src/network/socket/qtcpserver.cpp" line="+292"/> <source>Operation on socket is not supported</source> <translation>Diese Socket-Operation wird nicht unterstützt</translation> </message> @@ -8432,42 +6700,34 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QTextControl</name> <message> - <location filename="../src/gui/text/qtextcontrol.cpp" line="+2046"/> <source>&Undo</source> <translation>&Rückgängig</translation> </message> <message> - <location line="+2"/> <source>&Redo</source> <translation>Wieder&herstellen</translation> </message> <message> - <location line="+4"/> <source>Cu&t</source> <translation>&Ausschneiden</translation> </message> <message> - <location line="+5"/> <source>&Copy</source> <translation>&Kopieren</translation> </message> <message> - <location line="+7"/> <source>Copy &Link Location</source> <translation>&Link-Adresse kopieren</translation> </message> <message> - <location line="+6"/> <source>&Paste</source> <translation>Einf&ügen</translation> </message> <message> - <location line="+3"/> <source>Delete</source> <translation>Löschen</translation> </message> <message> - <location line="+7"/> <source>Select All</source> <translation>Alles auswählen</translation> </message> @@ -8475,14 +6735,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QToolButton</name> <message> - <location filename="../src/plugins/accessible/widgets/simplewidgets.cpp" line="+310"/> - <location line="+6"/> <source>Press</source> <translation>Drücken</translation> </message> <message> - <location line="-4"/> - <location line="+8"/> <source>Open</source> <translation>Öffnen</translation> </message> @@ -8490,7 +6746,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QUdpSocket</name> <message> - <location filename="../src/network/socket/qudpsocket.cpp" line="+189"/> <source>This platform does not support IPv6</source> <translation>Diese Plattform unterstützt kein IPv6</translation> </message> @@ -8498,12 +6753,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QUndoGroup</name> <message> - <location filename="../src/gui/util/qundogroup.cpp" line="+385"/> <source>Undo</source> <translation>Rückgängig</translation> </message> <message> - <location line="+28"/> <source>Redo</source> <translation>Wiederherstellen</translation> </message> @@ -8511,7 +6764,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QUndoModel</name> <message> - <location filename="../src/gui/util/qundoview.cpp" line="+101"/> <source><empty></source> <translation><leer></translation> </message> @@ -8519,12 +6771,10 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QUndoStack</name> <message> - <location filename="../src/gui/util/qundostack.cpp" line="+832"/> <source>Undo</source> <translation>Rückgängig</translation> </message> <message> - <location line="+27"/> <source>Redo</source> <translation>Wiederherstellen</translation> </message> @@ -8532,57 +6782,46 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QUnicodeControlCharacterMenu</name> <message> - <location filename="../src/gui/text/qtextcontrol.cpp" line="+899"/> <source>LRM Left-to-right mark</source> <translation>LRM Left-to-right mark</translation> </message> <message> - <location line="+1"/> <source>RLM Right-to-left mark</source> <translation>RLM Right-to-left mark</translation> </message> <message> - <location line="+1"/> <source>ZWJ Zero width joiner</source> <translation>ZWJ Zero width joiner</translation> </message> <message> - <location line="+1"/> <source>ZWNJ Zero width non-joiner</source> <translation>ZWNJ Zero width non-joiner</translation> </message> <message> - <location line="+1"/> <source>ZWSP Zero width space</source> <translation>ZWSP Zero width space</translation> </message> <message> - <location line="+1"/> <source>LRE Start of left-to-right embedding</source> <translation>LRE Start of left-to-right embedding</translation> </message> <message> - <location line="+1"/> <source>RLE Start of right-to-left embedding</source> <translation>RLE Start of right-to-left embedding</translation> </message> <message> - <location line="+1"/> <source>LRO Start of left-to-right override</source> <translation>LRO Start of left-to-right override</translation> </message> <message> - <location line="+1"/> <source>RLO Start of right-to-left override</source> <translation>RLO Start of right-to-left override</translation> </message> <message> - <location line="+1"/> <source>PDF Pop directional formatting</source> <translation>PDF Pop directional formatting</translation> </message> <message> - <location line="+6"/> <source>Insert Unicode control character</source> <translation>Unicode-Kontrollzeichen einfügen</translation> </message> @@ -8590,32 +6829,26 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QWebFrame</name> <message> - <location filename="../src/3rdparty/webkit/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp" line="+753"/> <source>Request cancelled</source> <translation>Anfrage wurde abgebrochen</translation> </message> <message> - <location line="+19"/> <source>Request blocked</source> <translation>Anfrage wurde abgewiesen</translation> </message> <message> - <location line="+7"/> <source>Cannot show URL</source> <translation>Der URL kann nicht angezeigt werden</translation> </message> <message> - <location line="+6"/> <source>Frame load interrupted by policy change</source> <translation>Das Laden des Rahmens wurde durch eine Änderung der Richtlinien unterbrochen</translation> </message> <message> - <location line="+6"/> <source>Cannot show mimetype</source> <translation>Dieser Mime-Typ kann nicht angezeigt werden</translation> </message> <message> - <location line="+6"/> <source>File does not exist</source> <translation>Die Datei existiert nicht</translation> </message> @@ -8623,621 +6856,515 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QWebPage</name> <message> - <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="+44"/> <source>Submit</source> <comment>default label for Submit buttons in forms on web pages</comment> <translation>Senden</translation> </message> <message> - <location line="+5"/> <source>Submit</source> <comment>Submit (input element) alt text for <input> elements with no alt, title, or value</comment> <translation>Senden</translation> </message> <message> - <location line="+5"/> <source>Reset</source> <comment>default label for Reset buttons in forms on web pages</comment> <translation>Rücksetzen</translation> </message> <message> - <location line="+16"/> <source>Choose File</source> <comment>title for file button used in HTML forms</comment> <translation>Durchsuchen</translation> </message> <message> - <location line="+5"/> <source>No file selected</source> <comment>text to display in file button used in HTML forms when no file is selected</comment> <translation>Es ist keine Datei ausgewählt</translation> </message> <message> - <location line="+5"/> <source>Open in New Window</source> <comment>Open in New Window context menu item</comment> <translation>In neuem Fenster öffnen</translation> </message> <message> - <location line="+5"/> <source>Save Link...</source> <comment>Download Linked File context menu item</comment> <translation>Ziel speichern unter...</translation> </message> <message> - <location line="+5"/> <source>Copy Link</source> <comment>Copy Link context menu item</comment> <translation>Link-Adresse kopieren</translation> </message> <message> - <location line="+5"/> <source>Open Image</source> <comment>Open Image in New Window context menu item</comment> <translation>Grafik in neuem Fenster öffnen</translation> </message> <message> - <location line="+5"/> <source>Save Image</source> <comment>Download Image context menu item</comment> <translation>Grafik speichern unter</translation> </message> <message> - <location line="+5"/> <source>Copy Image</source> <comment>Copy Link context menu item</comment> <translation>Grafik kopieren</translation> </message> <message> - <location line="+5"/> <source>Open Frame</source> <comment>Open Frame in New Window context menu item</comment> <translation>Frame öffnen</translation> </message> <message> - <location line="+5"/> <source>Copy</source> <comment>Copy context menu item</comment> <translation>Kopieren</translation> </message> <message> - <location line="+5"/> <source>Go Back</source> <comment>Back context menu item</comment> <translation>Zurück</translation> </message> <message> - <location line="+5"/> <source>Go Forward</source> <comment>Forward context menu item</comment> <translation>Vor</translation> </message> <message> - <location line="+5"/> <source>Stop</source> <comment>Stop context menu item</comment> <translation>Abbrechen</translation> </message> <message> - <location line="+5"/> <source>Reload</source> <comment>Reload context menu item</comment> <translation>Neu laden</translation> </message> <message> - <location line="+5"/> <source>Cut</source> <comment>Cut context menu item</comment> <translation>Ausschneiden</translation> </message> <message> - <location line="+5"/> <source>Paste</source> <comment>Paste context menu item</comment> <translation>Einfügen</translation> </message> <message> - <location line="+5"/> <source>No Guesses Found</source> <comment>No Guesses Found context menu item</comment> <translation>Keine Vorschläge gefunden</translation> </message> <message> - <location line="+5"/> <source>Ignore</source> <comment>Ignore Spelling context menu item</comment> <translation>Ignorieren</translation> </message> <message> - <location line="+5"/> <source>Add To Dictionary</source> <comment>Learn Spelling context menu item</comment> <translation>In Wörterbuch aufnehmen</translation> </message> <message> - <location line="+5"/> <source>Search The Web</source> <comment>Search The Web context menu item</comment> <translation>Im Web suchen</translation> </message> <message> - <location line="+5"/> <source>Look Up In Dictionary</source> <comment>Look Up in Dictionary context menu item</comment> <translation>Im Wörterbuch nachschauen</translation> </message> <message> - <location line="+5"/> <source>Open Link</source> <comment>Open Link context menu item</comment> <translation>Adresse öffnen</translation> </message> <message> - <location line="+5"/> <source>Ignore</source> <comment>Ignore Grammar context menu item</comment> <translation>Ignorieren</translation> </message> <message> - <location line="+5"/> <source>Spelling</source> <comment>Spelling and Grammar context sub-menu item</comment> <translation>Rechtschreibung</translation> </message> <message> - <location line="+5"/> <source>Show Spelling and Grammar</source> <comment>menu item title</comment> <translation>Rechtschreibung und Grammatik anzeigen</translation> </message> <message> - <location line="+1"/> <source>Hide Spelling and Grammar</source> <comment>menu item title</comment> <translation>Rechtschreibung und Grammatik nicht anzeigen</translation> </message> <message> - <location line="+5"/> <source>Check Spelling</source> <comment>Check spelling context menu item</comment> <translation>Rechtschreibung prüfen</translation> </message> <message> - <location line="+5"/> <source>Check Spelling While Typing</source> <comment>Check spelling while typing context menu item</comment> <translation>Rechtschreibung während des Schreibens überprüfen</translation> </message> <message> - <location line="+5"/> <source>Check Grammar With Spelling</source> <comment>Check grammar with spelling context menu item</comment> <translation>Grammatik mit Rechtschreibung zusammen überprüfen</translation> </message> <message> - <location line="+5"/> <source>Fonts</source> <comment>Font context sub-menu item</comment> <translation>Fonts</translation> </message> <message> - <location line="+5"/> <source>Bold</source> <comment>Bold context menu item</comment> <translation>Fett</translation> </message> <message> - <location line="+5"/> <source>Italic</source> <comment>Italic context menu item</comment> <translation>Kursiv</translation> </message> <message> - <location line="+5"/> <source>Underline</source> <comment>Underline context menu item</comment> <translation>Unterstrichen</translation> </message> <message> - <location line="+5"/> <source>Outline</source> <comment>Outline context menu item</comment> <translation>Umriss</translation> </message> <message> - <location line="+5"/> <source>Direction</source> <comment>Writing direction context sub-menu item</comment> <translation>Schreibrichtung</translation> </message> <message> - <location line="+5"/> <source>Text Direction</source> <comment>Text direction context sub-menu item</comment> <translation>Schreibrichtung</translation> </message> <message> - <location line="+5"/> <source>Default</source> <comment>Default writing direction context menu item</comment> <translation>Vorgabe</translation> </message> <message> - <location line="+5"/> <source>Left to Right</source> <comment>Left to Right context menu item</comment> <translation>Von links nach rechts</translation> </message> <message> - <location line="+5"/> <source>Right to Left</source> <comment>Right to Left context menu item</comment> <translation>Von rechts nach links</translation> </message> <message> - <location line="+100"/> <source>Missing Plug-in</source> <comment>Label text to be used when a plug-in is missing</comment> <translation>Fehlendes Plugin</translation> </message> <message> - <location line="+20"/> <source>Loading...</source> <comment>Media controller status message when the media is loading</comment> <translation>Lädt...</translation> </message> <message> - <location line="+5"/> <source>Live Broadcast</source> <comment>Media controller status message when watching a live broadcast</comment> <translation>Live-Übertragung</translation> </message> <message> - <location line="+8"/> <source>Audio Element</source> <comment>Media controller element</comment> <translation>Audio-Element</translation> </message> <message> - <location line="+2"/> <source>Video Element</source> <comment>Media controller element</comment> <translation>Video-Element</translation> </message> <message> - <location line="+2"/> <source>Mute Button</source> <comment>Media controller element</comment> <translation>Stummschalttaste</translation> </message> <message> - <location line="+2"/> <source>Unmute Button</source> <comment>Media controller element</comment> <translation>Abstelltaste für Stummschaltung</translation> </message> <message> - <location line="+2"/> <source>Play Button</source> <comment>Media controller element</comment> <translation>Abspielknopf</translation> </message> <message> - <location line="+2"/> <source>Pause Button</source> <comment>Media controller element</comment> <translation>Pause-Knopf</translation> </message> <message> - <location line="+2"/> <source>Slider</source> <comment>Media controller element</comment> <translation>Schieberegler</translation> </message> <message> - <location line="+2"/> <source>Slider Thumb</source> <comment>Media controller element</comment> <translation>Schieberegler-Griff</translation> </message> <message> - <location line="+2"/> <source>Rewind Button</source> <comment>Media controller element</comment> <translation>Rückspultaste</translation> </message> <message> - <location line="+2"/> <source>Return to Real-time Button</source> <comment>Media controller element</comment> <translation>Kehre zu Echtzeit zurück</translation> </message> <message> - <location line="+2"/> <source>Elapsed Time</source> <comment>Media controller element</comment> <translation>Spielzeit</translation> </message> <message> - <location line="+2"/> <source>Remaining Time</source> <comment>Media controller element</comment> <translation>Verbleibende Zeit</translation> </message> <message> - <location line="+2"/> <source>Status Display</source> <comment>Media controller element</comment> <translation>Statusanzeige</translation> </message> <message> - <location line="+2"/> <source>Fullscreen Button</source> <comment>Media controller element</comment> <translation>Vollbild-Taste</translation> </message> <message> - <location line="+2"/> <source>Seek Forward Button</source> <comment>Media controller element</comment> <translation>Vorlauftaste</translation> </message> <message> - <location line="+2"/> <source>Seek Back Button</source> <comment>Media controller element</comment> <translation>Rücklauftaste</translation> </message> <message> - <location line="+8"/> <source>Audio element playback controls and status display</source> <comment>Media controller element</comment> <translation>Audio-Steuerung und Statusanzeige</translation> </message> <message> - <location line="+2"/> <source>Video element playback controls and status display</source> <comment>Media controller element</comment> <translation>Video-Steuerung und Statusanzeige</translation> </message> <message> - <location line="+2"/> <source>Mute audio tracks</source> <comment>Media controller element</comment> <translation>Schalte Tonspuren stumm</translation> </message> <message> - <location line="+2"/> <source>Unmute audio tracks</source> <comment>Media controller element</comment> <translation>Stummschaltung der Tonspuren aufheben</translation> </message> <message> - <location line="+2"/> <source>Begin playback</source> <comment>Media controller element</comment> <translation>Abspielen</translation> </message> <message> - <location line="+2"/> <source>Pause playback</source> <comment>Media controller element</comment> <translation>Pause</translation> </message> <message> - <location line="+2"/> <source>Movie time scrubber</source> <comment>Media controller element</comment> <translation>Abspielzeit</translation> </message> <message> - <location line="+2"/> <source>Movie time scrubber thumb</source> <comment>Media controller element</comment> <translation>Griff zur Einstellung der Abspielzeit</translation> </message> <message> - <location line="+2"/> <source>Rewind movie</source> <comment>Media controller element</comment> <translation>Film zurückspulen</translation> </message> <message> - <location line="+2"/> <source>Return streaming movie to real-time</source> <comment>Media controller element</comment> <translation>Setze Film auf Echtzeit zurück</translation> </message> <message> - <location line="+2"/> <source>Current movie time</source> <comment>Media controller element</comment> <translation>Abspielzeit des Films</translation> </message> <message> - <location line="+2"/> <source>Remaining movie time</source> <comment>Media controller element</comment> <translation>Verbleibende Zeit des Films</translation> </message> <message> - <location line="+2"/> <source>Current movie status</source> <comment>Media controller element</comment> <translation>Status des Films</translation> </message> <message> - <location line="+2"/> <source>Play movie in full-screen mode</source> <comment>Media controller element</comment> <translation>Film im Vollbildmodus abspielen</translation> </message> <message> - <location line="+2"/> <source>Seek quickly back</source> <comment>Media controller element</comment> <translation>Schnelles Rückwärtssuchen</translation> </message> <message> - <location line="+2"/> <source>Seek quickly forward</source> <comment>Media controller element</comment> <translation>Schnelles Vorwärtssuchen</translation> </message> <message> - <location line="+9"/> <source>Indefinite time</source> <comment>Media time description</comment> <translation>Unbegrenzte Zeit</translation> </message> <message> - <location line="+9"/> <source>%1 days %2 hours %3 minutes %4 seconds</source> <comment>Media time description</comment> <translation>%1 Tage %2 Stunden %3 Minuten %4 Sekunden</translation> </message> <message> - <location line="+4"/> <source>%1 hours %2 minutes %3 seconds</source> <comment>Media time description</comment> <translation>%1 Stunden %2 Minuten %3 Sekunden</translation> </message> <message> - <location line="+4"/> <source>%1 minutes %2 seconds</source> <comment>Media time description</comment> <translation>%1 Minuten %2 Sekunden</translation> </message> <message> - <location line="+3"/> <source>%1 seconds</source> <comment>Media time description</comment> <translation>%1 Sekunden</translation> </message> <message> - <location line="-225"/> <source>Inspect</source> <comment>Inspect Element context menu item</comment> <translation>Prüfen</translation> </message> <message> - <location line="+5"/> <source>No recent searches</source> <comment>Label for only item in menu that appears when clicking on the search field image, when no searches have been performed</comment> <translation>Es existieren noch keine Suchanfragen</translation> </message> <message> - <location line="+5"/> <source>Recent searches</source> <comment>label for first item in the menu that appears when clicking on the search field image, used as embedded menu title</comment> <translation>Bisherige Suchanfragen</translation> </message> <message> - <location line="+5"/> <source>Clear recent searches</source> <comment>menu item in Recent Searches menu that empties menu's contents</comment> <translation>Gespeicherte Suchanfragen löschen</translation> </message> <message> - <location line="+90"/> <source>Unknown</source> <comment>Unknown filesize FTP directory listing item</comment> <translation>Unbekannt</translation> </message> <message> - <location filename="../src/3rdparty/webkit/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp" line="+253"/> <source>Web Inspector - %2</source> <translation>Web Inspector - %2</translation> </message> <message> - <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="+5"/> <source>%1 (%2x%3 pixels)</source> <comment>Title string for images</comment> <translation>%1 (%2x%3 Pixel)</translation> </message> <message> - <location filename="../src/3rdparty/webkit/WebCore/platform/network/qt/QNetworkReplyHandler.cpp" line="+347"/> <source>Redirection limit reached</source> <translation>Maximal Anzahl von Weiterleitungen wurde erreicht</translation> </message> <message> - <location line="+121"/> <source>Bad HTTP request</source> <translation>Ungültige HTTP-Anforderung</translation> </message> <message> - <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="-306"/> <source>This is a searchable index. Enter search keywords: </source> <comment>text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'</comment> <translation>Dieser Index verfügt über eine Suchfunktion. Geben Sie einen Suchbegriff ein:</translation> </message> <message> - <location filename="../src/3rdparty/webkit/WebCore/platform/qt/ScrollbarQt.cpp" line="+58"/> <source>Scroll here</source> <translation>Hierher scrollen</translation> </message> <message> - <location line="+3"/> <source>Left edge</source> <translation>Linker Rand</translation> </message> <message> - <location line="+0"/> <source>Top</source> <translation>Anfang</translation> </message> <message> - <location line="+1"/> <source>Right edge</source> <translation>Rechter Rand</translation> </message> <message> - <location line="+0"/> <source>Bottom</source> <translation>Ende</translation> </message> <message> - <location line="+3"/> <source>Page left</source> <translation>Eine Seite nach links</translation> </message> <message> - <location line="+0"/> <source>Page up</source> <translation>Eine Seite nach oben</translation> </message> <message> - <location line="+1"/> <source>Page right</source> <translation>Eine Seite nach rechts</translation> </message> <message> - <location line="+0"/> <source>Page down</source> <translation>Eine Seite nach unten</translation> </message> <message> - <location line="+3"/> <source>Scroll left</source> <translation>Nach links scrollen</translation> </message> <message> - <location line="+0"/> <source>Scroll up</source> <translation>Nach oben scrollen</translation> </message> <message> - <location line="+1"/> <source>Scroll right</source> <translation>Nach rechts scrollen</translation> </message> <message> - <location line="+0"/> <source>Scroll down</source> <translation>Nach unten scrollen</translation> </message> <message numerus="yes"> - <location filename="../src/3rdparty/webkit/WebCore/platform/qt/FileChooserQt.cpp" line="+45"/> <source>%n file(s)</source> <comment>number of chosen file</comment> <translation> @@ -9246,237 +7373,190 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> </translation> </message> <message> - <location filename="../src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp" line="+2033"/> <source>JavaScript Alert - %1</source> <translation>JavaScript-Hinweis - %1</translation> </message> <message> - <location line="+17"/> <source>JavaScript Confirm - %1</source> <translation>JavaScript-Bestätigung - %1</translation> </message> <message> - <location line="+20"/> <source>JavaScript Prompt - %1</source> <translation>JavaScript-Eingabeaufforderung - %1</translation> </message> <message> - <location line="+26"/> <source>JavaScript Problem - %1</source> <translation>JavaScript-Problem - %1</translation> </message> <message> - <location line="+0"/> <source>The script on this page appears to have a problem. Do you want to stop the script?</source> <translation>Das Skript dieser Webseite ist fehlerhaft. Möchten Sie es anhalten?</translation> </message> <message> - <location line="+395"/> <source>Move the cursor to the next character</source> <translation>Positionsmarke auf folgendes Zeichen setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the previous character</source> <translation>Positionsmarke auf vorangehendes Zeichen setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the next word</source> <translation>Positionsmarke auf folgendes Wort setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the previous word</source> <translation>Positionsmarke auf vorangehendes Wort setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the next line</source> <translation>Positionsmarke auf folgende Zeile setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the previous line</source> <translation>Positionsmarke auf vorangehende Zeile setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the start of the line</source> <translation>Positionsmarke auf Zeilenanfang setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the end of the line</source> <translation>Positionsmarke auf Zeilenende setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the start of the block</source> <translation>Positionsmarke auf Anfang des Blocks setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the end of the block</source> <translation>Positionsmarke auf Ende des Blocks setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the start of the document</source> <translation>Positionsmarke auf Anfang des Dokumentes setzen</translation> </message> <message> - <location line="+3"/> <source>Move the cursor to the end of the document</source> <translation>Positionsmarke auf Ende des Dokumentes setzen</translation> </message> <message> - <location line="+3"/> <source>Select all</source> <translation>Alles auswählen</translation> </message> <message> - <location line="+3"/> <source>Select to the next character</source> <translation>Bis zum nächsten Zeichen markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the previous character</source> <translation>Bis zum vorherigen Zeichen markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the next word</source> <translation>Bis zum nächsten Wort markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the previous word</source> <translation>Bis zum vorherigen Wort markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the next line</source> <translation>Bis zur nächsten Zeile markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the previous line</source> <translation>Bis zur vorherigen Zeile markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the start of the line</source> <translation>Bis zum Zeilenanfang markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the end of the line</source> <translation>Bis zum Zeilenende markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the start of the block</source> <translation>Bis zum Anfang des Blocks markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the end of the block</source> <translation>Bis zum Ende des Blocks markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the start of the document</source> <translation>Bis zum Anfang des Dokuments markieren</translation> </message> <message> - <location line="+3"/> <source>Select to the end of the document</source> <translation>Bis zum Ende des Dokuments markieren</translation> </message> <message> - <location line="+3"/> <source>Delete to the start of the word</source> <translation>Bis zum Anfang des Wortes löschen</translation> </message> <message> - <location line="+3"/> <source>Delete to the end of the word</source> <translation>Bis zum Ende des Wortes löschen</translation> </message> <message> - <location line="+33"/> <source>Insert a new paragraph</source> <translation>Neuen Abschnitt einfügen</translation> </message> <message> - <location line="+3"/> <source>Insert a new line</source> <translation>Neue Zeile einfügen</translation> </message> <message> - <location line="+4"/> <source>Paste and Match Style</source> <translation>Einfügen und dem Stil anpassen</translation> </message> <message> - <location line="+3"/> <source>Remove formatting</source> <translation>Formatierung entfernen</translation> </message> <message> - <location line="+4"/> <source>Strikethrough</source> <translation>Durchgestrichen</translation> </message> <message> - <location line="+4"/> <source>Subscript</source> <translation>Tiefstellung</translation> </message> <message> - <location line="+4"/> <source>Superscript</source> <translation>Hochstellung</translation> </message> <message> - <location line="+4"/> <source>Insert Bulleted List</source> <translation>Liste mit Punkten einfügen</translation> </message> <message> - <location line="+4"/> <source>Insert Numbered List</source> <translation>Nummerierte Liste einfügen</translation> </message> <message> - <location line="+4"/> <source>Indent</source> <translation>Einrücken</translation> </message> <message> - <location line="+3"/> <source>Outdent</source> <translation>Einrückung aufheben</translation> </message> <message> - <location line="+3"/> <source>Center</source> <translation>Zentrieren</translation> </message> <message> - <location line="+3"/> <source>Justify</source> <translation>Ausrichten</translation> </message> <message> - <location line="+3"/> <source>Align Left</source> <translation>Linksbündig ausrichten</translation> </message> <message> - <location line="+3"/> <source>Align Right</source> <translation>Rechtsbündig ausrichten</translation> </message> @@ -9484,7 +7564,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QWhatsThisAction</name> <message> - <location filename="../src/gui/kernel/qwhatsthis.cpp" line="+527"/> <source>What's This?</source> <translation>Direkthilfe</translation> </message> @@ -9492,7 +7571,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QWidget</name> <message> - <location filename="../src/gui/kernel/qwidget.cpp" line="+5806"/> <source>*</source> <translation>*</translation> </message> @@ -9500,57 +7578,46 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QWizard</name> <message> - <location filename="../src/gui/dialogs/qwizard.cpp" line="+701"/> <source>Cancel</source> <translation>Abbrechen</translation> </message> <message> - <location line="+2"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location line="-14"/> <source>< &Back</source> <translation>< &Zurück</translation> </message> <message> - <location line="+10"/> <source>&Finish</source> <translation>Ab&schließen</translation> </message> <message> - <location line="+4"/> <source>&Help</source> <translation>&Hilfe</translation> </message> <message> - <location line="-14"/> <source>Go Back</source> <translation>Zurück</translation> </message> <message> - <location line="+3"/> <source>Continue</source> <translation>Weiter</translation> </message> <message> - <location line="+5"/> <source>Commit</source> <translation>Anwenden</translation> </message> <message> - <location line="+2"/> <source>Done</source> <translation>Fertig</translation> </message> <message> - <location line="-4"/> <source>&Next</source> <translation>&Weiter</translation> </message> <message> - <location line="+0"/> <source>&Next ></source> <translation>&Weiter ></translation> </message> @@ -9558,69 +7625,54 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QWorkspace</name> <message> - <location filename="../src/gui/widgets/qworkspace.cpp" line="+1089"/> <source>&Restore</source> <translation>Wieder&herstellen</translation> </message> <message> - <location line="+1"/> <source>&Move</source> <translation>Ver&schieben</translation> </message> <message> - <location line="+1"/> <source>&Size</source> <translation>&Größe ändern</translation> </message> <message> - <location line="+2"/> <source>Mi&nimize</source> <translation>M&inimieren</translation> </message> <message> - <location line="+2"/> <source>Ma&ximize</source> <translation>Ma&ximieren</translation> </message> <message> - <location line="+2"/> <source>&Close</source> <translation>Schl&ießen</translation> </message> <message> - <location line="+6"/> <source>Stay on &Top</source> <translation>Im &Vordergrund bleiben</translation> </message> <message> - <location line="-988"/> <source>Minimize</source> <translation>Minimieren</translation> </message> <message> - <location line="+2"/> <source>Restore Down</source> <translation>Wiederherstellen</translation> </message> <message> - <location line="-4"/> <source>Close</source> <translation>Schließen</translation> </message> <message> - <location line="+993"/> - <location line="+1059"/> <source>Sh&ade</source> <translation>&Aufrollen</translation> </message> <message> - <location line="-278"/> - <location line="+60"/> <source>%1 - [%2]</source> <translation>%1 - [%2]</translation> </message> <message> - <location line="+214"/> <source>&Unshade</source> <translation>&Herabrollen</translation> </message> @@ -9628,117 +7680,94 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QXml</name> <message> - <location filename="../src/xml/sax/qxml.cpp" line="+58"/> <source>no error occurred</source> <translation>kein Fehler</translation> </message> <message> - <location line="+1"/> <source>error triggered by consumer</source> <translation>Konsument löste Fehler aus</translation> </message> <message> - <location line="+1"/> <source>unexpected end of file</source> <translation>unerwartetes Ende der Datei</translation> </message> <message> - <location line="+1"/> <source>more than one document type definition</source> <translation>mehrere Dokumenttypdefinitionen</translation> </message> <message> - <location line="+1"/> <source>error occurred while parsing element</source> <translation>Fehler beim Parsen eines Elements</translation> </message> <message> - <location line="+1"/> <source>tag mismatch</source> <translation>Element-Tags sind nicht richtig geschachtelt</translation> </message> <message> - <location line="+1"/> <source>error occurred while parsing content</source> <translation>Fehler beim Parsen des Inhalts eines Elements</translation> </message> <message> - <location line="+1"/> <source>unexpected character</source> <translation>unerwartetes Zeichen</translation> </message> <message> - <location line="+1"/> <source>invalid name for processing instruction</source> <translation>kein gültiger Name für eine Processing-Instruktion</translation> </message> <message> - <location line="+1"/> <source>version expected while reading the XML declaration</source> <translation>fehlende Version beim Parsen der XML-Deklaration</translation> </message> <message> - <location line="+1"/> <source>wrong value for standalone declaration</source> <translation>falscher Wert für die Standalone-Deklaration</translation> </message> <message> - <location line="+3"/> <source>error occurred while parsing document type definition</source> <translation>Fehler beim Parsen der Dokumenttypdefinition</translation> </message> <message> - <location line="+1"/> <source>letter is expected</source> <translation>ein Buchstabe ist an dieser Stelle erforderlich</translation> </message> <message> - <location line="+1"/> <source>error occurred while parsing comment</source> <translation>Fehler beim Parsen eines Kommentars</translation> </message> <message> - <location line="+1"/> <source>error occurred while parsing reference</source> <translation>Fehler beim Parsen einer Referenz</translation> </message> <message> - <location line="+1"/> <source>internal general entity reference not allowed in DTD</source> <translation>in einer DTD ist keine interne allgemeine Entity-Referenz erlaubt</translation> </message> <message> - <location line="+1"/> <source>external parsed general entity reference not allowed in attribute value</source> <translation>in einem Attribut-Wert sind keine externen Entity-Referenzen erlaubt</translation> </message> <message> - <location line="+1"/> <source>external parsed general entity reference not allowed in DTD</source> <translation>in der DTD sind keine externen Entity-Referenzen erlaubt </translation> </message> <message> - <location line="+1"/> <source>unparsed entity reference in wrong context</source> <translation>nicht-analysierte Entity-Referenz im falschen Kontext verwendet</translation> </message> <message> - <location line="+1"/> <source>recursive entities</source> <translation>rekursive Entity</translation> </message> <message> - <location line="+1"/> <source>error in the text declaration of an external entity</source> <translation>Fehler in der Text-Deklaration einer externen Entity</translation> </message> <message> - <location line="-11"/> <source>encoding declaration or standalone declaration expected while reading the XML declaration</source> <translation>fehlende Encoding-Deklaration oder Standalone-Deklaration beim Parsen der XML-Deklaration</translation> </message> <message> - <location line="+1"/> <source>standalone declaration expected while reading the XML declaration</source> <translation>fehlende Standalone-Deklaration beim Parsen der XML Deklaration</translation> </message> @@ -9746,27 +7775,22 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QXmlPatternistCLI</name> <message> - <location filename="../src/xmlpatterns/api/qcoloringmessagehandler.cpp" line="+87"/> <source>Warning in %1, at line %2, column %3: %4</source> <translation>Warnung in %1, bei Zeile %2, Spalte %3: %4</translation> </message> <message> - <location line="+7"/> <source>Warning in %1: %2</source> <translation>Warnung in %1: %2</translation> </message> <message> - <location line="+16"/> <source>Unknown location</source> <translation>unbekannt</translation> </message> <message> - <location line="+14"/> <source>Error %1 in %2, at line %3, column %4: %5</source> <translation>Fehler %1 in %2, bei Zeile %3, Spalte %4: %5</translation> </message> <message> - <location line="+8"/> <source>Error %1 in %2: %3</source> <translation>Fehler %1 in %2: %3</translation> </message> @@ -9774,184 +7798,142 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QXmlStream</name> <message> - <location filename="../src/corelib/xml/qxmlstream.cpp" line="+611"/> - <location filename="../src/corelib/xml/qxmlstream_p.h" line="+1770"/> <source>Extra content at end of document.</source> <translation>Überzähliger Inhalt nach Ende des Dokumentes.</translation> </message> <message> - <location line="+271"/> <source>Invalid entity value.</source> <translation>Ungültiger Entity-Wert.</translation> </message> <message> - <location line="+109"/> <source>Invalid XML character.</source> <translation>Ungültiges XML-Zeichen.</translation> </message> <message> - <location line="+259"/> <source>Sequence ']]>' not allowed in content.</source> <translation>Im Inhalt ist die Zeichenfolge ']]>' nicht erlaubt.</translation> </message> <message> - <location line="+309"/> <source>Namespace prefix '%1' not declared</source> <translation>Der Namensraum-Präfix '%1' wurde nicht deklariert</translation> </message> <message> - <location line="+78"/> <source>Attribute redefined.</source> <translation>Redefinition eines Attributes.</translation> </message> <message> - <location line="+115"/> <source>Unexpected character '%1' in public id literal.</source> <translation>'%1' ist kein gültiges Zeichen in einer public-id-Angabe.</translation> </message> <message> - <location line="+28"/> <source>Invalid XML version string.</source> <translation>Ungültige XML-Versionsangabe.</translation> </message> <message> - <location line="+2"/> <source>Unsupported XML version.</source> <translation>Diese XML-Version wird nicht unterstützt.</translation> </message> <message> - <location line="+23"/> <source>%1 is an invalid encoding name.</source> <translation>%1 ist kein gültiger Name für das Encoding.</translation> </message> <message> - <location line="+7"/> <source>Encoding %1 is unsupported</source> <translation>Das Encoding %1 wird nicht unterstützt</translation> </message> <message> - <location line="+16"/> <source>Standalone accepts only yes or no.</source> <translation>Der Wert für das 'Standalone'-Attribut kann nur 'yes' oder 'no' sein.</translation> </message> <message> - <location line="+2"/> <source>Invalid attribute in XML declaration.</source> <translation>Die XML-Deklaration enthält ein ungültiges Attribut.</translation> </message> <message> - <location line="+16"/> <source>Premature end of document.</source> <translation>Vorzeitiges Ende des Dokuments.</translation> </message> <message> - <location line="+2"/> <source>Invalid document.</source> <translation>Ungültiges Dokument.</translation> </message> <message> - <location line="+40"/> <source>Expected </source> <translation>Es wurde </translation> </message> <message> - <location line="+11"/> <source>, but got '</source> <translation>erwartet, stattdessen erhalten '</translation> </message> <message> - <location line="+4"/> <source>Unexpected '</source> <translation>Ungültig an dieser Stelle ' </translation> </message> <message> - <location line="+225"/> <source>Expected character data.</source> <translation>Es wurden Zeichendaten erwartet.</translation> </message> <message> - <location filename="../src/corelib/xml/qxmlstream_p.h" line="-995"/> <source>Recursive entity detected.</source> <translation>Es wurde eine rekursive Entity festgestellt.</translation> </message> <message> - <location line="+516"/> <source>Start tag expected.</source> <translation>Öffnendes Element erwartet.</translation> </message> <message> - <location line="+222"/> <source>XML declaration not at start of document.</source> <translation>Die XML-Deklaration befindet sich nicht am Anfang des Dokuments.</translation> </message> <message> - <location line="-31"/> <source>NDATA in parameter entity declaration.</source> <translation>Eine Parameter-Entity-Deklaration darf kein NDATA enthalten.</translation> </message> <message> - <location line="+34"/> <source>%1 is an invalid processing instruction name.</source> <translation>%1 ist kein gültiger Name für eine Prozessing-Instruktion.</translation> </message> <message> - <location line="+11"/> <source>Invalid processing instruction name.</source> <translation>Der Name der Prozessing-Instruktion ist ungültig.</translation> </message> <message> - <location filename="../src/corelib/xml/qxmlstream.cpp" line="-536"/> - <location line="+12"/> - <location filename="../src/corelib/xml/qxmlstream_p.h" line="+164"/> - <location line="+53"/> <source>Illegal namespace declaration.</source> <translation>Ungültige Namensraum-Deklaration.</translation> </message> <message> - <location filename="../src/corelib/xml/qxmlstream_p.h" line="+15"/> <source>Invalid XML name.</source> <translation>Ungültiger XML-Name.</translation> </message> <message> - <location line="+23"/> <source>Opening and ending tag mismatch.</source> <translation>Die Anzahl der öffnenden Elemente stimmt nicht mit der Anzahl der schließenden Elemente überein.</translation> </message> <message> - <location line="+18"/> <source>Reference to unparsed entity '%1'.</source> <translation>Es wurde die ungeparste Entity '%1' referenziert.</translation> </message> <message> - <location line="-13"/> - <location line="+61"/> - <location line="+40"/> <source>Entity '%1' not declared.</source> <translation>Die Entity '%1' ist nicht deklariert.</translation> </message> <message> - <location line="-26"/> <source>Reference to external entity '%1' in attribute value.</source> <translation>Im Attributwert wurde die externe Entity '%1' referenziert.</translation> </message> <message> - <location line="+40"/> <source>Invalid character reference.</source> <translation>Ungültige Zeichenreferenz.</translation> </message> <message> - <location filename="../src/corelib/xml/qxmlstream.cpp" line="-75"/> - <location filename="../src/corelib/xml/qxmlstream_p.h" line="-823"/> <source>Encountered incorrectly encoded content.</source> <translation>Es wurde Inhalt mit einer ungültigen Kodierung gefunden.</translation> </message> <message> - <location line="+274"/> <source>The standalone pseudo attribute must appear after the encoding.</source> <translation>Das Standalone-Pseudoattribut muss dem Encoding unmittelbar folgen.</translation> </message> <message> - <location filename="../src/corelib/xml/qxmlstream_p.h" line="+562"/> <source>%1 is an invalid PUBLIC identifier.</source> <translation>%1 ist keine gültige Angabe für eine PUBLIC-Id.</translation> </message> @@ -9959,702 +7941,558 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> <context> <name>QtXmlPatterns</name> <message> - <location filename="../src/xmlpatterns/data/qabstractduration.cpp" line="+99"/> - <location line="+15"/> <source>At least one component must be present.</source> <translation>Es muss mindestens eine Komponente vorhanden sein.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qanyuri_p.h" line="+132"/> <source>%1 is not a valid value of type %2.</source> <translation>%1 ist kein gültiger Wert des Typs %2.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qatomiccasters_p.h" line="+223"/> <source>When casting to %1 from %2, the source value cannot be %3.</source> <translation>Bei einer "cast"-Operation von %1 zu %2 darf der Wert nicht %3 sein.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qboolean.cpp" line="+78"/> <source>Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values.</source> <translation>Der effektive Boolesche Wert einer Sequenz aus zwei oder mehreren atomaren Werten kann nicht berechnet werden.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qprocessinginstructionconstructor.cpp" line="+84"/> <source>The data of a processing instruction cannot contain the string %1</source> <translation>Die Daten einer Processing-Anweisung dürfen nicht die Zeichenkette %1 enthalten</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qqnameconstructor_p.h" line="+168"/> - <location filename="../src/xmlpatterns/functions/qqnamefns.cpp" line="+69"/> <source>%1 is an invalid %2</source> <translation>%1 ist kein gültiges %2</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qassemblestringfns.cpp" line="+88"/> <source>%1 is not a valid XML 1.0 character.</source> <translation>%1 ist kein gültiges XML 1.0 Zeichen.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qerrorfn.cpp" line="+61"/> <source>%1 was called.</source> <translation>%1 wurde gerufen.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qpatternmatchingfns.cpp" line="+133"/> <source>In the replacement string, %1 must be followed by at least one digit when not escaped.</source> <translation>In der Ersetzung muss auf %1 eine Ziffer folgen, wenn es nicht durch ein Escape-Zeichen geschützt ist.</translation> </message> <message> - <location line="+26"/> <source>In the replacement string, %1 can only be used to escape itself or %2, not %3</source> <translation>In der Ersetzung kann %1 nur verwendet werden, um sich selbst oder %2 schützen, nicht jedoch für %3</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qpatternplatform.cpp" line="+92"/> <source>%1 matches newline characters</source> <translation>Der Ausdruck '%1' schließt Zeilenvorschübe ein</translation> </message> <message> - <location line="+10"/> <source>Matches are case insensitive</source> <translation>Groß/Kleinschreibung wird nicht beachtet</translation> </message> <message> - <location line="+104"/> <source>%1 is an invalid regular expression pattern: %2</source> <translation>%1 ist kein gültiger regulärer Ausdruck: %2</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qsequencefns.cpp" line="+346"/> <source>It will not be possible to retrieve %1.</source> <translation>%1 kann nicht bestimmt werden.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qsequencegeneratingfns.cpp" line="+266"/> <source>The default collection is undefined</source> <translation>Für eine Kollektion ist keine Vorgabe definiert</translation> </message> <message> - <location line="+13"/> <source>%1 cannot be retrieved</source> <translation>%1 kann nicht bestimmt werden</translation> </message> <message> - <location filename="../src/xmlpatterns/janitors/qitemverifier.cpp" line="+67"/> <source>The item %1 did not match the required type %2.</source> <translation>Das Element %1 entspricht nicht dem erforderlichen Typ %2.</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qquerytransformparser.cpp" line="+352"/> - <location line="+7323"/> <source>%1 is an unknown schema type.</source> <translation>%1 ist ein unbekannter Schema-Typ.</translation> </message> <message> - <location line="-7254"/> <source>A template with name %1 has already been declared.</source> <translation>Eine Vorlage des Namens %1 existiert bereits.</translation> </message> <message> - <location line="+213"/> <source>Only one %1 declaration can occur in the query prolog.</source> <translation>Der Anfrage-Prolog darf nur eine %1-Deklaration enthalten.</translation> </message> <message> - <location line="+188"/> <source>The initialization of variable %1 depends on itself</source> <translation>Die Initialisierung der Variable %1 hängt von ihrem eigenem Wert ab</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qparsercontext.cpp" line="+93"/> <source>The variable %1 is unused</source> <translation>Die Variable %1 wird nicht verwendet</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qquerytransformparser.cpp" line="+2904"/> <source>Version %1 is not supported. The supported XQuery version is 1.0.</source> <translation>Die Version %1 wird nicht unterstützt. Die unterstützte Version von XQuery ist 1.0.</translation> </message> <message> - <location line="+71"/> <source>No function with signature %1 is available</source> <translation>Es existiert keine Funktion mit der Signatur %1</translation> </message> <message> - <location line="+303"/> <source>It is not possible to redeclare prefix %1.</source> <translation>Der Präfix %1 kann nicht redeklariert werden.</translation> </message> <message> - <location line="+18"/> <source>Prefix %1 is already declared in the prolog.</source> <translation>Der Präfix %1 wurde bereits im Prolog deklariert.</translation> </message> <message> - <location line="+95"/> <source>The name of an option must have a prefix. There is no default namespace for options.</source> <translation>Der Name einer Option muss einen Präfix haben. Es gibt keine Namensraum-Vorgabe für Optionen.</translation> </message> <message> - <location line="+171"/> <source>The Schema Import feature is not supported, and therefore %1 declarations cannot occur.</source> <translation>Die Deklaration %1 ist unzulässig, da Schema-Import nicht unterstützt wird.</translation> </message> <message> - <location line="+13"/> <source>The target namespace of a %1 cannot be empty.</source> <translation>Der Ziel-Namensraum von %1 darf nicht leer sein.</translation> </message> <message> - <location line="+8"/> <source>The module import feature is not supported</source> <translation>Modul-Import wird nicht unterstützt</translation> </message> <message> - <location line="+178"/> <source>The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2</source> <translation>Der Namensraum einer nutzerdefinierten Funktion aus einem Bibliotheksmodul muss dem Namensraum des Moduls entsprechen (%1 anstatt %2) </translation> </message> <message> - <location line="+34"/> <source>A function already exists with the signature %1.</source> <translation>Es existiert bereits eine Funktion mit der Signatur %1.</translation> </message> <message> - <location line="+23"/> <source>No external functions are supported. All supported functions can be used directly, without first declaring them as external</source> <translation>Externe Funktionen werden nicht unterstützt. Alle unterstützten Funktionen können direkt verwendet werden, ohne sie als extern zu deklarieren</translation> </message> <message> - <location line="+1709"/> <source>The %1-axis is unsupported in XQuery</source> <translation>Die %1-Achse wird in XQuery nicht unterstützt</translation> </message> <message> - <location line="+435"/> <source>The namespace URI cannot be the empty string when binding to a prefix, %1.</source> <translation>Der Namensraum-URI darf nicht leer sein, wenn er an den Präfix %1 gebunden ist.</translation> </message> <message> - <location line="+7"/> <source>%1 is an invalid namespace URI.</source> <translation>%1 ist kein gültiger Namensraum-URI.</translation> </message> <message> - <location line="+6"/> <source>It is not possible to bind to the prefix %1</source> <translation>Der Präfix %1 kann nicht gebunden werden</translation> </message> <message> - <location line="+30"/> <source>Two namespace declaration attributes have the same name: %1.</source> <translation>Es wurden zwei Namensraum-Deklarationsattribute gleichen Namens (%1) gefunden.</translation> </message> <message> - <location line="+89"/> <source>The namespace URI must be a constant and cannot use enclosed expressions.</source> <translation>Ein Namensraum-URI muss eine Konstante sein und darf keine eingebetteten Ausdrücke verwenden.</translation> </message> <message> - <location line="+699"/> - <location line="+71"/> <source>%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported.</source> <translation>%1 befindet sich nicht unter den Attributdeklarationen im Bereich. Schema-Import wird nicht unterstützt.</translation> </message> <message> - <location filename="../src/xmlpatterns/type/qcardinality.cpp" line="+55"/> <source>empty</source> <translation>leer</translation> </message> <message> - <location line="+2"/> <source>zero or one</source> <translation>kein oder ein</translation> </message> <message> - <location line="+2"/> <source>exactly one</source> <translation>genau ein</translation> </message> <message> - <location line="+2"/> <source>one or more</source> <translation>ein oder mehrere</translation> </message> <message> - <location line="+2"/> <source>zero or more</source> <translation>kein oder mehrere</translation> </message> <message> - <location filename="../src/xmlpatterns/type/qtypechecker.cpp" line="+156"/> <source>The focus is undefined.</source> <translation>Es ist kein Fokus definiert.</translation> </message> <message> - <location filename="../src/xmlpatterns/utils/qoutputvalidator.cpp" line="+93"/> <source>An attribute by name %1 has already been created.</source> <translation>Es wurde bereits ein Attribut mit dem Namen %1 erzeugt.</translation> </message> <message> - <location filename="../src/xmlpatterns/api/qiodevicedelegate.cpp" line="+84"/> <source>Network timeout.</source> <translation>Das Zeitlimit der Netzwerkoperation wurde überschritten.</translation> </message> <message> - <location filename="../src/xmlpatterns/api/qxmlserializer.cpp" line="+320"/> <source>Element %1 can't be serialized because it appears outside the document element.</source> <translation>Das Element %1 kann nicht serialisiert werden, da es außerhalb des Dokumentenelements erscheint.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qabstractdatetime.cpp" line="+80"/> <source>Year %1 is invalid because it begins with %2.</source> <translation>%1 ist keine gültige Jahresangabe, da es mit %2 beginnt.</translation> </message> <message> - <location line="+19"/> <source>Day %1 is outside the range %2..%3.</source> <translation>Die Tagesangabe %1 ist außerhalb des Bereiches %2..%3.</translation> </message> <message> - <location line="+7"/> <source>Month %1 is outside the range %2..%3.</source> <translation>Die Monatsangabe %1 ist außerhalb des Bereiches %2..%3.</translation> </message> <message> - <location line="+10"/> <source>Overflow: Can't represent date %1.</source> <translation>Das Datum %1 kann nicht dargestellt werden (Überlauf).</translation> </message> <message> - <location line="+9"/> <source>Day %1 is invalid for month %2.</source> <translation>Die Tagesangabe %1 ist für den Monat %2 ungültig.</translation> </message> <message> - <location line="+49"/> <source>Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; </source> <translation>Die Zeitangabe 24:%1:%2.%3 ist ungültig. Bei der Stundenangabe 24 müssen Minuten, Sekunden und Millisekunden 0 sein.</translation> </message> <message> - <location line="+13"/> <source>Time %1:%2:%3.%4 is invalid.</source> <translation>Die Zeitangabe %1:%2:%3.%4 ist ungültig.</translation> </message> <message> - <location line="+115"/> <source>Overflow: Date can't be represented.</source> <translation>Das Datum kann nicht dargestellt werden (Überlauf).</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qabstractduration.cpp" line="-7"/> <source>At least one time component must appear after the %1-delimiter.</source> <translation>Bei Vorhandensein eines %1-Begrenzers muss mindestens eine Komponente vorhanden sein.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qatomicmathematicians.cpp" line="+201"/> - <location line="+32"/> <source>Dividing a value of type %1 by %2 (not-a-number) is not allowed.</source> <translation>Die Division eines Werts des Typs %1 durch %2 (kein numerischer Wert) ist nicht zulässig.</translation> </message> <message> - <location line="-20"/> <source>Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed.</source> <translation>Die Division eines Werts des Typs %1 durch %2 oder %3 (positiv oder negativ Null) ist nicht zulässig.</translation> </message> <message> - <location line="+32"/> <source>Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed.</source> <translation>Die Multiplikation eines Werts des Typs %1 mit %2 oder %3 (positiv oder negativ unendlich) ist nicht zulässig.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qatomicvalue.cpp" line="+79"/> <source>A value of type %1 cannot have an Effective Boolean Value.</source> <translation>Ein Wert des Typs %1 kann keinen effektiven Booleschen Wert haben.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qderivedinteger_p.h" line="+402"/> <source>Value %1 of type %2 exceeds maximum (%3).</source> <translation>Der Wert %1 des Typs %2 überschreitet das Maximum (%3).</translation> </message> <message> - <location line="+9"/> <source>Value %1 of type %2 is below minimum (%3).</source> <translation>Der Wert %1 des Typs %2 unterschreitet das Minimum (%3).</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qhexbinary.cpp" line="+91"/> <source>A value of type %1 must contain an even number of digits. The value %2 does not.</source> <translation>Die Stellenzahl eines Wertes des Typs %1 muss geradzahlig sein. Das ist bei %2 nicht der Fall.</translation> </message> <message> - <location line="+19"/> <source>%1 is not valid as a value of type %2.</source> <translation>%1 ist kein gültiger Wert des Typs %2.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qarithmeticexpression.cpp" line="+207"/> <source>Operator %1 cannot be used on type %2.</source> <translation>Der Operator %1 kann nicht auf den Typ %2 angewandt werden.</translation> </message> <message> - <location line="+17"/> <source>Operator %1 cannot be used on atomic values of type %2 and %3.</source> <translation>Der Operator %1 kann nicht auf atomare Werte der Typen %2 und %3 angewandt werden.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qattributenamevalidator.cpp" line="+66"/> <source>The namespace URI in the name for a computed attribute cannot be %1.</source> <translation>Der Namensraum-URI im Namen eines berechneten Attributes darf nicht %1 sein.</translation> </message> <message> - <location line="+9"/> <source>The name for a computed attribute cannot have the namespace URI %1 with the local name %2.</source> <translation>Der Name eines berechneten Attributes darf keinen Namensraum-URI %1 mit dem lokalen Namen %2 haben.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qcastas.cpp" line="+88"/> <source>Type error in cast, expected %1, received %2.</source> <translation>Typfehler bei "cast"-Operation; es wurde %1 erwartet, aber %2 empfangen.</translation> </message> <message> - <location line="+29"/> <source>When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed.</source> <translation>Bei einer "cast"-Operation zum Typ %1 oder abgeleitetenTypen muss der Quellwert ein Zeichenketten-Literal oder ein Wert gleichen Typs sein. Der Typ %2 ist ungültig.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qcommentconstructor.cpp" line="+67"/> <source>A comment cannot contain %1</source> <translation>Ein Kommentar darf nicht'%1 enthalten</translation> </message> <message> - <location line="+6"/> <source>A comment cannot end with a %1.</source> <translation>Ein Kommentar darf nicht auf %1 enden.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qdocumentcontentvalidator.cpp" line="+86"/> <source>An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place.</source> <translation>Ein Attributknoten darf nicht als Kind eines Dokumentknotens erscheinen. Es erschien ein Attributknoten mit dem Namen %1.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qexpressionfactory.cpp" line="+162"/> <source>A library module cannot be evaluated directly. It must be imported from a main module.</source> <translation>Ein Bibliotheksmodul kann nicht direkt ausgewertet werden, er muss von einem Hauptmodul importiert werden.</translation> </message> <message> - <location line="+40"/> <source>No template by name %1 exists.</source> <translation>Es existiert keine Vorlage mit dem Namen %1.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qgenericpredicate.cpp" line="+106"/> <source>A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type.</source> <translation>Werte des Typs %1 dürfen keine Prädikate sein. Für Prädikate sind nur numerische oder effektiv Boolesche Typen zulässig.</translation> </message> <message> - <location line="+32"/> <source>A positional predicate must evaluate to a single numeric value.</source> <translation>Ein positionales Prädikat muss sich als einfacher, numerischer Wert auswerten lassen.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qncnameconstructor_p.h" line="+113"/> <source>The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid.</source> <translation>Der Zielname einer Processing-Anweisung kann nicht %1 (unabhängig von Groß/Kleinschreibung sein). %2 ist daher ungültig.</translation> </message> <message> - <location line="+24"/> <source>%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3.</source> <translation>%1 ist kein gültiger Zielname einer Processing-Anweisung, es muss ein %2 Wert wie zum Beispiel %3 sein.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qpath.cpp" line="+109"/> <source>The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two.</source> <translation>Der letzte Schritt eines Pfades kann entweder nur Knoten oder nur atomare Werte enthalten. Sie dürfen nicht zusammen auftreten.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qqnameconstructor.cpp" line="+82"/> <source>No namespace binding exists for the prefix %1</source> <translation>Es existiert keine Namensraum-Bindung für den Präfix %1</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qqnameconstructor_p.h" line="-12"/> <source>No namespace binding exists for the prefix %1 in %2</source> <translation>Es existiert keine Namensraum-Bindung für den Präfix %1 in %2</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qaggregatefns.cpp" line="+120"/> <source>The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration.</source> <translation>Das erste Argument von %1 darf nicht vom Typ %2 sein; es muss numerisch, xs:yearMonthDuration oder xs:dayTimeDuration sein.</translation> </message> <message> - <location line="+74"/> <source>The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5.</source> <translation>Das erste Argument von %1 kann nicht vom Typ %2 sein, es muss einer der Typen %3, %4 oder %5 sein.</translation> </message> <message> - <location line="+91"/> <source>The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5.</source> <translation>Das zweite Argument von %1 kann nicht vom Typ %2 sein, es muss einer der Typen %3, %4 oder %5 sein.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qdatetimefn.cpp" line="+86"/> <source>If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same.</source> <translation>Wenn beide Werte mit Zeitzonen angegeben werden, müssen diese übereinstimmen. %1 und %2 sind daher unzulässig.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qpatternmatchingfns.cpp" line="-65"/> <source>%1 must be followed by %2 or %3, not at the end of the replacement string.</source> <translation>Auf %1 muss %2 oder %3 folgen; es kann nicht am Ende der Ersetzung erscheinen.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qpatternplatform.cpp" line="-110"/> <source>%1 and %2 match the start and end of a line.</source> <translation>Die Ausdrücke %1 und %2 passen jeweils auf den Anfang oder das Ende einer beliebigen Zeile.</translation> </message> <message> - <location line="+10"/> <source>Whitespace characters are removed, except when they appear in character classes</source> <translation>Leerzeichen werden entfernt, sofern sie nicht in Zeichenklassen erscheinen</translation> </message> <message> - <location line="+130"/> <source>%1 is an invalid flag for regular expressions. Valid flags are:</source> <translation>%1 ist kein gültiger Modifikator für reguläre Ausdrücke. Gültige Modifikatoren sind:</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qqnamefns.cpp" line="+17"/> <source>If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified.</source> <translation>Es kann kein Präfix angegeben werden, wenn das erste Argument leer oder eine leere Zeichenkette (kein Namensraum) ist. Es wurde der Präfix %1 angegeben.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qstringvaluefns.cpp" line="+252"/> <source>The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization).</source> <translation>Die Normalisierungsform %1 wird nicht unterstützt. Die unterstützten Normalisierungsformen sind %2, %3, %4 and %5, und "kein" (eine leere Zeichenkette steht für "keine Normalisierung").</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qtimezonefns.cpp" line="+87"/> <source>A zone offset must be in the range %1..%2 inclusive. %3 is out of range.</source> <translation>Eine Zeitzonen-Differenz muss im Bereich %1..%2 (einschließlich) liegen. %3 liegt außerhalb des Bereiches.</translation> </message> <message> - <location filename="../src/xmlpatterns/janitors/qcardinalityverifier.cpp" line="+58"/> <source>Required cardinality is %1; got cardinality %2.</source> <translation>Die erforderliche Kardinalität ist %1 (gegenwärtig %2).</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qquerytransformparser.cpp" line="-3944"/> <source>The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2.</source> <translation>Die Kodierung %1 ist ungültig; sie darf nur aus lateinischen Buchstaben bestehen und muss dem regulären Ausdruck %2 entsprechen.</translation> </message> <message> - <location line="+260"/> <source>The keyword %1 cannot occur with any other mode name.</source> <translation>Das Schlüsselwort %1 kann nicht mit einem anderen Modusnamen zusammen verwendet werden.</translation> </message> <message> - <location line="-3117"/> <source>No variable with name %1 exists</source> <translation>Es existiert keine Variable des Namens %1</translation> </message> <message> - <location line="+3146"/> <source>The value of attribute %1 must be of type %2, which %3 isn't.</source> <translation>Der Wert des Attributs %1 muss vom Typ %2 sein, was bei %3 nicht der Fall ist.</translation> </message> <message> - <location line="+75"/> <source>The prefix %1 cannot be bound. By default, it is already bound to the namespace %2.</source> <translation>Der Präfix %1 kann nicht gebunden werden. Er ist bereits per Vorgabe an den Namensraum %2 gebunden.</translation> </message> <message> - <location line="+312"/> <source>A variable with name %1 has already been declared.</source> <translation>Eine Variable des Namens %1 wurde bereits deklariert.</translation> </message> <message> - <location line="+39"/> <source>No value is available for the external variable with name %1.</source> <translation>Es ist kein Wert für die externe Variable des Namens %1 verfügbar.</translation> </message> <message> - <location line="+96"/> <source>A stylesheet function must have a prefixed name.</source> <translation>Der Name einer Stylesheet-Funktion muss einen Präfix haben.</translation> </message> <message> - <location line="+18"/> <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>Der Namensraum %1 ist reserviert und kann daher von nutzerdefinierten Funktionen nicht verwendet werden (für diesen Zweck gibt es den vordefinierten Präfix %2).</translation> </message> <message> - <location line="+106"/> <source>An argument with name %1 has already been declared. Every argument name must be unique.</source> <translation>Es wurde bereits ein Argument des Namens %1 deklariert. Argumentnamen müssen eindeutig sein.</translation> </message> <message> - <location line="+179"/> <source>When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal.</source> <translation>Bei der Verwendung der Funktion %1 zur Auswertung innerhalb eines Suchmusters muss das Argument eine Variablenreferenz oder ein Zeichenketten-Literal sein.</translation> </message> <message> - <location line="+11"/> <source>In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching.</source> <translation>Bei einem XSL-T-Suchmuster muss das erste Argument zur Funktion %1 bei der Verwendung zur Suche ein Zeichenketten-Literal sein.</translation> </message> <message> - <location line="+14"/> <source>In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching.</source> <translation>Bei einem XSL-T-Suchmuster muss das erste Argument zur Funktion %1 bei der Verwendung zur Suche ein Literal oder eine Variablenreferenz sein.</translation> </message> <message> - <location line="+9"/> <source>In an XSL-T pattern, function %1 cannot have a third argument.</source> <translation>Bei einem XSL-T-Suchmuster darf die Funktion %1 kein drittes Argument haben.</translation> </message> <message> - <location line="+10"/> <source>In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching.</source> <translation>Bei einem XSL-T-Suchmuster dürfen nur die Funktionen %1 und %2, nicht jedoch %3 zur Suche verwendet werden.</translation> </message> <message> - <location line="+63"/> <source>In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can.</source> <translation>Bei einem XSL-T-Suchmuster dürfen nur die Achsen %2 oder %3 verwendet werden, nicht jedoch %1.</translation> </message> <message> - <location line="+126"/> <source>%1 is an invalid template mode name.</source> <translation>%1 ist kein gültiger Name für einen Vorlagenmodus.</translation> </message> <message> - <location line="+44"/> <source>The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide.</source> <translation>Der Name der gebundenen Variablen eines for-Ausdrucks muss sich von dem der Positionsvariable unterscheiden. Die zwei Variablen mit dem Namen %1 stehen im Konflikt.</translation> </message> <message> - <location line="+778"/> <source>The Schema Validation Feature is not supported. Hence, %1-expressions may not be used.</source> <translation>%1-Ausdrücke können nicht verwendet werden, da Schemavalidierung nicht unterstützt wird. </translation> </message> <message> - <location line="+40"/> <source>None of the pragma expressions are supported. Therefore, a fallback expression must be present</source> <translation>Es muss ein fallback-Ausdruck vorhanden sein, da keine pragma-Ausdrücke unterstützt werden</translation> </message> <message> - <location line="+269"/> <source>Each name of a template parameter must be unique; %1 is duplicated.</source> <translation>Die Namen von Vorlagenparametern müssen eindeutig sein, %1 existiert bereits.</translation> </message> <message> - <location line="+462"/> <source>No function with name %1 is available.</source> <translation>Es ist keine Funktion des Namens %1 verfügbar.</translation> </message> <message> - <location line="-6235"/> <source>%1 is not a valid numeric literal.</source> <translation>%1 ist kein gültiger numerischer Literal.</translation> </message> <message> - <location line="-152"/> <source>W3C XML Schema identity constraint selector</source> <translation>W3C XML Schema identity constraint selector</translation> </message> <message> - <location line="+3"/> <source>W3C XML Schema identity constraint field</source> <translation>W3C XML Schema identity constraint field</translation> </message> <message> - <location line="+4"/> <source>A construct was encountered which is disallowed in the current language(%1).</source> <translation>Es wurde ein Sprachkonstrukt angetroffen, was in der aktuellen Sprache (%1) nicht erlaubt ist.</translation> </message> <message> - <location line="+6502"/> <source>Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared).</source> <translation>Der Namensraum %1 kann nur an %2 gebunden werden. Dies ist bereits vordeklariert.</translation> </message> <message> - <location line="+8"/> <source>Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared).</source> <translation>Der Präfix %1 kann nur an %2 gebunden werden. Dies ist bereits vordeklariert.</translation> </message> <message> - <location line="+120"/> <source>An attribute with name %1 has already appeared on this element.</source> <translation>Das Element hat bereits ein Attribut des Namens %1.</translation> </message> <message> - <location line="+61"/> <source>A direct element constructor is not well-formed. %1 is ended with %2.</source> <translation>Es wurde ein fehlerhafter direkter Element-Konstruktor gefunden. %1 endet mit %2.</translation> </message> <message> - <location line="+458"/> <source>The name %1 does not refer to any schema type.</source> <translation>Der Name %1 hat keinen Bezug zu einem Schematyp.</translation> </message> <message> - <location line="+10"/> <source>%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works.</source> <translation>%1 ist ein komplexer Typ. Eine "cast"-Operation zu komplexen Typen ist nicht möglich. Es können allerdings "cast"-Operationen zu atomare Typen wie %2 durchgeführt werden.</translation> </message> <message> - <location line="+9"/> <source>%1 is not an atomic type. Casting is only possible to atomic types.</source> <translation>%1 ist kein atomarer Typ. "cast"-Operation können nur zu atomaren Typen durchgeführt werden.</translation> </message> <message> - <location line="+76"/> <source>%1 is not a valid name for a processing-instruction.</source> <translation>%1 ist kein gültiger Name für eine Processing-Instruktion.</translation> </message> <message> - <location line="+188"/> <source>The name of an extension expression must be in a namespace.</source> <translation>Der Name eines Erweiterungsausdrucks muss sich in einem Namensraum befinden.</translation> </message> <message> - <location filename="../src/xmlpatterns/type/qtypechecker.cpp" line="-93"/> <source>Required type is %1, but %2 was found.</source> <translation>Der erforderliche Typ ist %1, es wurde aber %2 angegeben.</translation> </message> <message> - <location line="+44"/> <source>Promoting %1 to %2 may cause loss of precision.</source> <translation>Die Wandlung von %1 zu %2 kann zu einem Verlust an Genauigkeit führen.</translation> </message> <message> - <location filename="../src/xmlpatterns/utils/qoutputvalidator.cpp" line="-7"/> <source>It's not possible to add attributes after any other kind of node.</source> <translation>Attribute dürfen nicht auf andere Knoten folgen.</translation> </message> <message> - <location filename="../src/xmlpatterns/utils/qxpathhelper_p.h" line="+120"/> <source>Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported.</source> <translation>Es wird nur Unicode Codepoint Collation unterstützt (%1). %2 wird nicht unterstützt.</translation> </message> <message> - <location filename="../src/xmlpatterns/data/qatomicmathematicians.cpp" line="-180"/> <source>Integer division (%1) by zero (%2) is undefined.</source> <translation>Die Ganzzahldivision (%1) durch Null (%2) ist nicht definiert.</translation> </message> <message> - <location line="+7"/> <source>Division (%1) by zero (%2) is undefined.</source> <translation>Die Division (%1) durch Null (%2) ist nicht definiert.</translation> </message> <message> - <location line="+7"/> <source>Modulus division (%1) by zero (%2) is undefined.</source> <translation>Die Modulo-Division (%1) durch Null (%2) ist nicht definiert.</translation> </message> <message numerus="yes"> - <location filename="../src/xmlpatterns/functions/qabstractfunctionfactory.cpp" line="+77"/> <source>%1 takes at most %n argument(s). %2 is therefore invalid.</source> <translation> <numerusform>%1 hat nur %n Argument; die Angabe %2 ist daher ungültig.</numerusform> @@ -10662,7 +8500,6 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> </translation> </message> <message numerus="yes"> - <location line="+11"/> <source>%1 requires at least %n argument(s). %2 is therefore invalid.</source> <translation> <numerusform>%1 erfordert mindestens ein Argument; die Angabe %3 ist daher ungültig.</numerusform> @@ -10670,1655 +8507,1258 @@ Bitte wählen Sie einen anderen Dateinamen.</translation> </translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qcontextnodechecker.cpp" line="+54"/> <source>The root node of the second argument to function %1 must be a document node. %2 is not a document node.</source> <translation>Der übergeordnete Knoten des zweiten Arguments der Funktion %1 muss ein Dokumentknoten sein, was bei %2 nicht der Fall ist.</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qquerytransformparser.cpp" line="-3172"/> <source>The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this)</source> <translation>Der Namensraum einer benutzerdefinierten Funktion darf nicht leer sein (für diesen Zweck gibt es den vordefinierten Präfix %1)</translation> </message> <message> - <location line="-693"/> - <location line="+10"/> <source>A default namespace declaration must occur before function, variable, and option declarations.</source> <translation>Die Deklaration des Default-Namensraums muss vor Funktions-, Variablen- oder Optionsdeklaration erfolgen.</translation> </message> <message> - <location line="+10"/> <source>Namespace declarations must occur before function, variable, and option declarations.</source> <translation>Namensraums-Deklarationen müssen vor Funktions- Variablen- oder Optionsdeklarationen stehen.</translation> </message> <message> - <location line="+11"/> <source>Module imports must occur before function, variable, and option declarations.</source> <translation>Modul-Importe müssen vor Funktions-, Variablen- oder Optionsdeklarationen stehen.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qtimezonefns.cpp" line="+12"/> <source>%1 is not a whole number of minutes.</source> <translation>%1 ist keine ganzzahlige Minutenangabe.</translation> </message> <message> - <location filename="../src/xmlpatterns/api/qxmlserializer.cpp" line="+60"/> <source>Attribute %1 can't be serialized because it appears at the top level.</source> <translation>Das Attributelement %1 kann nicht serialisiert werden, da es auf der höchsten Ebene erscheint.</translation> </message> <message> - <location filename="../src/xmlpatterns/acceltree/qacceltreeresourceloader.cpp" line="+344"/> <source>%1 is an unsupported encoding.</source> <translation>Das Encoding %1 wird nicht unterstützt.</translation> </message> <message> - <location line="+16"/> <source>%1 contains octets which are disallowed in the requested encoding %2.</source> <translation>%1 enthält Oktette, die im Encoding %2 nicht zulässig sind.</translation> </message> <message> - <location line="+18"/> <source>The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character.</source> <translation>Der Code-Punkt %1 aus %2 mit Encoding %3 ist kein gültiges XML-Zeichen.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qapplytemplate.cpp" line="+119"/> <source>Ambiguous rule match.</source> <translation>Mehrdeutige Regel.</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qcomputednamespaceconstructor.cpp" line="+69"/> <source>In a namespace constructor, the value for a namespace cannot be an empty string.</source> <translation>Im Konstruktor eines Namensraums darf der Wert des Namensraumes keine leere Zeichenkette sein.</translation> </message> <message> - <location line="+11"/> <source>The prefix must be a valid %1, which %2 is not.</source> <translation>Der Präfix muss ein gültiger %1 sein. Das ist bei %2 nicht der Fall.</translation> </message> <message> - <location line="+14"/> <source>The prefix %1 cannot be bound.</source> <translation>Der Präfix %1 kann nicht gebunden werden</translation> </message> <message> - <location line="+10"/> <source>Only the prefix %1 can be bound to %2 and vice versa.</source> <translation>An %2 kann nur der Präfix %1 gebunden werden (und umgekehrt).</translation> </message> <message> - <location filename="../src/xmlpatterns/expr/qtemplate.cpp" line="+145"/> <source>The parameter %1 is required, but no corresponding %2 is supplied.</source> <translation>Es wurde kein entsprechendes %2 für den erforderlichen Parameter %1 angegeben.</translation> </message> <message> - <location line="-71"/> <source>The parameter %1 is passed, but no corresponding %2 exists.</source> <translation>Es existiert kein entsprechendes %2 für den übergebenen Parameter %1.</translation> </message> <message> - <location filename="../src/xmlpatterns/functions/qunparsedtextfn.cpp" line="+65"/> <source>The URI cannot have a fragment</source> <translation>Der URI darf kein Fragment enthalten.</translation> </message> <message> - <location filename="../src/xmlpatterns/parser/qxslttokenizer.cpp" line="+519"/> <source>Element %1 is not allowed at this location.</source> <translation>Das Element %1 darf nicht an dieser Stelle stehen.</translation> </message> <message> - <location line="+9"/> <source>Text nodes are not allowed at this location.</source> <translation>An dieser Stelle dürfen keine Textknoten stehen.</translation> </message> <message> - <location line="+20"/> <source>Parse error: %1</source> <translation>Parse-Fehler: %1</translation> </message> <message> - <location line="+62"/> <source>The value of the XSL-T version attribute must be a value of type %1, which %2 isn't.</source> <translation>Der Wert eines XSL-T-Versionsattributes muss vom Typ %1 sein, was bei %2 nicht der Fall ist.</translation> </message> <message> - <location line="+20"/> <source>Running an XSL-T 1.0 stylesheet with a 2.0 processor.</source> <translation>Es wird ein XSL-T-1.0-Stylesheet mit einem Prozessor der Version 2.0 verarbeitet.</translation> </message> <message> - <location line="+108"/> <source>Unknown XSL-T attribute %1.</source> <translation>Unbekanntes XSL-T-Attribut: %1.</translation> </message> <message> - <location line="+23"/> <source>Attribute %1 and %2 are mutually exclusive.</source> <translation>Die Attribute %1 und %2 schließen sich gegenseitig aus.</translation> </message> <message> - <location line="+166"/> <source>In a simplified stylesheet module, attribute %1 must be present.</source> <translation>In einem vereinfachten Stylesheet-Modul muss das Attribut %1 vorhanden sein.</translation> </message> <message> - <location line="+72"/> <source>If element %1 has no attribute %2, it cannot have attribute %3 or %4.</source> <translation>Das Element %1 darf keines der Attribute %3 oder %4 haben, solange es nicht das Attribut %2 hat.</translation> </message> <message> - <location line="+9"/> <source>Element %1 must have at least one of the attributes %2 or %3.</source> <translation>Das Element %1 muss mindestens eines der Attribute %2 oder %3 haben.</translation> </message> <message> - <location line="+28"/> <source>At least one mode must be specified in the %1-attribute on element %2.</source> <translation>Im %1-Attribut des Elements %2 muss mindestens ein Modus angegeben werden.</translation> </message> <message> - <location line="+123"/> <source>Element %1 must come last.</source> <translation>Das Element %1 muss zuletzt stehen.</translation> </message> <message> - <location line="+24"/> <source>At least one %1-element must occur before %2.</source> <translation>Vor %2 muss mindestens ein %1-Element stehen.</translation> </message> <message> - <location line="+7"/> <source>Only one %1-element can appear.</source> <translation>Es darf nur ein einziges %1-Element stehen.</translation> </message> <message> - <location line="+31"/> <source>At least one %1-element must occur inside %2.</source> <translation>In %2 muss mindestens ein %1-Element stehen.</translation> </message> <message> - <location line="+58"/> <source>When attribute %1 is present on %2, a sequence constructor cannot be used.</source> <translation>Es kann kein Sequenzkonstruktor verwendet werden, wenn %2 ein Attribut %1 hat.</translation> </message> <message> - <location line="+13"/> <source>Element %1 must have either a %2-attribute or a sequence constructor.</source> <translation>Das Element %1 muss entweder ein %2-Attribut haben oder es muss ein Sequenzkonstruktor verwendet werden.</translation> </message> <message> - <location line="+125"/> <source>When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor.</source> <translation>Der Defaultwert eines erforderlichen Parameters kann weder durch ein %1-Attribut noch durch einen Sequenzkonstruktor angegeben werden. </translation> </message> <message> - <location line="+270"/> <source>Element %1 cannot have children.</source> <translation>Das Element %1 kann keine Kindelemente haben.</translation> </message> <message> - <location line="+434"/> <source>Element %1 cannot have a sequence constructor.</source> <translation>Das Element %1 kann keinen Sequenzkonstruktor haben.</translation> </message> <message> - <location line="+86"/> - <location line="+9"/> <source>The attribute %1 cannot appear on %2, when it is a child of %3.</source> <translation>%2 darf nicht das Attribut %1 haben, wenn es ein Kindelement von %3 ist.</translation> </message> <message> - <location line="+15"/> <source>A parameter in a function cannot be declared to be a tunnel.</source> <translation>Der Parameter einer Funktion kann nicht als Tunnel deklariert werden.</translation> </message> <message> - <location line="+149"/> <source>This processor is not Schema-aware and therefore %1 cannot be used.</source> <translation>%1 kann nicht verwendet werden, da dieser Prozessor keine Schemas unterstützt.</translation> </message> <message> - <location line="+57"/> <source>Top level stylesheet elements must be in a non-null namespace, which %1 isn't.</source> <translation>Die zuoberst stehenden Elemente eines Stylesheets dürfen sich nicht im Null-Namensraum befinden, was bei %1 der Fall ist.</translation> </message> <message> - <location line="+48"/> <source>The value for attribute %1 on element %2 must either be %3 or %4, not %5.</source> <translation>Der Wert des Attributs %1 des Elements %2 kann nur %3 oder %4 sein, nicht jedoch %5.</translation> </message> <message> - <location line="+20"/> <source>Attribute %1 cannot have the value %2.</source> <translation>Das Attribut %1 darf nicht den Wert %2 haben.</translation> </message> <message> - <location line="+58"/> <source>The attribute %1 can only appear on the first %2 element.</source> <translation>Nur das erste %2-Element darf das Attribut %1 haben.</translation> </message> <message> - <location line="+99"/> <source>At least one %1 element must appear as child of %2.</source> <translation>%2 muss mindestens ein %1-Kindelement haben.</translation> </message> <message> - <location filename="../src/xmlpatterns/schema/qxsdschemachecker.cpp" line="+227"/> <source>%1 has inheritance loop in its base type %2.</source> <translation>%1 hat eine zirkuläre Vererbung im Basistyp %2.</translation> </message> <message> - <location line="+5"/> - <location line="+24"/> <source>Circular inheritance of base type %1.</source> <translation>Zirkuläre Vererbung im Basistyp %1.</translation> </message> <message> - <location line="+11"/> <source>Circular inheritance of union %1.</source> <translation>Zirkuläre Vererbung bei der Vereinigung %1.</translation> </message> <message> - <location line="+25"/> <source>%1 is not allowed to derive from %2 by restriction as the latter defines it as final.</source> <translation>%1 darf nicht durch Einschränkung von %2 abgeleitet werden, da letzterer sie als final deklariert.</translation> </message> <message> - <location line="+5"/> <source>%1 is not allowed to derive from %2 by extension as the latter defines it as final.</source> <translation>%1 darf nicht durch Erweiterung von %2 abgeleitet werden, da letzterer sie als final deklariert.</translation> </message> <message> - <location line="+31"/> <source>Base type of simple type %1 cannot be complex type %2.</source> <translation>Der komplexe Typ %2 kann nicht Basisklasse des einfachen Typs %1 sein.</translation> </message> <message> - <location line="+9"/> <source>Simple type %1 cannot have direct base type %2.</source> <translation>Der einfache Typ %1 kann nicht den unmittelbaren Basistyp %2 haben.</translation> </message> <message> - <location line="+33"/> - <location line="+9"/> <source>Simple type %1 is not allowed to have base type %2.</source> <translation>Der einfache Typ %1 darf nicht den Basistyp %2 haben.</translation> </message> <message> - <location line="+12"/> <source>Simple type %1 can only have simple atomic type as base type.</source> <translation>Der einfache Typ %1 kann nur einen einfachen. atomaren Basistyp haben.</translation> </message> <message> - <location line="+6"/> <source>Simple type %1 cannot derive from %2 as the latter defines restriction as final.</source> <translation>%1 darf nicht von %2 abgeleitet werden, da letzterer die Einschränkung als final deklariert.</translation> </message> <message> - <location line="+13"/> - <location line="+484"/> <source>Variety of item type of %1 must be either atomic or union.</source> <translation>Die Varietät der Typen von %1 muss entweder atomar oder eine Vereinigung sein.</translation> </message> <message> - <location line="-474"/> - <location line="+483"/> <source>Variety of member types of %1 must be atomic.</source> <translation>Die Varietät der Typen von %1 muss atomar sein.</translation> </message> <message> - <location line="-470"/> - <location line="+451"/> <source>%1 is not allowed to derive from %2 by list as the latter defines it as final.</source> <translation>%1 darf nicht durch Listen von %2 abgeleitet werden, da letzterer sie als final deklariert.</translation> </message> <message> - <location line="-431"/> <source>Simple type %1 is only allowed to have %2 facet.</source> <translation>Der einfache Typ %1 darf nur die Facette %2 haben.</translation> </message> <message> - <location line="+10"/> <source>Base type of simple type %1 must have variety of type list.</source> <translation>Der Basistyp des einfachen Typs %1 muss eine Varietät des Typs Liste haben.</translation> </message> <message> - <location line="+6"/> <source>Base type of simple type %1 has defined derivation by restriction as final.</source> <translation>Der Basistyp des einfachen Typs %1 definiert Vererbung durch Einschränkung als final.</translation> </message> <message> - <location line="+6"/> <source>Item type of base type does not match item type of %1.</source> <translation>Der Elementtyp des Basistyps entspricht nicht dem Elementtyp von %1.</translation> </message> <message> - <location line="+26"/> - <location line="+93"/> <source>Simple type %1 contains not allowed facet type %2.</source> <translation>Der einfache Typ %1 enthält einen nicht erlaubten Facettentyp %2.</translation> </message> <message> - <location line="-72"/> - <location line="+413"/> <source>%1 is not allowed to derive from %2 by union as the latter defines it as final.</source> <translation>%1 darf nicht durch Vereinigung von %2 abgeleitet werden, da sie letzterer sie als final deklariert.</translation> </message> <message> - <location line="-404"/> <source>%1 is not allowed to have any facets.</source> <translation>%1 darf keine Facetten haben.</translation> </message> <message> - <location line="+8"/> <source>Base type %1 of simple type %2 must have variety of union.</source> <translation>Der Basistyp %1 des einfachen Typs %2 muss eine Varietät des Typs Vereinigung haben.</translation> </message> <message> - <location line="+9"/> <source>Base type %1 of simple type %2 is not allowed to have restriction in %3 attribute.</source> <translation>Der Basistyp %1 des einfachen Typs %2 darf keine Einschränkung im %3 Attribut haben.</translation> </message> <message> - <location line="+18"/> <source>Member type %1 cannot be derived from member type %2 of %3's base type %4.</source> <translation>Der Typ %1 des Mitglieds darf nicht vom Typ %2 des Mitglieds vom Basistyp %4 von %3 sein.</translation> </message> <message> - <location line="+65"/> <source>Derivation method of %1 must be extension because the base type %2 is a simple type.</source> <translation>Erweiterung muss als Vererbungsmethode für %1 verwendet werden, da der Basistyp %2 ein einfacher Typ ist.</translation> </message> <message> - <location line="+30"/> <source>Complex type %1 has duplicated element %2 in its content model.</source> <translation>Der komplexe Typ %1 hat ein dupliziertes Element %2 in seinem Inhaltsmodell.</translation> </message> <message> - <location line="+8"/> <source>Complex type %1 has non-deterministic content.</source> <translation>Der komplexe Typ %1 hat nicht-deterministischen Inhalt.</translation> </message> <message> - <location line="+21"/> <source>Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3.</source> <translation>Die Attribute des komplexen Typs %1 sind keine gültige Erweiterung der Attribute des Basistyps %2: %3.</translation> </message> <message> - <location line="+37"/> <source>Content model of complex type %1 is not a valid extension of content model of %2.</source> <translation>Das Inhaltsmodell des komplexen Typs %1 ist keine gültige Erweiterung des Inhaltsmodells von %2.</translation> </message> <message> - <location line="+10"/> <source>Complex type %1 must have simple content.</source> <translation>Der komplexe Typ %1 kann nur einfachen Inhalt haben.</translation> </message> <message> - <location line="+7"/> <source>Complex type %1 must have the same simple type as its base class %2.</source> <translation>Der komplexe Typ %1 kann nur einen einfachen Typ als Basisklasse %2 haben.</translation> </message> <message> - <location line="+67"/> <source>Complex type %1 cannot be derived from base type %2%3.</source> <translation>Der komplexe Typ %1 kann nicht vom Basistyp %2 abgeleitet werden%3.</translation> </message> <message> - <location line="+14"/> <source>Attributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3.</source> <translation>Die Attribute des komplexen Typs %1 sind keine gültige Einschränkung der Attribute des Basistyps %2: %3.</translation> </message> <message> - <location line="+14"/> <source>Complex type %1 with simple content cannot be derived from complex base type %2.</source> <translation>Der komplexe Typ %1 einfachen Inhalts darf nicht vom komplexen Basistyp %2 abgeleitet werden.</translation> </message> <message> - <location line="+35"/> <source>Item type of simple type %1 cannot be a complex type.</source> <translation>Der Elementtyp des einfachen Typs %1 kann kein komplexer Typ sein.</translation> </message> <message> - <location line="+44"/> <source>Member type of simple type %1 cannot be a complex type.</source> <translation>Der Typ eines Mitglieds des einfachen Typs %1 kann kein komplexer Typ sein.</translation> </message> <message> - <location line="+8"/> <source>%1 is not allowed to have a member type with the same name as itself.</source> <translation>%1 darf keinen Typ eines Mitglieds desselben Namens haben.</translation> </message> <message> - <location line="+83"/> - <location line="+29"/> - <location line="+34"/> <source>%1 facet collides with %2 facet.</source> <translation>Die Facette %1 steht im Widerspruch zu der Facette %2.</translation> </message> <message> - <location line="-20"/> <source>%1 facet must have the same value as %2 facet of base type.</source> <translation>Die Facette %1 muss denselben Wert wie die Facette %2 des Basistyps haben.</translation> </message> <message> - <location line="+37"/> <source>%1 facet must be equal or greater than %2 facet of base type.</source> <translation>Die Facette %1 muss größer oder gleich der Facette %2 des Basistyps sein.</translation> </message> <message> - <location line="+19"/> - <location line="+125"/> - <location line="+55"/> - <location line="+12"/> - <location line="+91"/> - <location line="+58"/> - <location line="+34"/> - <location line="+35"/> <source>%1 facet must be less than or equal to %2 facet of base type.</source> <translation>Die Facette %1 muss kleiner oder gleich der Facette %2 des Basistyps sein.</translation> </message> <message> - <location line="-389"/> <source>%1 facet contains invalid regular expression</source> <translation>Die Facette %1 enthält einen ungültigen regulären Ausdruck</translation> </message> <message> - <location line="+15"/> <source>Unknown notation %1 used in %2 facet.</source> <translation>Die Facette %2 enthält eine ungültige Notation %1.</translation> </message> <message> - <location line="+20"/> <source>%1 facet contains invalid value %2: %3.</source> <translation>Die Facette %1 enthält einen ungültigen Wert %2: %3.</translation> </message> <message> - <location line="+22"/> <source>%1 facet cannot be %2 or %3 if %4 facet of base type is %5.</source> <translation>Die Facette %1 kann nicht %2 oder %3 sein, wenn die Facette %4 des Basistyps %5 ist.</translation> </message> <message> - <location line="+11"/> <source>%1 facet cannot be %2 if %3 facet of base type is %4.</source> <translation>Die Facette %1 kann nicht %2 sein, wenn die Facette %3 des Basistyps %4 ist.</translation> </message> <message> - <location line="+20"/> - <location line="+55"/> - <location line="+230"/> <source>%1 facet must be less than or equal to %2 facet.</source> <translation>Die Facette %1 muss kleiner oder gleich der Facette %2 sein.</translation> </message> <message> - <location line="-257"/> - <location line="+134"/> - <location line="+82"/> <source>%1 facet must be less than %2 facet of base type.</source> <translation>Die Facette %1 muss kleiner der Facette %2 des Basistyps sein.</translation> </message> <message> - <location line="-201"/> - <location line="+79"/> <source>%1 facet and %2 facet cannot appear together.</source> <translation>Die Facetten %1 und %2 können nicht zusammen erscheinen.</translation> </message> <message> - <location line="-27"/> - <location line="+12"/> - <location line="+113"/> <source>%1 facet must be greater than %2 facet of base type.</source> <translation>Die Facette %1 muss größer als die Facette %2 des Basistyps sein.</translation> </message> <message> - <location line="-86"/> - <location line="+58"/> <source>%1 facet must be less than %2 facet.</source> <translation>Die Facette %1 muss kleiner als die Facette %2 sein.</translation> </message> <message> - <location line="-42"/> - <location line="+58"/> <source>%1 facet must be greater than or equal to %2 facet of base type.</source> <translation>Die Facette %1 muss größer oder gleich der Facette %2 des Basistyps sein.</translation> </message> <message> - <location line="+113"/> <source>Simple type contains not allowed facet %1.</source> <translation>Der einfache Typ enthält eine unzulässige Facette %1.</translation> </message> <message> - <location line="+12"/> <source>%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list.</source> <translation>Die Facetten %1, %2, %3, %4, %5 und %6 sind bei Vererbung durch Listen nicht zulässig.</translation> </message> <message> - <location line="+16"/> <source>Only %1 and %2 facets are allowed when derived by union.</source> <translation>Bei Vererbung durch Vereinigung sind nur die Facetten %1 und %2 zulässig.</translation> </message> <message> - <location line="+23"/> - <location line="+16"/> <source>%1 contains %2 facet with invalid data: %3.</source> <translation>%1 enthält eine Facette %2 mit ungültigen Daten: %3.</translation> </message> <message> - <location line="+24"/> <source>Attribute group %1 contains attribute %2 twice.</source> <translation>Die Attributgruppe %1 enthält das Attribut %2 zweimal.</translation> </message> <message> - <location line="+9"/> <source>Attribute group %1 contains two different attributes that both have types derived from %2.</source> <translation>Die Attributgruppe %1 enthält zwei verschiedene Attribute mit Typen, die von %2 abgeleitet sind.</translation> </message> <message> - <location line="+8"/> <source>Attribute group %1 contains attribute %2 that has value constraint but type that inherits from %3.</source> <translation>Die Attributgruppe %1 enthält ein Attribut %2 mit einer Einschränkung des Werts, dessen Typ aber von %3 abgeleitet ist.</translation> </message> <message> - <location line="+23"/> <source>Complex type %1 contains attribute %2 twice.</source> <translation>Der komplexe Typ %1 enthält das Attribut %2 doppelt.</translation> </message> <message> - <location line="+9"/> <source>Complex type %1 contains two different attributes that both have types derived from %2.</source> <translation>Die Attributgruppe %1 enthält zwei verschiedene Attribute mit Typen, die beide von %2 abgeleitet sind.</translation> </message> <message> - <location line="+8"/> <source>Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3.</source> <translation>Der komplexe Typ %1 enthält ein Attribut %2 mit einer Einschränkung des Werts, dessen Typ aber von %3 abgeleitet ist.</translation> </message> <message> - <location line="+43"/> <source>Element %1 is not allowed to have a value constraint if its base type is complex.</source> <translation>Das Element %1 darf keine Einschränkung des Werts haben, wenn der Basistyp komplex ist.</translation> </message> <message> - <location line="+7"/> <source>Element %1 is not allowed to have a value constraint if its type is derived from %2.</source> <translation>Das Element %1 darf keine Einschränkung des Werts haben, wenn sein Typ von %2 abgeleitet ist.</translation> </message> <message> - <location line="+10"/> - <location line="+11"/> <source>Value constraint of element %1 is not of elements type: %2.</source> <translation>Die Einschränkung des Werts des Elements %1 ist nicht vom Typ des Elements: %2.</translation> </message> <message> - <location line="+13"/> <source>Element %1 is not allowed to have substitution group affiliation as it is no global element.</source> <translation>Das Element %1 kann nicht zu einer Substitutionsgruppe gehören, da es kein globales Element ist.</translation> </message> <message> - <location line="+28"/> <source>Type of element %1 cannot be derived from type of substitution group affiliation.</source> <translation>Der Typ des Elements %1 kann nicht vom Typ der zugehörigen Substitutionsgruppe abgeleitet werden.</translation> </message> <message> - <location line="+41"/> <source>Value constraint of attribute %1 is not of attributes type: %2.</source> <translation>Die Einschränkung des Werts des Attributs %1 ist nicht vom Typ des Attributs: %2.</translation> </message> <message> - <location line="+9"/> <source>Attribute %1 has value constraint but has type derived from %2.</source> <translation>Das Attribut %1 hat eine Einschränkung des Werts, während sein Typ von %2 abgeleitet ist.</translation> </message> <message> - <location line="+56"/> <source>%1 attribute in derived complex type must be %2 like in base type.</source> <translation>Das Attribut %1 in einem abgeleiteten komplexen Typ muss wie im Basistyp '%2' sein.</translation> </message> <message> - <location line="+11"/> <source>Attribute %1 in derived complex type must have %2 value constraint like in base type.</source> <translation>Das Attribut %1 in einem abgeleiteten komplexen Typ muss wie der Basistyp eine Einschränkung des Werts (%2) haben.</translation> </message> <message> - <location line="+9"/> <source>Attribute %1 in derived complex type must have the same %2 value constraint like in base type.</source> <translation>Das Attribut %1 in einem abgeleiteten komplexen Typ muss die gleiche Einschränkung des Werts (%2) wie der Basistyp haben.</translation> </message> <message> - <location line="+7"/> <source>Attribute %1 in derived complex type must have %2 value constraint.</source> <translation>Das Attribut %1 in einem abgeleiteten komplexen Typ muss die Einschränkung des Werts '%2' haben.</translation> </message> <message> - <location line="+18"/> <source>processContent of base wildcard must be weaker than derived wildcard.</source> <translation>Das 'processContent'-Attribut des Basissuchmusters muss schwächer sein als das des abgeleiteten Suchmusters.</translation> </message> <message> - <location line="+39"/> - <location line="+15"/> <source>Element %1 exists twice with different types.</source> <translation>Es existieren zwei Vorkommen verschiedenen Typs des Elements %1.</translation> </message> <message> - <location line="+28"/> <source>Particle contains non-deterministic wildcards.</source> <translation>Der Partikel enthält nicht-deterministische Suchmuster.</translation> </message> <message> - <location filename="../src/xmlpatterns/schema/qxsdschemahelper.cpp" line="+691"/> - <location line="+63"/> <source>Base attribute %1 is required but derived attribute is not.</source> <translation>Das Basisattribut %1 ist erforderlich, nicht jedoch das abgeleitete Attribut.</translation> </message> <message> - <location line="-57"/> <source>Type of derived attribute %1 cannot be validly derived from type of base attribute.</source> <translation>Der Typ des abgeleiteten Attributs %1 kann nicht aus Typ des Basisattributs bestimmt werden.</translation> </message> <message> - <location line="+28"/> <source>Value constraint of derived attribute %1 does not match value constraint of base attribute.</source> <translation>Die Einschränkung des Werts des abgeleiteten Attributs %1 entspricht nicht der Einschränkung des Werts des Basisattributs.</translation> </message> <message> - <location line="+5"/> <source>Derived attribute %1 does not exist in the base definition.</source> <translation>Das abgeleitete Attribut %1 existiert in der Basisdefinition nicht.</translation> </message> <message> - <location line="+11"/> <source>Derived attribute %1 does not match the wildcard in the base definition.</source> <translation>Das abgeleitete Attribut %1 entspricht nicht dem Suchmuster in der Basisdefinition.</translation> </message> <message> - <location line="+17"/> <source>Base attribute %1 is required but missing in derived definition.</source> <translation>Das erforderliche Basisattribut %1 fehlt in der abgeleiteten Definition.</translation> </message> <message> - <location line="+9"/> <source>Derived definition contains an %1 element that does not exists in the base definition</source> <translation>Die abgeleitete Definition enthält ein Element %1, was in der Basisdefinition nicht existiert</translation> </message> <message> - <location line="+5"/> <source>Derived wildcard is not a subset of the base wildcard.</source> <translation>Das abgeleitete Suchmuster ist keine Untermenge des Basissuchmusters.</translation> </message> <message> - <location line="+5"/> <source>%1 of derived wildcard is not a valid restriction of %2 of base wildcard</source> <translation>Das Attribut %1 des abgeleiteten Suchmusters ist keine gültige Einschränkung des Attributs '%2' des Basissuchmusters</translation> </message> <message> - <location line="+23"/> <source>Attribute %1 from base type is missing in derived type.</source> <translation>Das Attribut %1 des Basistyps fehlt im abgeleiteten Typ.</translation> </message> <message> - <location line="+5"/> <source>Type of derived attribute %1 differs from type of base attribute.</source> <translation>Der Typ des abgeleiteten Attributs %1 unterscheidet sich vom Basistyp.</translation> </message> <message> - <location line="+8"/> <source>Base definition contains an %1 element that is missing in the derived definition</source> <translation>Das Element %1 des Basistyps fehlt in der abgeleiteten Definition</translation> </message> <message> - <location filename="../src/xmlpatterns/schema/qxsdschemaresolver.cpp" line="+354"/> <source>%1 references unknown %2 or %3 element %4.</source> <translation>%1 verweist auf ein unbekanntes Element %4 ('%2' oder '%3').</translation> </message> <message> - <location line="+10"/> <source>%1 references identity constraint %2 that is no %3 or %4 element.</source> <translation>%1 verweist auf eine Identitätseinschränkung %2, die weder ein '%3' noch ein '%4' Element ist.</translation> </message> <message> - <location line="+10"/> <source>%1 has a different number of fields from the identity constraint %2 that it references.</source> <translation>Bei %1 unterscheidet sich die Anzahl der Felder von der der Identitätseinschränkung %2, auf die es verweist.</translation> </message> <message> - <location line="+23"/> <source>Base type %1 of %2 element cannot be resolved.</source> <translation>Der Basistyp %1 des Elements %2 kann nicht aufgelöst werden.</translation> </message> <message> - <location line="+84"/> <source>Item type %1 of %2 element cannot be resolved.</source> <translation>Der Subtyp %1 des Elements %2 kann nicht aufgelöst werden.</translation> </message> <message> - <location line="+31"/> <source>Member type %1 of %2 element cannot be resolved.</source> <translation>Der Subtyp %1 des Elements %2 kann nicht aufgelöst werden.</translation> </message> <message> - <location line="+28"/> - <location line="+415"/> - <location line="+30"/> <source>Type %1 of %2 element cannot be resolved.</source> <translation>Der Typ %1 des Elements %2 kann nicht aufgelöst werden.</translation> </message> <message> - <location line="-423"/> <source>Base type %1 of complex type cannot be resolved.</source> <translation>Der Basistyp %1 des komplexen Typs kann nicht aufgelöst werden.</translation> </message> <message> - <location line="+9"/> <source>%1 cannot have complex base type that has a %2.</source> <translation>%1 kann keinen komplexen Basistyp haben, der '%2' spezifiziert.</translation> </message> <message> - <location line="+286"/> <source>Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type.</source> <translation>Das Inhaltsmodell des komplexen Typs %1enthält ein Element '%2'; es kann daher nicht durch Erweiterung von einem Typ abgeleitet werden, der nicht leer ist.</translation> </message> <message> - <location line="+6"/> <source>Complex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model.</source> <translation>Der komplexe Typ %1 kann nicht durch Erweiterung von %2 abgeleitet werden, da letzterer ein '%3'-Element in seinem Inhaltsmodell hat.</translation> </message> <message> - <location line="+101"/> <source>Type of %1 element must be a simple type, %2 is not.</source> <translation>Der Typ des Elements %1 muss ein einfacher Typ sein, was %2 nicht ist.</translation> </message> <message> - <location line="+62"/> <source>Substitution group %1 of %2 element cannot be resolved.</source> <translation>Die Substitutionsgruppe %1 des Elements %2 kann nicht aufgelöst werden.</translation> </message> <message> - <location line="+9"/> <source>Substitution group %1 has circular definition.</source> <translation>Die Substitutionsgruppe %1 hat eine zirkuläre Definition.</translation> </message> <message> - <location line="+120"/> - <location line="+7"/> <source>Duplicated element names %1 in %2 element.</source> <translation>Der Elementname %1 kommt im Element %2 mehrfach vor.</translation> </message> <message> - <location line="+29"/> - <location line="+52"/> - <location line="+71"/> - <location line="+28"/> <source>Reference %1 of %2 element cannot be resolved.</source> <translation>Der Verweis %1 des Elements %2 kann nicht aufgelöst werden.</translation> </message> <message> - <location line="-138"/> <source>Circular group reference for %1.</source> <translation>Zirkulärer Verweis bei %1.</translation> </message> <message> - <location line="+16"/> <source>%1 element is not allowed in this scope</source> <translation>Das Element %1 ist in diesem Bereich nicht zulässig</translation> </message> <message> - <location line="+5"/> <source>%1 element cannot have %2 attribute with value other than %3.</source> <translation>Der Wert des Attributs %2 des Elements %1 kann nur %3 sein.</translation> </message> <message> - <location line="+8"/> <source>%1 element cannot have %2 attribute with value other than %3 or %4.</source> <translation>Der Wert des Attributs %2 des Elements %1 kann nur %3 oder %4 sein.</translation> </message> <message> - <location line="+91"/> <source>%1 or %2 attribute of reference %3 does not match with the attribute declaration %4.</source> <translation>Das Attribut %1 oder %2 des Verweises %3 entspricht nicht der Attributsdeklaration %4.</translation> </message> <message> - <location line="+25"/> <source>Attribute group %1 has circular reference.</source> <translation>Die Attributgruppe %1 hat einen zirkulären Verweis.</translation> </message> <message> - <location line="+131"/> <source>%1 attribute in %2 must have %3 use like in base type %4.</source> <translation>Das Attribut %1 aus %2 muss die Verwendung '%3' spezifizieren, wie im Basistyp %4.</translation> </message> <message> - <location line="+52"/> <source>Attribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2.</source> <translation>Das Attributssuchmuster %1 ist keine gültige Einschränkung des Attributssuchmuster des Basistyps %2.</translation> </message> <message> - <location line="+7"/> <source>%1 has attribute wildcard but its base type %2 has not.</source> <translation>%1 hat ein Attributssuchmuster, nicht jedoch sein Basistyp %2.</translation> </message> <message> - <location line="+26"/> <source>Union of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible.</source> <translation>Die Vereinigung der Attributssuchmuster des Typs %1 und seines Basistyps %2 ergibt keinen gültigen Ausdruck.</translation> </message> <message> - <location line="+48"/> <source>Enumeration facet contains invalid content: {%1} is not a value of type %2.</source> <translation>Ungültiger Inhalt einer Aufzählungsfacette: {%1} ist kein Wert des Typs %2.</translation> </message> <message> - <location line="+10"/> <source>Namespace prefix of qualified name %1 is not defined.</source> <translation>Der Namensraum-Präfix des qualifizierten Namens %1 ist nicht definiert.</translation> </message> <message> - <location line="+51"/> - <location line="+18"/> <source>%1 element %2 is not a valid restriction of the %3 element it redefines: %4.</source> <translation>Das Element %2 (%1) ist keine gültige Einschränkung des überschriebenen Elements (%3): %4.</translation> </message> <message> - <location filename="../src/xmlpatterns/schema/qxsdparticlechecker.cpp" line="+165"/> <source>Empty particle cannot be derived from non-empty particle.</source> <translation>Es kann kein leerer Partikel von einem Partikel abgeleitet werden, der nicht leer ist.</translation> </message> <message> - <location line="+15"/> <source>Derived particle is missing element %1.</source> <translation>Das Element %1 fehlt im abgeleiteten Partikel.</translation> </message> <message> - <location line="+7"/> <source>Derived element %1 is missing value constraint as defined in base particle.</source> <translation>Im abgeleiteten Element %1 fehlt Einschränkung des Wertes, wie sie im Basispartikel definiert ist.</translation> </message> <message> - <location line="+5"/> <source>Derived element %1 has weaker value constraint than base particle.</source> <translation>Das abgeleitete Element %1 hat eine schwächere Einschränkung des Wertes als der Basispartikel.</translation> </message> <message> - <location line="+7"/> <source>Fixed value constraint of element %1 differs from value constraint in base particle.</source> <translation>Die feste Einschränkung des Wertes des Elements %1 unterscheidet sich von der Einschränkung des Wertes des Basispartikels.</translation> </message> <message> - <location line="+7"/> <source>Derived element %1 cannot be nillable as base element is not nillable.</source> <translation>Das abgeleitete Element %1 kann kein 'nillable'-Attribut haben, da das Basiselement keines spezifiziert.</translation> </message> <message> - <location line="+10"/> <source>Block constraints of derived element %1 must not be more weaker than in the base element.</source> <translation>Die Blockeinschränkung des abgeleiteten Elements %1 darf nicht schwächer sein als im Basiselement.</translation> </message> <message> - <location line="+11"/> <source>Simple type of derived element %1 cannot be validly derived from base element.</source> <translation>Der einfache Typ des abgeleiteten Elements %1 kann nicht vom Basiselement abgeleitet werden.</translation> </message> <message> - <location line="+5"/> <source>Complex type of derived element %1 cannot be validly derived from base element.</source> <translation>Der komplexe Typ des abgeleiteten Elements %1 kann nicht vom Basiselement abgeleitet werden.</translation> </message> <message> - <location line="+24"/> <source>Element %1 is missing in derived particle.</source> <translation>Das Element %1 fehlt im abgeleiteten Partikel.</translation> </message> <message> - <location line="+18"/> <source>Element %1 does not match namespace constraint of wildcard in base particle.</source> <translation>Das Element %1 entspricht nicht der Namensraumeinschränkung des Basispartikels.</translation> </message> <message> - <location line="+11"/> <source>Wildcard in derived particle is not a valid subset of wildcard in base particle.</source> <translation>Das Suchmuster im abgeleiteten Partikel ist keine gültige Untermenge des Suchmusters des Basispartikels.</translation> </message> <message> - <location line="+5"/> <source>processContent of wildcard in derived particle is weaker than wildcard in base particle.</source> <translation>Das processContent-Attribut des Suchmusters des abgeleiteten Partikels ist schwächer als das Suchmuster des Basispartikels.</translation> </message> <message> - <location line="+240"/> <source>Derived particle allows content that is not allowed in the base particle.</source> <translation>Der abgeleitete Partikel gestattet Inhalt, der für den Basispartikel nicht zulässig ist.</translation> </message> <message> - <location filename="../src/xmlpatterns/schema/qxsdschemaparser.cpp" line="+170"/> <source>Can not process unknown element %1, expected elements are: %2.</source> <translation>Das unbekannte Element %1 kann nicht verarbeitet werden; zulässig wären: %2.</translation> </message> <message> - <location line="+13"/> <source>Element %1 is not allowed in this scope, possible elements are: %2.</source> <translation>Das Element %1 ist in diesem Bereich nicht zulässig; möglich wären: %2.</translation> </message> <message> - <location line="+16"/> <source>Child element is missing in that scope, possible child elements are: %1.</source> <translation>Das Unterelement fehlt im Bereich; mögliche Unterelemente wären: %1.</translation> </message> <message> - <location line="+143"/> <source>Document is not a XML schema.</source> <translation>Das Dokument ist kein XML-Schema.</translation> </message> <message> - <location line="+22"/> <source>%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4.</source> <translation>Das Attribut %1 des Elements %2 enthält ungültigen Inhalt: {%3} ist kein Wert des Typs %4.</translation> </message> <message> - <location line="+6"/> <source>%1 attribute of %2 element contains invalid content: {%3}.</source> <translation>Das Attribut %1 des Elements %2 enthält ungültigen Inhalt: {%3}.</translation> </message> <message> - <location line="+26"/> <source>Target namespace %1 of included schema is different from the target namespace %2 as defined by the including schema.</source> <translation>Der Zielnamensraum %1 des eingebundenen Schemas unterscheidet sich vom dem von ihm definierten Zielnamensraum %2.</translation> </message> <message> - <location line="+14"/> - <location line="+11"/> <source>Target namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema.</source> <translation>Der Zielnamensraum %1 des importierten Schemas unterscheidet sich vom dem von ihm definierten Zielnamensraum %2.</translation> </message> <message> - <location line="+243"/> <source>%1 element is not allowed to have the same %2 attribute value as the target namespace %3.</source> <translation>Das Element %1 kann nicht den Zielnamensraum %3 als Wert des Attributs '%2' spezifizieren.</translation> </message> <message> - <location line="+8"/> <source>%1 element without %2 attribute is not allowed inside schema without target namespace.</source> <translation>In einem Schema ohne Namensraum muss das Element %1 ein Attribut %2 haben.</translation> </message> <message> - <location line="+851"/> - <location line="+158"/> <source>%1 element is not allowed inside %2 element if %3 attribute is present.</source> <translation>Wenn das Attribut %3 vorhanden ist, darf das Element %1 nicht im Element %2 vorkommen.</translation> </message> <message> - <location line="-97"/> - <location line="+119"/> - <location line="+92"/> <source>%1 element has neither %2 attribute nor %3 child element.</source> <translation>Das Element %1 hat weder das Attribut %2 noch ein Unterelement %3.</translation> </message> <message> - <location line="+835"/> - <location line="+1474"/> - <location line="+232"/> - <location line="+7"/> - <location line="+260"/> - <location line="+17"/> - <location line="+258"/> - <location line="+6"/> - <location line="+17"/> - <location line="+6"/> - <location line="+17"/> - <location line="+11"/> - <location line="+11"/> - <location line="+11"/> <source>%1 element with %2 child element must not have a %3 attribute.</source> <translation>Das Element %1 darf kein Attribut %3 haben, wenn das Unterelement %2 vorhanden ist.</translation> </message> <message> - <location line="-1325"/> <source>%1 attribute of %2 element must be %3 or %4.</source> <translation>Das Attribut %1 des Elements %2 kann nur %3 oder %4 sein.</translation> </message> <message> - <location line="+36"/> <source>%1 attribute of %2 element must have a value of %3.</source> <translation>Das Attribut %1 des Elements %2 muss den Wert %3 haben.</translation> </message> <message> - <location line="+7"/> - <location line="+34"/> <source>%1 attribute of %2 element must have a value of %3 or %4.</source> <translation>Das Attribut %1 des Elements %2 kann nur einen der Werte %3 oder %4 haben.</translation> </message> <message> - <location line="+319"/> - <location line="+129"/> - <location line="+9"/> - <location line="+7"/> - <location line="+7"/> - <location line="+327"/> - <location line="+203"/> - <location line="+6"/> - <location line="+6"/> - <location line="+6"/> - <location line="+6"/> - <location line="+6"/> - <location line="+6"/> - <location line="+77"/> <source>%1 element must not have %2 and %3 attribute together.</source> <translation>Die Attribute %2 und %3 können nicht zusammen im Element %1 erscheinen.</translation> </message> <message> - <location line="-768"/> - <location line="+222"/> <source>Content of %1 attribute of %2 element must not be from namespace %3.</source> <translation>Der Inhalt des Attributs %1 des Elements %2 kann nicht vom Namensraum %3 stammen.</translation> </message> <message> - <location line="-215"/> - <location line="+222"/> <source>%1 attribute of %2 element must not be %3.</source> <translation>Das Attribut %1 des Elements %2 kann nicht %3 sein.</translation> </message> <message> - <location line="-64"/> <source>%1 attribute of %2 element must have the value %3 because the %4 attribute is set.</source> <translation>Das Attribut %1 des Elements %2 muss den Wert %3 haben, da das Attribut %4 gesetzt ist.</translation> </message> <message> - <location line="+187"/> <source>Specifying use='prohibited' inside an attribute group has no effect.</source> <translation>Die Angabe von use='prohibited' in einer Attributgruppe hat keinerlei Auswirkungen.</translation> </message> <message> - <location line="+353"/> <source>%1 element must have either %2 or %3 attribute.</source> <translation>Das Element %1 muss eines der Attribute %2 oder %3 spezifizieren.</translation> </message> <message> - <location line="+554"/> <source>%1 element must have either %2 attribute or %3 or %4 as child element.</source> <translation>Das Element %1 muss entweder das Attribut %2 spezifizieren oder über eines der Unterelemente %3 oder %4 verfügen.</translation> </message> <message> - <location line="+55"/> <source>%1 element requires either %2 or %3 attribute.</source> <translation>Das Element %1 erfordert eines der Attribute %2 oder %3.</translation> </message> <message> - <location line="+19"/> <source>Text or entity references not allowed inside %1 element</source> <translation>Text- oder Entitätsreferenzen sind innerhalb eines %1-Elements nicht zulässig.</translation> </message> <message> - <location line="+41"/> - <location line="+112"/> <source>%1 attribute of %2 element must contain %3, %4 or a list of URIs.</source> <translation>Das Attribut %1 des Elements %2 muss %3, %4 oder eine Liste der URIs enthalten.</translation> </message> <message> - <location line="+126"/> <source>%1 element is not allowed in this context.</source> <translation>Das Element %1 ist in diesem Kontext nicht zulässig.</translation> </message> <message> - <location line="+53"/> <source>%1 attribute of %2 element has larger value than %3 attribute.</source> <translation>Der Wert des Attributs %1 des Elements %2 ist größer als der des Attributs %3.</translation> </message> <message> - <location line="+25"/> <source>Prefix of qualified name %1 is not defined.</source> <translation>Der Präfix des qualifizierten Namens %1 ist nicht definiert.</translation> </message> <message> - <location line="+65"/> - <location line="+61"/> <source>%1 attribute of %2 element must either contain %3 or the other values.</source> <translation>Der Wert des Attributs %1 des Elements %2 muss entweder %3 oder die anderen Werte enthalten.</translation> </message> <message> - <location line="+131"/> <source>Component with ID %1 has been defined previously.</source> <translation>Es wurde bereits eine Komponente mit der ID %1 definiert.</translation> </message> <message> - <location line="+17"/> <source>Element %1 already defined.</source> <translation>Das Element %1 ist bereits definiert.</translation> </message> <message> - <location line="+11"/> <source>Attribute %1 already defined.</source> <translation>Das Attribut %1 ist bereits definiert.</translation> </message> <message> - <location line="+15"/> <source>Type %1 already defined.</source> <translation>Der Typ %1 ist bereits definiert.</translation> </message> <message> - <location line="+23"/> <source>Attribute group %1 already defined.</source> <translation>Die Attributgruppe %1 ist bereits definiert.</translation> </message> <message> - <location line="+11"/> <source>Element group %1 already defined.</source> <translation>Die Elementgruppe %1 ist bereits definiert.</translation> </message> <message> - <location line="+11"/> <source>Notation %1 already defined.</source> <translation>Die Notation %1 ist bereits definiert.</translation> </message> <message> - <location line="+11"/> <source>Identity constraint %1 already defined.</source> <translation>Die Identitätseinschränkung %1 ist bereits definiert.</translation> </message> <message> - <location line="+11"/> <source>Duplicated facets in simple type %1.</source> <translation>Im einfachen Typ %1 kommen Facetten mehrfach vor.</translation> </message> <message> - <location filename="../src/xmlpatterns/schema/qxsdtypechecker.cpp" line="+233"/> - <location line="+7"/> - <location line="+21"/> <source>%1 is not valid according to %2.</source> <translation>%1 ist nach %2 ungültig.</translation> </message> <message> - <location line="+167"/> <source>String content does not match the length facet.</source> <translation>Der Zeichenketteninhalt entspricht nicht der Längenfacette.</translation> </message> <message> - <location line="+8"/> <source>String content does not match the minLength facet.</source> <translation>Der Zeichenketteninhalt entspricht nicht der Längenfacette (Minimumangabe).</translation> </message> <message> - <location line="+8"/> <source>String content does not match the maxLength facet.</source> <translation>Der Zeichenketteninhalt entspricht nicht der Längenfacette (Maximumangabe).</translation> </message> <message> - <location line="+18"/> <source>String content does not match pattern facet.</source> <translation>Der Zeichenketteninhalt entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+18"/> <source>String content is not listed in the enumeration facet.</source> <translation>Der Zeichenketteninhalt ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+17"/> <source>Signed integer content does not match the maxInclusive facet.</source> <translation>Der vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'maxInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Signed integer content does not match the maxExclusive facet.</source> <translation>Der vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'maxExclusive'.</translation> </message> <message> - <location line="+8"/> <source>Signed integer content does not match the minInclusive facet.</source> <translation>Der vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'minInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Signed integer content does not match the minExclusive facet.</source> <translation>Der vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'minExclusive'.</translation> </message> <message> - <location line="+18"/> <source>Signed integer content is not listed in the enumeration facet.</source> <translation>Der vorzeichenbehaftete Ganzzahlwert ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>Signed integer content does not match pattern facet.</source> <translation>Der vorzeichenbehaftete Ganzzahlwert entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+9"/> <source>Signed integer content does not match in the totalDigits facet.</source> <translation>Der vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'totalDigits'.</translation> </message> <message> - <location line="+17"/> <source>Unsigned integer content does not match the maxInclusive facet.</source> <translation>Der vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'maxInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Unsigned integer content does not match the maxExclusive facet.</source> <translation>Der vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'maxExclusive'.</translation> </message> <message> - <location line="+8"/> <source>Unsigned integer content does not match the minInclusive facet.</source> <translation>Der vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'minInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Unsigned integer content does not match the minExclusive facet.</source> <translation>Der vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'minExclusive'.</translation> </message> <message> - <location line="+18"/> <source>Unsigned integer content is not listed in the enumeration facet.</source> <translation>Der vorzeichenlose Ganzzahlwert ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>Unsigned integer content does not match pattern facet.</source> <translation>Der vorzeichenlose Ganzzahlwert entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+9"/> <source>Unsigned integer content does not match in the totalDigits facet.</source> <translation>Der vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'totalDigits'.</translation> </message> <message> - <location line="+17"/> <source>Double content does not match the maxInclusive facet.</source> <translation>Die Gleitkommazahl entspricht nicht der Facette 'maxInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Double content does not match the maxExclusive facet.</source> <translation>Die Gleitkommazahl entspricht nicht der Facette 'maxExclusive'.</translation> </message> <message> - <location line="+8"/> <source>Double content does not match the minInclusive facet.</source> <translation>Die Gleitkommazahl entspricht nicht der Facette 'minInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Double content does not match the minExclusive facet.</source> <translation>Die Gleitkommazahl entspricht nicht der Facette 'minExclusive'.</translation> </message> <message> - <location line="+18"/> <source>Double content is not listed in the enumeration facet.</source> <translation>Die Gleitkommazahl ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>Double content does not match pattern facet.</source> <translation>Die Gleitkommazahl entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+18"/> <source>Decimal content does not match in the fractionDigits facet.</source> <translation>Die Dezimalzahl entspricht nicht der Facette 'fractionDigit'.</translation> </message> <message> - <location line="+9"/> <source>Decimal content does not match in the totalDigits facet.</source> <translation>Die Dezimalzahl entspricht nicht der Facette 'totalDigits'.</translation> </message> <message> - <location line="+14"/> <source>Date time content does not match the maxInclusive facet.</source> <translation>Die Datumsangabe entspricht nicht der Facette 'maxInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Date time content does not match the maxExclusive facet.</source> <translation>Die Datumsangabe entspricht nicht der Facette 'maxExclusive'.</translation> </message> <message> - <location line="+8"/> <source>Date time content does not match the minInclusive facet.</source> <translation>Die Datumsangabe entspricht nicht der Facette 'minInclusive'.</translation> </message> <message> - <location line="+8"/> <source>Date time content does not match the minExclusive facet.</source> <translation>Die Datumsangabe entspricht nicht der Facette 'minExclusive'.</translation> </message> <message> - <location line="+18"/> <source>Date time content is not listed in the enumeration facet.</source> <translation>Die Datumsangabe ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>Date time content does not match pattern facet.</source> <translation>Die Datumsangabe entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+15"/> <source>Duration content does not match the maxInclusive facet.</source> <translation>Die Angabe der Zeitdauer entspricht nicht der Facette 'maxInclusive'.</translation> </message> <message> - <location line="+9"/> <source>Duration content does not match the maxExclusive facet.</source> <translation>Die Angabe der Zeitdauer entspricht nicht der Facette 'maxExclusive'.</translation> </message> <message> - <location line="+9"/> <source>Duration content does not match the minInclusive facet.</source> <translation>Die Angabe der Zeitdauer entspricht nicht der Facette 'minInclusive'.</translation> </message> <message> - <location line="+9"/> <source>Duration content does not match the minExclusive facet.</source> <translation>Die Angabe der Zeitdauer entspricht nicht der Facette 'minExclusive'.</translation> </message> <message> - <location line="+18"/> <source>Duration content is not listed in the enumeration facet.</source> <translation>Die Angabe der Zeitdauer ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>Duration content does not match pattern facet.</source> <translation>Die Angabe der Zeitdauer entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+27"/> <source>Boolean content does not match pattern facet.</source> <translation>Der Boolesche Wert entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+17"/> <source>Binary content does not match the length facet.</source> <translation>Der binäre Inhalt entspricht nicht der Längenfacette.</translation> </message> <message> - <location line="+8"/> <source>Binary content does not match the minLength facet.</source> <translation>Der binäre Inhalt entspricht nicht der Facette 'minLength'.</translation> </message> <message> - <location line="+8"/> <source>Binary content does not match the maxLength facet.</source> <translation>Der binäre Inhalt entspricht nicht der Facette 'maxLength'.</translation> </message> <message> - <location line="+18"/> <source>Binary content is not listed in the enumeration facet.</source> <translation>Der binäre Inhalt ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+27"/> <source>Invalid QName content: %1.</source> <translation>Der Inhalt des qualifizierten Namens ist ungültig: %1.</translation> </message> <message> - <location line="+17"/> <source>QName content is not listed in the enumeration facet.</source> <translation>Der Inhalt des qualifizierten Namens ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>QName content does not match pattern facet.</source> <translation>Der Inhalt des qualifizierten Namens entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+36"/> <source>Notation content is not listed in the enumeration facet.</source> <translation>Der Inhalt der Notation ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+19"/> <source>List content does not match length facet.</source> <translation>Der Listeninhalt entspricht nicht der Längenfacette.</translation> </message> <message> - <location line="+7"/> <source>List content does not match minLength facet.</source> <translation>Der Listeninhalt entspricht nicht der Facette 'minLength'.</translation> </message> <message> - <location line="+7"/> <source>List content does not match maxLength facet.</source> <translation>Der Listeninhalt entspricht nicht der Facette 'maxLength'.</translation> </message> <message> - <location line="+90"/> <source>List content is not listed in the enumeration facet.</source> <translation>Der Listeninhalt ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>List content does not match pattern facet.</source> <translation>Der Listeninhalt entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+39"/> <source>Union content is not listed in the enumeration facet.</source> <translation>Der Inhalt der Vereinigung ist nicht in der Aufzählungsfacette enthalten.</translation> </message> <message> - <location line="+18"/> <source>Union content does not match pattern facet.</source> <translation>Der Inhalt der Vereinigung entspricht nicht der Suchmusterfacette.</translation> </message> <message> - <location line="+15"/> <source>Data of type %1 are not allowed to be empty.</source> <translation>Daten vom Typ %1 können nicht leer sein.</translation> </message> <message> - <location filename="../src/xmlpatterns/schema/qxsdvalidatinginstancereader.cpp" line="+160"/> <source>Element %1 is missing child element.</source> <translation>Beim Element %1 fehlt ein Unterelement.</translation> </message> <message> - <location line="+16"/> <source>There is one IDREF value with no corresponding ID: %1.</source> <translation>Es existiert ein IDREF-Wert, für den keine zugehörige ID vorhanden ist: %1.</translation> </message> <message> - <location line="+27"/> <source>Loaded schema file is invalid.</source> <translation>Das geladene Schema ist ungültig.</translation> </message> <message> - <location line="+16"/> <source>%1 contains invalid data.</source> <translation>%1 enthält ungültige Daten.</translation> </message> <message> - <location line="+13"/> <source>xsi:schemaLocation namespace %1 has already appeared earlier in the instance document.</source> <translation>xsi:schemaLocation namespace %1 wurde im Instanzdokument bereits spezifiziert.</translation> </message> <message> - <location line="+22"/> <source>xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute.</source> <translation>xsi:noNamespaceSchemaLocation kann nicht nach dem ersten Element oder Attribut ohne Namensraum erscheinen.</translation> </message> <message> - <location line="+18"/> <source>No schema defined for validation.</source> <translation>Es ist kein Schema für die Validierung definiert.</translation> </message> <message> - <location line="+10"/> <source>No definition for element %1 available.</source> <translation>Für das Element %1 ist keine Definition verfügbar.</translation> </message> <message> - <location line="+18"/> - <location line="+49"/> - <location line="+142"/> <source>Specified type %1 is not known to the schema.</source> <translation>Der angegebene Typ %1 ist im Schema nicht spezifiziert.</translation> </message> <message> - <location line="-176"/> <source>Element %1 is not defined in this scope.</source> <translation>Das Element %1 ist in diesem Bereich nicht definiert.</translation> </message> <message> - <location line="+43"/> <source>Declaration for element %1 does not exist.</source> <translation>Für das Element %1 ist keine Deklaration verfügbar.</translation> </message> <message> - <location line="+12"/> <source>Element %1 contains invalid content.</source> <translation>Das Element %1 enthält ungültigen Inhalt.</translation> </message> <message> - <location line="+73"/> <source>Element %1 is declared as abstract.</source> <translation>Das Element %1 ist als abstrakt deklariert.</translation> </message> <message> - <location line="+7"/> <source>Element %1 is not nillable.</source> <translation>Das Element %1 hat das Attribut 'nillable' nicht spezifiziert.</translation> </message> <message> - <location line="+8"/> <source>Attribute %1 contains invalid data: %2</source> <translation>Das Attribut %1 enthält ungültige Daten: %2</translation> </message> <message> - <location line="+8"/> <source>Element contains content although it is nillable.</source> <translation>Das Element hat Inhalt, obwohl es 'nillable' spezifiziert.</translation> </message> <message> - <location line="+6"/> <source>Fixed value constraint not allowed if element is nillable.</source> <translation>Eine Beschränkung auf einen festen Wert ist nicht zulässig, wenn das Element 'nillable' spezifiziert.</translation> </message> <message> - <location line="+230"/> <source>Element %1 cannot contain other elements, as it has a fixed content.</source> <translation>Das Element %1 kann keine anderen Element enthalten, da sein Inhalt festgelegt ist.</translation> </message> <message> - <location line="-198"/> <source>Specified type %1 is not validly substitutable with element type %2.</source> <translation>Der angebenene Typ %1 kann nicht durch den Elementtyp %2 substituiert werden.</translation> </message> <message> - <location line="+23"/> <source>Complex type %1 is not allowed to be abstract.</source> <translation>Der komplexe Typ %1 kann nicht abstrakt sein.</translation> </message> <message> - <location line="+21"/> <source>Element %1 contains not allowed attributes.</source> <translation>Das Element %1 enthält unzulässige Attribute.</translation> </message> <message> - <location line="+6"/> - <location line="+97"/> <source>Element %1 contains not allowed child element.</source> <translation>Das Element %1 enthält ein unzulässiges Unterelement.</translation> </message> <message> - <location line="-76"/> - <location line="+93"/> <source>Content of element %1 does not match its type definition: %2.</source> <translation>Der Inhalt des Elements %1 entspricht nicht seiner Typdefinition: %2.</translation> </message> <message> - <location line="-85"/> - <location line="+92"/> - <location line="+41"/> <source>Content of element %1 does not match defined value constraint.</source> <translation>Der Inhalt des Elements %1 entspricht nicht der definierten Einschränkung des Werts.</translation> </message> <message> - <location line="-73"/> <source>Element %1 contains not allowed child content.</source> <translation>Das Element %1 enthält unzulässigen Unterinhalt.</translation> </message> <message> - <location line="+41"/> <source>Element %1 contains not allowed text content.</source> <translation>Das Element %1 enthält unzulässigen Textinhalt.</translation> </message> <message> - <location line="+61"/> <source>Element %1 is missing required attribute %2.</source> <translation>Bei dem Element %1 fehlt ein erforderliches Attribut %2.</translation> </message> <message> - <location line="+29"/> <source>Attribute %1 does not match the attribute wildcard.</source> <translation>Das Attribut %1 entspricht nicht dem Attributssuchmuster.</translation> </message> <message> - <location line="+9"/> <source>Declaration for attribute %1 does not exist.</source> <translation>Für das Attribut %1 ist keine Deklaration verfügbar.</translation> </message> <message> - <location line="+6"/> <source>Element %1 contains two attributes of type %2.</source> <translation>Das Element %1 enthält zwei Attribute des Typs %2.</translation> </message> <message> - <location line="+11"/> <source>Attribute %1 contains invalid content.</source> <translation>Das Attribut %1 enthält ungültigen Inhalt.</translation> </message> <message> - <location line="+7"/> <source>Element %1 contains unknown attribute %2.</source> <translation>Das Element %1 enthält ein unbekanntes Attribut %2.</translation> </message> <message> - <location line="+40"/> - <location line="+46"/> <source>Content of attribute %1 does not match its type definition: %2.</source> <translation>Der Inhalt des Attributs %1 entspricht nicht seiner Typdefinition: %2.</translation> </message> <message> - <location line="-38"/> - <location line="+46"/> <source>Content of attribute %1 does not match defined value constraint.</source> <translation>Der Inhalt des Attributs %1 entspricht nicht der definierten Einschränkung des Werts.</translation> </message> <message> - <location line="+88"/> <source>Non-unique value found for constraint %1.</source> <translation>Für die Einschränkung %1 wurde ein nicht eindeutiger Wert gefunden.</translation> </message> <message> - <location line="+20"/> <source>Key constraint %1 contains absent fields.</source> <translation>Die Einschränkung des Schlüssels %1 enthält nicht vorhandene Felder.</translation> </message> <message> - <location line="+18"/> <source>Key constraint %1 contains references nillable element %2.</source> <translation>Die Einschränkung des Schlüssels %1 verweist auf das Element %2, was 'nillable' spezifiziert.</translation> </message> <message> - <location line="+40"/> <source>No referenced value found for key reference %1.</source> <translation>Der referenzierte Wert der Schlüsselreferenz %1 konnte nicht gefunden werden.</translation> </message> <message> - <location line="+64"/> <source>More than one value found for field %1.</source> <translation>Für das Feld %1 wurden mehrere Werte gefunden.</translation> </message> <message> - <location line="+20"/> <source>Field %1 has no simple type.</source> <translation>Das Feld %1 hat keinen einfachen Typ.</translation> </message> <message> - <location line="+73"/> <source>ID value '%1' is not unique.</source> <translation>Der ID-Wert '%1' ist nicht eindeutig.</translation> </message> <message> - <location line="+11"/> <source>'%1' attribute contains invalid QName content: %2.</source> <translation>Das Attribut '%1' enthält einen ungültigen qualifizierten Namen: %2.</translation> </message> diff --git a/translations/qt_help_de.ts b/translations/qt_help_de.ts index c7a8103..1f0cf32 100644 --- a/translations/qt_help_de.ts +++ b/translations/qt_help_de.ts @@ -4,106 +4,92 @@ <context> <name>QCLuceneResultWidget</name> <message> - <location filename="../tools/assistant/lib/qhelpsearchresultwidget.cpp" line="+110"/> <source>Search Results</source> <translation>Suchergebnisse</translation> </message> <message> - <location line="+7"/> <source>Note:</source> <translation>Achtung:</translation> </message> <message> - <location line="+1"/> <source>The search results may not be complete since the documentation is still being indexed!</source> <translation>Es können nicht alle möglichen Ergebnisse angezeigt werden, da die Dokumentation noch indiziert wird.</translation> </message> <message> - <location line="+11"/> <source>Your search did not match any documents.</source> <translation>Es wurden keine mit Ihrer Suche übereinstimmenden Dokumente gefunden.</translation> </message> <message> - <location line="+4"/> <source>(The reason for this might be that the documentation is still being indexed.)</source> <translation>(Ein Grund dafür könnte sein, das die Dokumentation noch nicht vollständig indiziert ist.)</translation> </message> </context> <context> + <name>QHelp</name> + <message> + <source>Untitled</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>QHelpCollectionHandler</name> <message> - <location filename="../tools/assistant/lib/qhelpcollectionhandler.cpp" line="+79"/> <source>The collection file '%1' is not set up yet!</source> <translation>Die Katalogdatei '%1' ist noch nicht eingerichtet.</translation> </message> <message> - <location line="+23"/> <source>Cannot load sqlite database driver!</source> <translation>Der Datenbanktreiber für SQLite kann nicht geladen werden.</translation> </message> <message> - <location line="+11"/> - <location line="+52"/> <source>Cannot open collection file: %1</source> <translation>Katalogdatei kann nicht geöffnet werden: %1</translation> </message> <message> - <location line="-40"/> <source>Cannot create tables in file %1!</source> <translation>In Datei %1 können keine Tabellen angelegt werden.</translation> </message> <message> - <location line="+16"/> <source>The collection file '%1' already exists!</source> <translation>Die Katalogdatei '%1' existiert bereits.</translation> </message> <message> - <location line="+151"/> <source>Unknown filter '%1'!</source> <translation>Unbekannter Filter '%1'.</translation> </message> <message> - <location line="+103"/> <source>Invalid documentation file '%1'!</source> <translation>Ungültige Dokumentationsdatei '%1'.</translation> </message> <message> - <location line="+167"/> <source>Cannot register namespace '%1'!</source> <translation>Der Namensraum '%1' kann nicht registriert werden.</translation> </message> <message> - <location line="+24"/> <source>Cannot open database '%1' to optimize!</source> <translation>Die Datenbank '%1' kann nicht zur Optimierung geöffnet werden.</translation> </message> <message> - <location line="-439"/> <source>Cannot create directory: %1</source> <translation>Das Verzeichnis kann nicht angelegt werden: %1</translation> </message> <message> - <location line="+26"/> <source>Cannot copy collection file: %1</source> <translation>Die Katalogdatei kann nicht kopiert werden: %1</translation> </message> <message> - <location line="+172"/> <source>Cannot register filter %1!</source> <translation>Der Filter kann nicht registriert werden: %1</translation> </message> <message> - <location line="+44"/> <source>Cannot open documentation file %1!</source> <translation>Die Dokumentationsdatei kann nicht geöffnet werden: %1</translation> </message> <message> - <location line="+40"/> <source>The namespace %1 was not registered!</source> <translation>Der Namensraum %1 wurde nicht registriert.</translation> </message> <message> - <location line="+120"/> <source>Namespace %1 already exists!</source> <translation>Der Namensraum %1 existiert bereits.</translation> </message> @@ -111,7 +97,6 @@ <context> <name>QHelpDBReader</name> <message> - <location filename="../tools/assistant/lib/qhelpdbreader.cpp" line="+98"/> <source>Cannot open database '%1' '%2': %3</source> <extracomment>The placeholders are: %1 - The name of the database which cannot be opened %2 - The unique id for the connection %3 - The actual error string</extracomment> <translation>Kann Datenbank nicht öffnen: '%1' '%2': %3</translation> @@ -120,12 +105,10 @@ <context> <name>QHelpEngineCore</name> <message> - <location filename="../tools/assistant/lib/qhelpenginecore.cpp" line="+122"/> <source>Cannot open documentation file %1: %2!</source> <translation>Die Dokumentationsdatei %1 kann nicht geöffnet werden: %2!</translation> </message> <message> - <location line="+404"/> <source>The specified namespace does not exist!</source> <translation>Der angegebene Namensraum existiert nicht.</translation> </message> @@ -133,132 +116,106 @@ <context> <name>QHelpGenerator</name> <message> - <location filename="../tools/assistant/lib/qhelpgenerator.cpp" line="+158"/> <source>Invalid help data!</source> <translation>Ungültige Hilfe-Daten.</translation> </message> <message> - <location line="+6"/> <source>No output file name specified!</source> <translation>Für die Ausgabe-Datei wurde kein Name angegeben.</translation> </message> <message> - <location line="+14"/> <source>Building up file structure...</source> <translation>Dateistruktur wird erzeugt...</translation> </message> <message> - <location line="-7"/> <source>The file %1 cannot be overwritten!</source> <translation>Die Datei %1 kann nicht überschrieben werden.</translation> </message> <message> - <location line="+18"/> <source>Cannot open data base file %1!</source> <translation>Die Datenbank-Datei %1 kann nicht geöffnet werden.</translation> </message> <message> - <location line="+14"/> <source>Cannot register namespace %1!</source> <translation>Der Namensraum %1 kann nicht registriert werden.</translation> </message> <message> - <location line="+6"/> <source>Insert custom filters...</source> <translation>Benutzerdefinierte Filter einfügen...</translation> </message> <message> - <location line="+12"/> <source>Insert help data for filter section (%1 of %2)...</source> <translation>Hilfe-Daten für Filter-Sektion (%1 von %2) einfügen...</translation> </message> <message> - <location line="+18"/> <source>Documentation successfully generated.</source> <translation>Dokumentation erfolgreich generiert.</translation> </message> <message> - <location line="+76"/> <source>Some tables already exist!</source> <translation>Einige Tabellen existieren bereits.</translation> </message> <message> - <location line="+61"/> <source>Cannot create tables!</source> <translation>Tabellen können nicht erstellt werden.</translation> </message> <message> - <location line="+86"/> <source>Cannot register virtual folder!</source> <translation>Virtuelles Verzeichnis nicht registriert werden.</translation> </message> <message> - <location line="+10"/> <source>Insert files...</source> <translation>Dateien einfügen...</translation> </message> <message> - <location line="+42"/> <source>The referenced file %1 must be inside or within a subdirectory of (%2). Skipping it.</source> <translation>Die referenzierte Datei %1 muss sich im Verzeichnis %2 oder in einem Unterverzeichnis davon befinden. Sie wird übersprungen.</translation> </message> <message> - <location line="+7"/> <source>The file %1 does not exist! Skipping it.</source> <translation>Die Datei %1 existiert nicht. Wird übersprungen.</translation> </message> <message> - <location line="+6"/> <source>Cannot open file %1! Skipping it.</source> <translation>Die Datei %1 kann nicht geöffnet werden. Wird übersprungen.</translation> </message> <message> - <location line="+133"/> <source>The filter %1 is already registered!</source> <translation>Der Filter %1 ist bereits registriert.</translation> </message> <message> - <location line="+5"/> <source>Cannot register filter %1!</source> <translation>Der Filter %1 kann nicht registriert werden.</translation> </message> <message> - <location line="+24"/> <source>Insert indices...</source> <translation>Indizes einfügen...</translation> </message> <message> - <location line="+91"/> <source>Insert contents...</source> <translation>Inhalt einfügen...</translation> </message> <message> - <location line="+8"/> <source>Cannot insert contents!</source> <translation>Inhalt kann nicht eingefügt werden.</translation> </message> <message> - <location line="+12"/> <source>Cannot register contents!</source> <translation>Inhalt kann nicht registriert werden.</translation> </message> <message> - <location line="+56"/> <source>File '%1' does not exist.</source> <translation>Die Datei '%1' existiert nicht.</translation> </message> <message> - <location line="+19"/> <source>File '%1' cannot be opened.</source> <translation>Die Datei '%1' kann nicht geöffnet werden.</translation> </message> <message> - <location line="+19"/> <source>File '%1' contains an invalid link to file '%2'</source> <translation>Die Datei '%1' enthält einen ungültigen Verweis auf die Datei '%2'</translation> </message> <message> - <location line="+9"/> <source>Invalid links in HTML files.</source> <translation>Es wurden ungültige Verweise in HTML-Dateien gefunden.</translation> </message> @@ -266,47 +223,38 @@ <context> <name>QHelpProject</name> <message> - <location filename="../tools/assistant/lib/qhelpprojectdata.cpp" line="+88"/> <source>Unknown token.</source> <translation>Unbekanntes Token.</translation> </message> <message> - <location line="+13"/> <source>Unknown token. Expected "QtHelpProject"!</source> <translation>Unbekanntes Token. "QtHelpProject" erwartet.</translation> </message> <message> - <location line="+6"/> <source>Error in line %1: %2</source> <translation>Fehler in Zeile %1: %2</translation> </message> <message> - <location line="+14"/> <source>Virtual folder has invalid syntax.</source> <translation>Ungültige Syntax bei Angabe des virtuellen Verzeichnisses.</translation> </message> <message> - <location line="+5"/> <source>Namespace has invalid syntax.</source> <translation>Ungültige Syntax der Namensraum-Angabe.</translation> </message> <message> - <location line="+19"/> <source>Missing namespace in QtHelpProject.</source> <translation>Fehlender Namensraum in QtHelpProject.</translation> </message> <message> - <location line="+3"/> <source>Missing virtual folder in QtHelpProject</source> <translation>Fehlendes virtuelles Verzeichnis in QtHelpProject.</translation> </message> <message> - <location line="+89"/> <source>Missing attribute in keyword at line %1.</source> <translation>Fehlendes Attribut in Schlagwort in Zeile %1.</translation> </message> <message> - <location line="+141"/> <source>The input file %1 could not be opened!</source> <translation>Die Eingabe-Datei %1 kann nicht geöffnet werden.</translation> </message> @@ -314,52 +262,42 @@ <context> <name>QHelpSearchQueryWidget</name> <message> - <location filename="../tools/assistant/lib/qhelpsearchquerywidget.cpp" line="+124"/> <source>Search for:</source> <translation>Suche nach:</translation> </message> <message> - <location line="+1"/> <source>Previous search</source> <translation>Vorige Suche</translation> </message> <message> - <location line="+1"/> <source>Next search</source> <translation>Nächste Suche</translation> </message> <message> - <location line="+1"/> <source>Search</source> <translation>Suche</translation> </message> <message> - <location line="+2"/> <source>Advanced search</source> <translation>Erweiterte Suche</translation> </message> <message> - <location line="+1"/> <source>words <B>similar</B> to:</source> <translation>Worte <B>ähnlich</B> zu:</translation> </message> <message> - <location line="+1"/> <source><B>without</B> the words:</source> <translation><B>ohne</B> die Wörter:</translation> </message> <message> - <location line="+1"/> <source>with <B>exact phrase</B>:</source> <translation>mit der <B>genauen Wortgruppe</B>:</translation> </message> <message> - <location line="+1"/> <source>with <B>all</B> of the words:</source> <translation>mit <B>allen</B> Wörtern:</translation> </message> <message> - <location line="+1"/> <source>with <B>at least one</B> of the words:</source> <translation>mit <B>irgendeinem</B> der Wörter:</translation> </message> @@ -367,7 +305,6 @@ <context> <name>QHelpSearchResultWidget</name> <message numerus="yes"> - <location filename="../tools/assistant/lib/qhelpsearchresultwidget.cpp" line="+174"/> <source>%1 - %2 of %n Hits</source> <translation> <numerusform>%1 - %2 - Ein Treffer</numerusform> @@ -375,7 +312,6 @@ </translation> </message> <message> - <location line="+61"/> <source>0 - 0 of 0 Hits</source> <translation>0 - 0 von 0 Treffern</translation> </message> -- cgit v0.12 From 689d8f81cdb9beff8974c7672708e0d3dd61302d Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 09:29:03 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/getting-started/gettingstartedqml.qdoc | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/doc/src/getting-started/gettingstartedqml.qdoc b/doc/src/getting-started/gettingstartedqml.qdoc index 93f6f88..6c85776 100644 --- a/doc/src/getting-started/gettingstartedqml.qdoc +++ b/doc/src/getting-started/gettingstartedqml.qdoc @@ -308,7 +308,7 @@ with a header that displays a row of menu names. The list of menus are declared inside a \c VisualItemModel. The \l{VisualItemModel}{\c VisualItemModel} element contains items that already have views such as \c Rectangle elements - and imported UI elements. Other model types such as the \l�{ListModel}{\c ListModel} + and imported UI elements. Other model types such as the \l {ListModel}{\c ListModel} element need a delegate to display their data. We declare two visual items in the \c menuListModel, the \c FileMenu and the @@ -361,7 +361,7 @@ } \endcode - Additionally, \c ListView inherits from \l�{Flickable}{\c Flickable}, making + Additionally, \c ListView inherits from \l {Flickable}{\c Flickable}, making the list respond to mouse drags and other gestures. The last portion of the code above sets \c Flickable properties to create the desired flicking movement to our view. In particular,the property \c highlightMoveDuration changes the @@ -585,7 +585,7 @@ that the targets' properties will animate for a certain duration of time and using a certain easing curve. An easing curve controls the animation rates and interpolation behavior during state transitions. The easing curve we chose is - \l�{PropertyAnimation::easing.type}{Easing.OutQuint}, which slows the movement near + \l{PropertyAnimation::easing.type}{Easing.OutQuint}, which slows the movement near the end of the animation. Pleae read \l {qdeclarativeanimation.html}{QML's Animation} article. @@ -737,7 +737,12 @@ }; \endcode - Our plugin class, \c DialogPlugin is a subclass of \l {QDeclarativeExtensionPlugin}{QDeclarativeExtensionPlugin}. We need to implement the inherited function, \l {QDeclarativeExtensionPlugin::registerTypes}{registerTypes}. The \c dialogPlugin.cpp file looks like this: + + Our plugin class, \c DialogPlugin is a subclass of \l + {QDeclarativeExtensionPlugin}{QDeclarativeExtensionPlugin}. We + need to implement the inherited function, \l + {QDeclarativeExtensionPlugin::registerTypes()}{registerTypes}. The + \c dialogPlugin.cpp file looks like this: \code DialogPlugin.cpp: @@ -756,7 +761,7 @@ Q_EXPORT_PLUGIN2(FileDialog, DialogPlugin); \endcode - The \l {QDeclarativeExtensionPlugin::registerTypes}{registerTypes} + The \l {QDeclarativeExtensionPlugin::registerTypes()}{registerTypes} function registers our File and Directory classes into QML. This function needs the class name for its template, a major version number, a minor version number, and a name for our classes. @@ -816,7 +821,7 @@ The \c files list property is a list of all the filtered files in a directory. The \c Directory class is implemented to filter out invalid text files; only - files with a \c .txt extension are valid. Further, \l {QLists}{QLists} can be + files with a \c .txt extension are valid. Further, \l {QList}{QLists} can be used in QML files by declaring them as a \c QDeclarativeListProperty in C++. The templated object needs to inherit from a \l {QObject}{QObject}, therefore, the \c File class must also inherit from \c QObject. In the \c Directory class, -- cgit v0.12 From 8b0761d942ced89e34a8ee99de10f2f106f19396 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 09:43:49 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/modules.qdoc | 64 +--------------------------------------------------- 1 file changed, 1 insertion(+), 63 deletions(-) diff --git a/doc/src/modules.qdoc b/doc/src/modules.qdoc index a81bfb2..c35d71c 100644 --- a/doc/src/modules.qdoc +++ b/doc/src/modules.qdoc @@ -40,7 +40,7 @@ \header \o {2,1} \bold{Modules for general software development} \row \o \l{QtCore} \o Core non-graphical classes used by other modules \row \o \l{QtGui} \o Graphical user interface (GUI) components - \row \o \l{QtMultimedia} \o Classes for low-level multimedia functionality + \row \o \l{qtmultimedia-module.html}{QtMultimedia} \o Classes for low-level multimedia functionality \row \o \l{QtNetwork} \o Classes for network programming \row \o \l{QtOpenGL} \o OpenGL support classes \row \o \l{QtOpenVG} \o OpenVG support classes @@ -82,9 +82,6 @@ /*! \module QtCore \title QtCore Module - \contentspage All Modules - \previouspage All Modules - \nextpage QtGui \ingroup modules \keyword QtCore @@ -101,9 +98,6 @@ /*! \module QtGui \title QtGui Module - \contentspage All Modules - \previouspage QtCore - \nextpage QtNetwork \ingroup modules \brief The QtGui module extends QtCore with GUI functionality. @@ -118,9 +112,6 @@ \module QtMultimedia \page qtmultimedia-module.html \title QtMultimedia Module - \contentspage All Modules - \previouspage QtCore - \nextpage QtNetwork \ingroup modules \brief The QtMultimedia module provides low-level multimedia functionality. @@ -142,9 +133,6 @@ /*! \module QtNetwork \title QtNetwork Module - \contentspage All Modules - \previouspage QtMultimedia - \nextpage QtOpenGL \ingroup modules \brief The QtNetwork module provides classes to make network programming @@ -164,9 +152,6 @@ /*! \module QtOpenGL \title QtOpenGL Module - \contentspage All Modules - \previouspage QtNetwork - \nextpage QtOpenVG \ingroup modules \brief The QtOpenGL module offers classes that make it easy to @@ -217,9 +202,6 @@ \module QtOpenVG \title QtOpenVG Module \since 4.6 - \contentspage All Modules - \previouspage QtOpenGL - \nextpage QtScript \ingroup modules \brief The QtOpenVG module is a plugin that provides support for @@ -272,9 +254,6 @@ \module QtScript \title QtScript Module \since 4.3 - \contentspage All Modules - \previouspage QtOpenVG - \nextpage QtScriptTools \ingroup modules \brief The QtScript module provides classes for making Qt applications scriptable. @@ -332,9 +311,6 @@ \module QtScriptTools \title QtScriptTools Module \since 4.5 - \contentspage All Modules - \previouspage QtScript - \nextpage QtSql \ingroup modules \brief The QtScriptTools module provides additional components for applications that use Qt Script. @@ -356,9 +332,6 @@ /*! \module QtSql \title QtSql Module - \contentspage All Modules - \previouspage QtScript - \nextpage QtSvg \ingroup modules To include the definitions of the module's classes, use the @@ -379,9 +352,6 @@ \module QtSvg \title QtSvg Module \since 4.1 - \contentspage All Modules - \previouspage QtSql - \nextpage QtWebKit \ingroup modules \brief The QtSvg module provides classes for displaying and creating SVG files. @@ -430,9 +400,6 @@ /*! \module QtXml \title QtXml Module - \contentspage All Modules - \previouspage QtSvg - \nextpage QtXmlPatterns \ingroup modules \brief The QtXml module provides a stream reader and writer for @@ -457,9 +424,6 @@ \module QtXmlPatterns \title QtXmlPatterns Module \since 4.4 - \contentspage All Modules - \previouspage QtXml - \nextpage Phonon Module \ingroup modules \brief The QtXmlPatterns module provides support for XPath, @@ -537,9 +501,6 @@ \page phonon-module.html \module Phonon \title Phonon Module - \contentspage All Modules - \previouspage QtXmlPatterns - \nextpage Qt3Support \ingroup modules \brief The Phonon module contains namespaces and classes for multimedia functionality. @@ -607,9 +568,6 @@ /*! \module Qt3Support \title Qt3Support Module - \contentspage All Modules - \previouspage Phonon Module - \nextpage QtDesigner \ingroup modules \keyword Qt3Support @@ -640,9 +598,6 @@ /*! \module QtDesigner \title QtDesigner Module - \contentspage All Modules - \previouspage Qt3Support - \nextpage QtUiTools \ingroup modules \brief The QtDesigner module provides classes that allow you to @@ -667,9 +622,6 @@ \module QtUiTools \title QtUiTools Module \since 4.1 - \contentspage All Modules - \previouspage QtDesigner - \nextpage QtHelp \ingroup modules \brief The QtUiTools module provides classes to handle forms created @@ -703,9 +655,6 @@ /*! \module QtHelp \title QtHelp Module - \contentspage All Modules - \previouspage QtUiTools - \nextpage QtTest \ingroup modules \brief The QtHelp module provides classes for integrating @@ -762,9 +711,6 @@ /*! \module QtTest \title QtTest Module - \contentspage All Modules - \previouspage QtHelp - \nextpage QAxContainer \ingroup modules \keyword QtTest @@ -792,9 +738,6 @@ /*! \module QAxContainer \title QAxContainer Module - \contentspage All Modules - \previouspage QtTest - \nextpage QAxServer \ingroup modules \brief The QAxContainer module is a Windows-only extension for @@ -844,9 +787,6 @@ /*! \module QAxServer \title QAxServer Module - \contentspage All Modules - \previouspage QAxContainer - \nextpage QtDBus module \ingroup modules \brief The QAxServer module is a Windows-only static library that @@ -896,8 +836,6 @@ /*! \module QtDBus \title QtDBus module - \contentspage All Modules - \previouspage QAxServer \ingroup modules \keyword QtDBus -- cgit v0.12 From ac355872573c7131e4b783cabe00c5656dc668af Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Mon, 9 Aug 2010 10:14:27 +0200 Subject: Fixed missing link tag in declarativeui.qdoc. Fix for QTBUG-12750 --- doc/src/declarative/declarativeui.qdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc index 1fc9d69..b25d000 100644 --- a/doc/src/declarative/declarativeui.qdoc +++ b/doc/src/declarative/declarativeui.qdoc @@ -43,7 +43,7 @@ C++ module, you can load and interact with QML files from your Qt application. QML provides mechanisms to declaratively build an object tree using \l {QML Elements}{QML elements}. QML improves the integration between -{http://www.ecma-international.org/publications/standards/Ecma-262.htm}{JavaScript} +\l {http://www.ecma-international.org/publications/standards/Ecma-262.htm}{JavaScript} and Qt's existing QObject based type system, adds support for automatic \l {Property Binding}{property bindings} and provides \l {Network Transparency}{network transparency} -- cgit v0.12 From c5fa9eb1cb02d979502e2c9918d752c6708fb406 Mon Sep 17 00:00:00 2001 From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> Date: Mon, 9 Aug 2010 10:31:16 +0200 Subject: Fix scrollbar randomly popping up in QPlainTextEdit When a line break was detected, we would retain the value of the right bearing for the character after the break instead of resetting it to the right bearing of the previous value. This could in some cases cause the bounding rect of the text to be wrong, and could cause unnecessary horizontal scrollbars to pop up. It was especially visible when using WrapAnywhere. Visible e.g. in the compile output in Creator. Done-by: mae Reviewed-by: Eskil Reviewed-by: Lars --- src/gui/text/qtextlayout.cpp | 21 +++++++++++++++++---- tests/auto/qtextlayout/tst_qtextlayout.cpp | 30 ++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 4 deletions(-) diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp index 5a11c87..da43913 100644 --- a/src/gui/text/qtextlayout.cpp +++ b/src/gui/text/qtextlayout.cpp @@ -1709,14 +1709,18 @@ namespace { return glyphs.glyphs[logClusters[currentPosition - 1]]; } + inline void adjustRightBearing(glyph_t glyph) + { + qreal rb; + fontEngine->getGlyphBearings(glyph, 0, &rb); + rightBearing = qMin(QFixed(), QFixed::fromReal(rb)); + } + inline void adjustRightBearing() { if (currentPosition <= 0) return; - - qreal rb; - fontEngine->getGlyphBearings(currentGlyph(), 0, &rb); - rightBearing = qMin(QFixed(), QFixed::fromReal(rb)); + adjustRightBearing(currentGlyph()); } inline void resetRightBearing() @@ -1901,6 +1905,9 @@ void QTextLine::layout_helper(int maxGlyphs) } else { lbh.whiteSpaceOrObject = false; bool sb_or_ws = false; + glyph_t previousGlyph = 0; + if (lbh.currentPosition > 0 && lbh.logClusters[lbh.currentPosition - 1] <lbh.glyphs.numGlyphs) + previousGlyph = lbh.currentGlyph(); // needed to calculate right bearing later do { addNextCluster(lbh.currentPosition, end, lbh.tmpData, lbh.glyphCount, current, lbh.logClusters, lbh.glyphs); @@ -1944,9 +1951,15 @@ void QTextLine::layout_helper(int maxGlyphs) // We ignore the right bearing if the minimum negative bearing is too little to // expand the text beyond the edge. if (sb_or_ws|breakany) { + QFixed rightBearing = lbh.rightBearing; // store previous right bearing if (lbh.calculateNewWidth(line) - lbh.minimumRightBearing > line.width) lbh.adjustRightBearing(); if (lbh.checkFullOtherwiseExtend(line)) { + // we are too wide, fix right bearing + if (rightBearing <= 0) + lbh.rightBearing = rightBearing; // take from cache + else if (previousGlyph > 0) + lbh.adjustRightBearing(previousGlyph); if (!breakany) { line.textWidth += lbh.softHyphenWidth; } diff --git a/tests/auto/qtextlayout/tst_qtextlayout.cpp b/tests/auto/qtextlayout/tst_qtextlayout.cpp index f798faf..659ba1a 100644 --- a/tests/auto/qtextlayout/tst_qtextlayout.cpp +++ b/tests/auto/qtextlayout/tst_qtextlayout.cpp @@ -122,6 +122,7 @@ private slots: void smallTextLengthWrapAtWordBoundaryOrAnywhere(); void testLineBreakingAllSpaces(); void lineWidthFromBOM(); + void textWidthVsWIdth(); private: @@ -1359,5 +1360,34 @@ void tst_QTextLayout::glyphLessItems() } } +void tst_QTextLayout::textWidthVsWIdth() +{ + QTextLayout layout; + QTextOption opt; + opt.setWrapMode(QTextOption::WrapAnywhere); + layout.setTextOption(opt); + layout.setText(QString::fromLatin1( + "g++ -c -m64 -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DCORE_LIBRARY -DIDE_LIBRARY_BASENAME=\"lib\" -DWITH_TESTS " + "-DQT_NO_CAST_TO_ASCII -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -DQT_PLUGIN -DQT_TESTLIB_LIB -DQT_SCRIPT_LIB -DQT_SVG_LIB -DQT_SQL_LIB -DQT_XM" + "L_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I../../../../qt-qml/mkspecs/linux-g++-64 -I. -I../../../../qt-qml/include/QtCore -I../../../." + "./qt-qml/include/QtNetwork -I../../../../qt-qml/include/QtGui -I../../../../qt-qml/include/QtXml -I../../../../qt-qml/include/QtSql -I../../../../qt-qml/inc" + "lude/QtSvg -I../../../../qt-qml/include/QtScript -I../../../../qt-qml/include/QtTest -I../../../../qt-qml/include -I../../../../qt-qml/include/QtHelp -I../." + "./libs -I/home/ettrich/dev/creator/tools -I../../plugins -I../../shared/scriptwrapper -I../../libs/3rdparty/botan/build -Idialogs -Iactionmanager -Ieditorma" + "nager -Iprogressmanager -Iscriptmanager -I.moc/debug-shared -I.uic -o .obj/debug-shared/sidebar.o sidebar.cpp")); + + // textWidth includes right bearing, but it should never be LARGER than width if there is space for at least one character + for (int width = 100; width < 1000; ++width) { + layout.beginLayout(); + QTextLine line = layout.createLine(); + line.setLineWidth(width); + layout.endLayout(); + + qreal textWidthIsLargerBy = qMax(qreal(0), line.naturalTextWidth() - line.width()); + qreal thisMustBeZero = 0; + QCOMPARE(textWidthIsLargerBy, thisMustBeZero); + } +} + + QTEST_MAIN(tst_QTextLayout) #include "tst_qtextlayout.moc" -- cgit v0.12 From 94244ea3c5edf57d4dc258381d37bc99fc23ed0d Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 10:43:46 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/declarative/example-slideswitch.qdoc | 2 +- doc/src/tutorials/modelview.qdoc | 4 ++-- src/declarative/graphicsitems/qdeclarativeitem.cpp | 2 +- src/declarative/qml/qdeclarativeimageprovider.cpp | 2 +- src/declarative/util/qdeclarativestate.cpp | 3 ++- 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/doc/src/declarative/example-slideswitch.qdoc b/doc/src/declarative/example-slideswitch.qdoc index f056892..1a40f14 100644 --- a/doc/src/declarative/example-slideswitch.qdoc +++ b/doc/src/declarative/example-slideswitch.qdoc @@ -115,7 +115,7 @@ For more information on scripts see \l{Integrating JavaScript}. At this point, when the switch toggles between the two states the knob will instantly change its \c x position between 1 and 78. In order for the the knob to move smoothly we add a transition that will animate the \c x property with an easing curve for a duration of 200ms. -For more information on transitions see \l{state-transitions}{QML Transitions}. +For more information on transitions see \l{qdeclarativeanimation.html#transitions}{QML Transitions}. \section1 Usage The switch can be used in a QML file, like this: diff --git a/doc/src/tutorials/modelview.qdoc b/doc/src/tutorials/modelview.qdoc index 98096a0..b39a01c 100755 --- a/doc/src/tutorials/modelview.qdoc +++ b/doc/src/tutorials/modelview.qdoc @@ -80,8 +80,8 @@ /*! \page modelview-part1.html - \contentspage {modelview-index.html}{Model/View Contents} - \previouspage {modelview-index.html}{Model/View Contents} + \contentspage {modelview.html}{Model/View Contents} + \previouspage {modelview.html}{Model/View Contents} \nextpage {modelview-part2.html}{Developing a Simple Model/View Application} \title An Introduction to Model/View Programming diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp index ff05997..5872585 100644 --- a/src/declarative/graphicsitems/qdeclarativeitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp @@ -2454,7 +2454,7 @@ QDeclarativeListProperty<QDeclarativeState> QDeclarativeItemPrivate::states() } \endqml - \sa {state-transitions}{Transitions} + \sa {qdeclarativeanimation.html#transitions}{QML Transitions} */ diff --git a/src/declarative/qml/qdeclarativeimageprovider.cpp b/src/declarative/qml/qdeclarativeimageprovider.cpp index 241df87..da5b65e 100644 --- a/src/declarative/qml/qdeclarativeimageprovider.cpp +++ b/src/declarative/qml/qdeclarativeimageprovider.cpp @@ -59,7 +59,7 @@ public: \list \o Loaded using QPixmaps rather than actual image files - \o Loaded asynchronously in a separate thread, if imageType() is \l ImageType::Image + \o Loaded asynchronously in a separate thread, if imageType() is \l Image \endlist To specify that an image should be loaded by an image provider, use the diff --git a/src/declarative/util/qdeclarativestate.cpp b/src/declarative/util/qdeclarativestate.cpp index 7a78a2b..028bacb 100644 --- a/src/declarative/util/qdeclarativestate.cpp +++ b/src/declarative/util/qdeclarativestate.cpp @@ -160,7 +160,8 @@ QDeclarativeStateOperation::QDeclarativeStateOperation(QObjectPrivate &dd, QObje \note Setting the state of an object from within another state of the same object is not allowed. - \sa {declarative/animation/states}{states example}, {qmlstates}{States}, {state-transitions}{Transitions}, QtDeclarative + \sa {declarative/animation/states}{states example}, {qmlstates}{States}, + {qdeclarativeanimation.html#transitions}{QML Transitions}, QtDeclarative */ /*! -- cgit v0.12 From 362641ec2bdf5e05b4adfc54275c1c4869759d56 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann <joerg.bornemann@nokia.com> Date: Mon, 9 Aug 2010 11:01:45 +0200 Subject: Doc: typo fixed in qlibraryinfo.cpp Reviewed-by: TrustMe --- src/corelib/global/qlibraryinfo.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp index a9ea44a..4b56efc 100644 --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp @@ -467,7 +467,7 @@ QLibraryInfo::location(LibraryLocation loc) \value PrefixPath The default prefix for all paths. \value DocumentationPath The location for documentation upon install. \value HeadersPath The location for all headers. - \value LibrariesPath The location of installed librarires. + \value LibrariesPath The location of installed libraries. \value BinariesPath The location of installed Qt binaries (tools and applications). \value PluginsPath The location of installed Qt plugins. \value DataPath The location of general Qt data. -- cgit v0.12 From 3ed0f33f7a8a5697d55faf8e4ce8fb003d4f8b93 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Mon, 9 Aug 2010 11:16:40 +0200 Subject: Doc: removing reduntant text from the index page --- doc/src/index.qdoc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index f890aa6..ded57f5 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -94,14 +94,14 @@ </div> <div class="section sectionlist"> <ul> - <li><a href="http://doc.qt.nokia.com/qtcreator-2.0/index.html">Qt Creator</a> (online)</li> + <li><a href="http://doc.qt.nokia.com/qtcreator-2.0/index.html">Qt Creator</a></li> <li><a href="designer-manual.html">Qt Designer</a></li> <li><a href="linguist-manual.html">Qt Linguist</a></li> <li><a href="assistant-manual.html">Qt Assistant</a></li> <li><a href="qmake-manual.html">Qt qmake</a></li> - <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a> (online)</li> - <li><a href="http://qt.nokia.com/developer/eclipse-integration">Eclipse Integration</a> (online)</li> - <li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a> (online)</li> + <li><a href="http://doc.qt.nokia.com/qtsimulator-1.0/simulator-description.html">Qt Simulator</a></li> + <li><a href="http://qt.nokia.com/developer/eclipse-integration">Eclipse Integration</a></li> + <li><a href="http://qt.nokia.com/products/appdev">Add-On Products and Services</a></li> <li><a href="qvfb.html">Virtual Framebuffer</a></li> </ul> </div> -- cgit v0.12 From 66a6183dc30ca1d572274695707f16b84325b459 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 11:23:35 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/widgets-and-layouts/layout.qdoc | 4 ++-- doc/src/widgets-and-layouts/styles.qdoc | 2 +- doc/src/widgets-and-layouts/stylesheet.qdoc | 2 +- doc/src/widgets-and-layouts/widgets.qdoc | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/src/widgets-and-layouts/layout.qdoc b/doc/src/widgets-and-layouts/layout.qdoc index 798a7a1..d2687ea 100644 --- a/doc/src/widgets-and-layouts/layout.qdoc +++ b/doc/src/widgets-and-layouts/layout.qdoc @@ -37,9 +37,9 @@ \brief A tour of the standard layout managers and an introduction to custom layouts. - \previouspage Widget Classes + \previouspage Widgets and Layouts \contentspage Widgets and Layouts - \nextpage {Implementing Styles and Style Aware Widgets}{Styles} + \nextpage {Styles and Style Aware Widgets}{Styles} \ingroup frameworks-technologies diff --git a/doc/src/widgets-and-layouts/styles.qdoc b/doc/src/widgets-and-layouts/styles.qdoc index eab7014..180260b 100644 --- a/doc/src/widgets-and-layouts/styles.qdoc +++ b/doc/src/widgets-and-layouts/styles.qdoc @@ -33,7 +33,7 @@ /*! \page style-reference.html - \title Styles & Style Aware Widgets + \title Styles and Style Aware Widgets \ingroup qt-gui-concepts \brief Styles and the styling of widgets. diff --git a/doc/src/widgets-and-layouts/stylesheet.qdoc b/doc/src/widgets-and-layouts/stylesheet.qdoc index 1390376..475de3d 100644 --- a/doc/src/widgets-and-layouts/stylesheet.qdoc +++ b/doc/src/widgets-and-layouts/stylesheet.qdoc @@ -32,7 +32,7 @@ \ingroup frameworks-technologies - \previouspage {Implementing Styles and Style Aware Widgets}{Styles} + \previouspage {Styles and Style Aware Widgets}{Styles} \contentspage Widgets and Layouts \nextpage The Style Sheet Syntax diff --git a/doc/src/widgets-and-layouts/widgets.qdoc b/doc/src/widgets-and-layouts/widgets.qdoc index f2475c2..baf3dce 100644 --- a/doc/src/widgets-and-layouts/widgets.qdoc +++ b/doc/src/widgets-and-layouts/widgets.qdoc @@ -68,7 +68,7 @@ \section1 Widget Styles - \l{Styles & Style Aware Widgets}{Styles} draw on behalf of + \l{Styles and Style Aware Widgets}{Styles} draw on behalf of widgets and encapsulate the look and feel of a GUI. Qt's built-in widgets use the QStyle class to perform nearly all of their drawing, ensuring that they look exactly like the equivalent native widgets. -- cgit v0.12 From 4f2f48caae2ae18336bff10bb1e1ab07f2dd4650 Mon Sep 17 00:00:00 2001 From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> Date: Mon, 9 Aug 2010 11:49:43 +0200 Subject: doc: Clarify documentation of QStaticText There has been some confusion concerning what HTML tags can be used when using the rich text format with QStaticText. This patch attempts to make it clearer in the documentation that the tags have to be text related. Reviewed-by: Samuel --- src/gui/text/qstatictext.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/gui/text/qstatictext.cpp b/src/gui/text/qstatictext.cpp index 7396bcd..21c2e02 100644 --- a/src/gui/text/qstatictext.cpp +++ b/src/gui/text/qstatictext.cpp @@ -109,10 +109,18 @@ QT_BEGIN_NAMESPACE QPainter::drawStaticText() and can change from call to call with a minimal impact on performance. - QStaticText will attempt to guess the format of the input text using Qt::mightBeRichText(). - To force QStaticText to display its contents as either plain text or rich text, use the - function QStaticText::setTextFormat() and pass in, respectively, Qt::PlainText and - Qt::RichText. + For extra convenience, it is possible to apply formatting to the text using the HTML subset + supported by QTextDocument. QStaticText will attempt to guess the format of the input text using + Qt::mightBeRichText(), and interpret it as rich text if this function returns true. To force + QStaticText to display its contents as either plain text or rich text, use the function + QStaticText::setTextFormat() and pass in, respectively, Qt::PlainText and Qt::RichText. + + QStaticText can only represent text, so only HTML tags which alter the layout or appearance of + the text will be respected. Adding an image to the input HTML, for instance, will cause the + image to be included as part of the layout, affecting the positions of the text glyphs, but it + will not be displayed. The result will be an empty area the size of the image in the output. + Similarly, using tables will cause the text to be laid out in table format, but the borders + will not be drawn. If it's the first time the static text is drawn, or if the static text, or the painter's font has been altered since the last time it was drawn, the text's layout has to be -- cgit v0.12 From ddd2a54224e651ff45af834201eec1be2c56d583 Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Mon, 9 Aug 2010 11:58:40 +0200 Subject: QtDeclarative: get rid of warnings in public header warning: use of old-style cast Reviewed-by: brad --- src/declarative/qml/qdeclarativelist.h | 8 ++++---- src/declarative/qml/qdeclarativeprivate.h | 4 ++-- tests/auto/compilerwarnings/test_cpp.txt | 3 +++ 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/declarative/qml/qdeclarativelist.h b/src/declarative/qml/qdeclarativelist.h index 399b2a1..c10bc11 100644 --- a/src/declarative/qml/qdeclarativelist.h +++ b/src/declarative/qml/qdeclarativelist.h @@ -98,16 +98,16 @@ public: private: static void qlist_append(QDeclarativeListProperty *p, T *v) { - ((QList<T *> *)p->data)->append(v); + reinterpret_cast<QList<T *> *>(p->data)->append(v); } static int qlist_count(QDeclarativeListProperty *p) { - return ((QList<T *> *)p->data)->count(); + return reinterpret_cast<QList<T *> *>(p->data)->count(); } static T *qlist_at(QDeclarativeListProperty *p, int idx) { - return ((QList<T *> *)p->data)->at(idx); + return reinterpret_cast<QList<T *> *>(p->data)->at(idx); } static void qlist_clear(QDeclarativeListProperty *p) { - return ((QList<T *> *)p->data)->clear(); + return reinterpret_cast<QList<T *> *>(p->data)->clear(); } }; #endif diff --git a/src/declarative/qml/qdeclarativeprivate.h b/src/declarative/qml/qdeclarativeprivate.h index cb916bf..d45ddbc 100644 --- a/src/declarative/qml/qdeclarativeprivate.h +++ b/src/declarative/qml/qdeclarativeprivate.h @@ -105,7 +105,7 @@ namespace QDeclarativePrivate template<class From, class To> struct StaticCastSelectorClass<From, To, sizeof(int)> { - static inline int cast() { return (int)((intptr_t)static_cast<To *>((From *)0x10000000)) - 0x10000000; } + static inline int cast() { return int(reinterpret_cast<intptr_t>(static_cast<To *>(reinterpret_cast<From *>(0x10000000)))) - 0x10000000; } }; template<class From, class To> @@ -119,7 +119,7 @@ namespace QDeclarativePrivate static inline int cast() { - return StaticCastSelectorClass<From, To, sizeof(check((From *)0))>::cast(); + return StaticCastSelectorClass<From, To, sizeof(check(reinterpret_cast<From *>(0)))>::cast(); } }; diff --git a/tests/auto/compilerwarnings/test_cpp.txt b/tests/auto/compilerwarnings/test_cpp.txt index 62b35eb..1d317b8 100644 --- a/tests/auto/compilerwarnings/test_cpp.txt +++ b/tests/auto/compilerwarnings/test_cpp.txt @@ -58,6 +58,9 @@ #include <QtDBus/QtDBus> #endif +#include <QtDeclarative/QtDeclarative> + + #ifndef Q_OS_MAC int main(int, char **) { -- cgit v0.12 From f45c6c61a0967468b1b80375d8c72db4f4fec438 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 12:18:53 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/examples/qml-examples.qdoc | 2 +- doc/src/examples/simpletreemodel.qdoc | 16 +++++++++------- doc/src/examples/spinboxdelegate.qdoc | 5 +++-- doc/src/objectmodel/metaobjects.qdoc | 3 ++- doc/src/objectmodel/properties.qdoc | 3 ++- doc/src/painting-and-printing/paintsystem.qdoc | 6 +++--- doc/src/windows-and-dialogs/dialogs.qdoc | 2 +- src/gui/styles/qstyle.cpp | 2 +- 8 files changed, 22 insertions(+), 17 deletions(-) diff --git a/doc/src/examples/qml-examples.qdoc b/doc/src/examples/qml-examples.qdoc index 8d3aa25..0d191c9 100644 --- a/doc/src/examples/qml-examples.qdoc +++ b/doc/src/examples/qml-examples.qdoc @@ -562,7 +562,7 @@ \example declarative/ui-components/dialcontrol This example shows how to create a dial-type control. It combines - \l Image elements with \l Rotation transforms and \l SpringAnimatino behaviors + \l Image elements with \l Rotation transforms and \l SpringAnimation behaviors to produce an interactive speedometer-type dial. \image qml-dialcontrol-example.png diff --git a/doc/src/examples/simpletreemodel.qdoc b/doc/src/examples/simpletreemodel.qdoc index c34f4af..16cf8b7 100644 --- a/doc/src/examples/simpletreemodel.qdoc +++ b/doc/src/examples/simpletreemodel.qdoc @@ -36,13 +36,15 @@ \image simpletreemodel-example.png - Qt's model/view architecture provides a standard way for views to manipulate - information in a data source, using an abstract model of the data to - simplify and standardize the way it is accessed. Simple models represent - data as a table of items, and allow views to access this data via an - \l{model-view-model.html}{index-based} system. More generally, models can - be used to represent data in the form of a tree structure by allowing each - item to act as a parent to a table of child items. + Qt's model/view architecture provides a standard way for views to + manipulate information in a data source, using an abstract model + of the data to simplify and standardize the way it is accessed. + Simple models represent data as a table of items, and allow views + to access this data via an + \l{model-view-programming.html#model-indexes} {index-based} + system. More generally, models can be used to represent data in + the form of a tree structure by allowing each item to act as a + parent to a table of child items. Before attempting to implement a tree model, it is worth considering whether the data is supplied by an external source, or whether it is going to be diff --git a/doc/src/examples/spinboxdelegate.qdoc b/doc/src/examples/spinboxdelegate.qdoc index 49e3295..da65831 100644 --- a/doc/src/examples/spinboxdelegate.qdoc +++ b/doc/src/examples/spinboxdelegate.qdoc @@ -42,8 +42,9 @@ \image spinboxdelegate-example.png This concepts behind this example are covered in the - \l{model-view-delegate.html}{Delegate Classes} chapter of the - \l{model-view-programming.html}{Model/View Programming} overview. + \l{model-view-programming.html#delegate-classes}{Delegate Classes} + chapter of the \l{model-view-programming.html}{Model/View + Programming} overview. \section1 SpinBoxDelegate Class Definition diff --git a/doc/src/objectmodel/metaobjects.qdoc b/doc/src/objectmodel/metaobjects.qdoc index dd00c5e..0597cd6 100644 --- a/doc/src/objectmodel/metaobjects.qdoc +++ b/doc/src/objectmodel/metaobjects.qdoc @@ -28,8 +28,9 @@ /*! \page metaobjects.html \title The Meta-Object System - \ingroup qt-basic-concepts \brief An overview of Qt's meta-object system and introspection capabilities. + + \ingroup qt-basic-concepts \keyword meta-object \target Meta-Object System diff --git a/doc/src/objectmodel/properties.qdoc b/doc/src/objectmodel/properties.qdoc index 356aaaf..dca332e 100644 --- a/doc/src/objectmodel/properties.qdoc +++ b/doc/src/objectmodel/properties.qdoc @@ -28,8 +28,9 @@ /*! \page properties.html \title The Property System - \ingroup qt-basic-concepts \brief An overview of Qt's property system. + + \ingroup qt-basic-concepts \target Qt's Property System Qt provides a sophisticated property system similar to the ones diff --git a/doc/src/painting-and-printing/paintsystem.qdoc b/doc/src/painting-and-printing/paintsystem.qdoc index e5eb75d..4c6fd91 100644 --- a/doc/src/painting-and-printing/paintsystem.qdoc +++ b/doc/src/painting-and-printing/paintsystem.qdoc @@ -273,7 +273,7 @@ \previouspage Paint Devices and Backends \contentspage The Paint System - \nextpage The Coordinate System + \nextpage Coordinate System \section1 Drawing @@ -395,7 +395,7 @@ \page paintsystem-images.html \title Reading and Writing Image Files - \previouspage The Coordinate System + \previouspage Coordinate System \contentspage The Paint System \nextpage Styling @@ -554,5 +554,5 @@ \endtable For more information about widget styling and appearance, see the - \l{Styles & Style Aware Widgets}. + \l{Styles and Style Aware Widgets}. */ diff --git a/doc/src/windows-and-dialogs/dialogs.qdoc b/doc/src/windows-and-dialogs/dialogs.qdoc index 74df2aa..f6649fd 100644 --- a/doc/src/windows-and-dialogs/dialogs.qdoc +++ b/doc/src/windows-and-dialogs/dialogs.qdoc @@ -43,7 +43,7 @@ \ingroup qt-gui-concepts \brief An overview over dialog windows. - \previouspage The Application Main Window + \previouspage Application Main Window \contentspage Application Windows and Dialogs \nextpage Desktop Integration diff --git a/src/gui/styles/qstyle.cpp b/src/gui/styles/qstyle.cpp index 687e587..0a75492 100644 --- a/src/gui/styles/qstyle.cpp +++ b/src/gui/styles/qstyle.cpp @@ -325,7 +325,7 @@ static int unpackControlTypes(QSizePolicy::ControlTypes controls, QSizePolicy::C control over size of header items and row and column sizes. \sa QStyleOption, QStylePainter, {Styles Example}, - {Styles & Style Aware Widgets}, QStyledItemDelegate + {Styles and Style Aware Widgets}, QStyledItemDelegate */ /*! -- cgit v0.12 From 58d78590fc29fd6695d60eaf50af604bd1f75588 Mon Sep 17 00:00:00 2001 From: Victor Ostashevsky <ostash@ostash.kiev.ua> Date: Mon, 9 Aug 2010 12:49:09 +0200 Subject: Add Ukrainian translation. Merge-request: 761 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> --- translations/assistant_uk.ts | 969 +++++++ translations/designer_uk.ts | 5783 ++++++++++++++++++++++++++++++++++++++++++ translations/linguist_uk.ts | 1602 ++++++++++++ translations/qt_help_uk.ts | 320 +++ translations/qtconfig_uk.ts | 717 ++++++ translations/qvfb_uk.ts | 276 ++ 6 files changed, 9667 insertions(+) create mode 100644 translations/assistant_uk.ts create mode 100644 translations/designer_uk.ts create mode 100644 translations/linguist_uk.ts create mode 100644 translations/qt_help_uk.ts create mode 100644 translations/qtconfig_uk.ts create mode 100644 translations/qvfb_uk.ts diff --git a/translations/assistant_uk.ts b/translations/assistant_uk.ts new file mode 100644 index 0000000..78fd59d --- /dev/null +++ b/translations/assistant_uk.ts @@ -0,0 +1,969 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.0" language="uk_UA"> +<context> + <name>AboutDialog</name> + <message> + <source>&Close</source> + <translation>&Закрити</translation> + </message> +</context> +<context> + <name>AboutLabel</name> + <message> + <source>Warning</source> + <translation>Попередження</translation> + </message> + <message> + <source>Unable to launch external application. +</source> + <translation>Неможливо запустити зовнішню програму. +</translation> + </message> + <message> + <source>OK</source> + <translation>OK</translation> + </message> +</context> +<context> + <name>Assistant</name> + <message> + <source>Error registering documentation file '%1': %2</source> + <translation>Помилка реєстрації файлу документації '%1': %2</translation> + </message> + <message> + <source>Error: %1</source> + <translation>Помилка: %1</translation> + </message> + <message> + <source>Could not register documentation file +%1 + +Reason: +%2</source> + <translation>Не можу зареєструвати файл документації +%1 + +Причина: +%2</translation> + </message> + <message> + <source>Documentation successfully registered.</source> + <translation>Документацію успішно зареєстровано.</translation> + </message> + <message> + <source>Could not unregister documentation file +%1 + +Reason: +%2</source> + <translation>Не можу скасувати реєстрацію файлу документації +%1 + +Причина: +%2</translation> + </message> + <message> + <source>Documentation successfully unregistered.</source> + <translation>Реєстрацію документації успішно скасовано.</translation> + </message> + <message> + <source>Error reading collection file '%1': %2.</source> + <translation>Помилка читання файлу колекції '%1': %2.</translation> + </message> + <message> + <source>Error creating collection file '%1': %2.</source> + <translation>Помилка створення файлу колекції '%1': %2.</translation> + </message> + <message> + <source>Error reading collection file '%1': %2</source> + <translation>Помилка читання файлу колекції '%1': %2</translation> + </message> + <message> + <source>Cannot load sqlite database driver!</source> + <translation>Не можу завантажити драйвер бази даний SQLite!</translation> + </message> +</context> +<context> + <name>BookmarkDialog</name> + <message> + <source>Add Bookmark</source> + <translation>Додати закладку</translation> + </message> + <message> + <source>Bookmark:</source> + <translation>Закладка:</translation> + </message> + <message> + <source>Add in Folder:</source> + <translation>Додати в теку:</translation> + </message> + <message> + <source>+</source> + <translation>+</translation> + </message> + <message> + <source>New Folder</source> + <translation>Нова тека</translation> + </message> + <message> + <source>Rename Folder</source> + <translation>Перейменувати теку</translation> + </message> +</context> +<context> + <name>BookmarkManager</name> + <message> + <source>Untitled</source> + <translation>Без назви</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>You are going to delete a Folder, this will also<br>remove it's content. Are you sure to continue?</source> + <translation>Ви збираєтесь видалити теку, що призведе до видалення її змісту.<br>Ви впевнені, що хочете продовжити?</translation> + </message> + <message> + <source>Manage Bookmarks...</source> + <translation>Керування закладками...</translation> + </message> + <message> + <source>Add Bookmark...</source> + <translation>Додати закладку...</translation> + </message> + <message> + <source>Ctrl+D</source> + <translation></translation> + </message> + <message> + <source>Delete Folder</source> + <translation>Видалити теку</translation> + </message> + <message> + <source>Rename Folder</source> + <translation>Перейменувати теку</translation> + </message> + <message> + <source>Show Bookmark</source> + <translation>Показати закладку</translation> + </message> + <message> + <source>Show Bookmark in New Tab</source> + <translation>Показати закладку в новій вкладці</translation> + </message> + <message> + <source>Delete Bookmark</source> + <translation>Видалити закладку</translation> + </message> + <message> + <source>Rename Bookmark</source> + <translation>Перейменувати закладку</translation> + </message> +</context> +<context> + <name>BookmarkManagerWidget</name> + <message> + <source>Manage Bookmarks</source> + <translation>Керування закладками</translation> + </message> + <message> + <source>Search:</source> + <translation>Пошук:</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>Import and Backup</source> + <translation>Імпорт та резервування</translation> + </message> + <message> + <source>OK</source> + <translation>OK</translation> + </message> + <message> + <source>Import...</source> + <translation>Імпортувати...</translation> + </message> + <message> + <source>Export...</source> + <translation>Експортувати...</translation> + </message> + <message> + <source>Open File</source> + <translation>Відкрити файл</translation> + </message> + <message> + <source>Files (*.xbel)</source> + <translation>Файли (*.xbel)</translation> + </message> + <message> + <source>Save File</source> + <translation>Зберегти файл</translation> + </message> + <message> + <source>Qt Assistant</source> + <translation>Qt Assistant</translation> + </message> + <message> + <source>Unable to save bookmarks.</source> + <translation>Не можу зберегти закладки.</translation> + </message> + <message> + <source>You are goingto delete a Folder, this will also<br> remove it's content. Are you sure to continue?</source> + <translation>Ви збираєтесь видалити теку, що призведе до видалення її змісту.<br>Ви впевнені, що хочете продовжити?</translation> + </message> + <message> + <source>Delete Folder</source> + <translation>Видалити теку</translation> + </message> + <message> + <source>Rename Folder</source> + <translation>Перейменувати теку</translation> + </message> + <message> + <source>Show Bookmark</source> + <translation>Показати закладку</translation> + </message> + <message> + <source>Show Bookmark in New Tab</source> + <translation>Показати закладку в новій вкладці</translation> + </message> + <message> + <source>Delete Bookmark</source> + <translation>Видалити закладку</translation> + </message> + <message> + <source>Rename Bookmark</source> + <translation>Перейменувати закладку</translation> + </message> +</context> +<context> + <name>BookmarkModel</name> + <message> + <source>Name</source> + <translation>Ім'я</translation> + </message> + <message> + <source>Address</source> + <translation>Адреса</translation> + </message> + <message> + <source>Bookmarks Menu</source> + <translation>Меню закладок</translation> + </message> +</context> +<context> + <name>BookmarkWidget</name> + <message> + <source>Bookmarks</source> + <translation>Закладки</translation> + </message> + <message> + <source>Filter:</source> + <translation>Фільтр:</translation> + </message> + <message> + <source>Add</source> + <translation>Додати</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> +</context> +<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> + <message> + <source>Unknown option: %1</source> + <translation>Невідома опція: %1</translation> + </message> + <message> + <source>The collection file '%1' does not exist.</source> + <translation>Файл колекції '%1' не існує.</translation> + </message> + <message> + <source>Missing collection file.</source> + <translation>Відсутній файл колекції.</translation> + </message> + <message> + <source>Invalid URL '%1'.</source> + <translation>Неправильний URL '%1'.</translation> + </message> + <message> + <source>Missing URL.</source> + <translation>URL відсутній.</translation> + </message> + <message> + <source>Unknown widget: %1</source> + <translation>Невідомий віджет: %1</translation> + </message> + <message> + <source>Missing widget.</source> + <translation>Відсутній віджет.</translation> + </message> + <message> + <source>The Qt help file '%1' does not exist.</source> + <translation>Файл довідки Qt '%1' не існує.</translation> + </message> + <message> + <source>Missing help file.</source> + <translation>Відсутній файл довідки.</translation> + </message> + <message> + <source>Missing filter argument.</source> + <translation>Відсутній аргумент фільтру.</translation> + </message> + <message> + <source>Error</source> + <translation>Помилка</translation> + </message> + <message> + <source>Notice</source> + <translation>Примітка</translation> + </message> +</context> +<context> + <name>ContentWindow</name> + <message> + <source>Open Link</source> + <translation>Відкрити посилання</translation> + </message> + <message> + <source>Open Link in New Tab</source> + <translation>Відкрити посилання в новій вкладці</translation> + </message> +</context> +<context> + <name>FilterNameDialogClass</name> + <message> + <source>Add Filter Name</source> + <translation>Додати назву фільтру</translation> + </message> + <message> + <source>Filter Name:</source> + <translation>Назва фільтру:</translation> + </message> +</context> +<context> + <name>FindWidget</name> + <message> + <source>Previous</source> + <translation>Попередній</translation> + </message> + <message> + <source>Next</source> + <translation>Наступний</translation> + </message> + <message> + <source>Case Sensitive</source> + <translation>Враховувати регістр</translation> + </message> + <message> + <source><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Search wrapped</source> + <translation><img src=":/trolltech/assistant/images/wrap.png">&nbsp;Пошук з початку</translation> + </message> +</context> +<context> + <name>FontPanel</name> + <message> + <source>Font</source> + <translation>Шрифт</translation> + </message> + <message> + <source>&Writing system</source> + <translation>Система &письма</translation> + </message> + <message> + <source>&Family</source> + <translation>&Шрифт</translation> + </message> + <message> + <source>&Style</source> + <translation>&Стиль</translation> + </message> + <message> + <source>&Point size</source> + <translation>&Розмір</translation> + </message> +</context> +<context> + <name>HelpViewer</name> + <message> + <source><title>about:blank</title></source> + <translation><title>about:blank</title></translation> + </message> + <message> + <source><title>Error 404...</title><div align="center"><br><br><h1>The page could not be found</h1><br><h3>'%1'</h3></div></source> + <translation><title>Помилка 404...</title><div align="center"><br><br><h1>Неможливо знайти сторінку</h1><br><h3>'%1'</h3></div></translation> + </message> + <message> + <source>Copy &Link Location</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> + </message> +</context> +<context> + <name>IndexWindow</name> + <message> + <source>&Look for:</source> + <translation></translation> + </message> + <message> + <source>Open Link</source> + <translation>Відкрити посилання</translation> + </message> + <message> + <source>Open Link in New Tab</source> + <translation>Відкрити посилання в новій вкладці</translation> + </message> +</context> +<context> + <name>InstallDialog</name> + <message> + <source>Install Documentation</source> + <translation>Встановити документацію</translation> + </message> + <message> + <source>Available Documentation:</source> + <translation>Доступна документація:</translation> + </message> + <message> + <source>Install</source> + <translation>Встановити</translation> + </message> + <message> + <source>Cancel</source> + <translation>Скасувати</translation> + </message> + <message> + <source>Close</source> + <translation>Закрити</translation> + </message> + <message> + <source>Installation Path:</source> + <translation>Шлях встановлення:</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Downloading documentation info...</source> + <translation>Завантажую інформацію про документацію...</translation> + </message> + <message> + <source>Download canceled.</source> + <translation>Завантаження скасоване.</translation> + </message> + <message> + <source>Done.</source> + <translation>Виконано.</translation> + </message> + <message> + <source>The file %1 already exists. Do you want to overwrite it?</source> + <translation>Файл %1 вже існує. Бажаєте перезаписати?</translation> + </message> + <message> + <source>Unable to save the file %1: %2.</source> + <translation>Не можу зберегти файл %1: %2.</translation> + </message> + <message> + <source>Downloading %1...</source> + <translation>Завантажую %1...</translation> + </message> + <message> + <source>Download failed: %1.</source> + <translation>Завантаження провалилось: %1.</translation> + </message> + <message> + <source>Documentation info file is corrupt!</source> + <translation>Файл інформації про документації пошкоджений!</translation> + </message> + <message> + <source>Download failed: Downloaded file is corrupted.</source> + <translation>Завантаження провалилось: Завантажений файл пошкоджений.</translation> + </message> + <message> + <source>Installing documentation %1...</source> + <translation>Встановлюю документацію %1...</translation> + </message> + <message> + <source>Error while installing documentation: +%1</source> + <translation>Помилка під час встановлення документації: +%1</translation> + </message> +</context> +<context> + <name>MainWindow</name> + <message> + <source>Index</source> + <translation>Індекс</translation> + </message> + <message> + <source>Contents</source> + <translation>Зміст</translation> + </message> + <message> + <source>Bookmarks</source> + <translation>Закладки</translation> + </message> + <message> + <source>Qt Assistant</source> + <translation>Qt Assistant</translation> + </message> + <message> + <source>Looking for Qt Documentation...</source> + <translation></translation> + </message> + <message> + <source>&File</source> + <translation>&Файл</translation> + </message> + <message> + <source>New &Tab</source> + <translation>&Нова вкладка</translation> + </message> + <message> + <source>Page Set&up...</source> + <translation>Параметри &сторінки...</translation> + </message> + <message> + <source>Print Preview...</source> + <translation>Попередній перегляд...</translation> + </message> + <message> + <source>&Print...</source> + <translation>&Друк...</translation> + </message> + <message> + <source>&Close Tab</source> + <translation>&Закрити вкладку</translation> + </message> + <message> + <source>&Quit</source> + <translation>Ви&йти</translation> + </message> + <message> + <source>CTRL+Q</source> + <translation></translation> + </message> + <message> + <source>&Edit</source> + <translation>&Правка</translation> + </message> + <message> + <source>&Copy selected Text</source> + <translation>&Копіювати виділений текст</translation> + </message> + <message> + <source>&Find in Text...</source> + <translation>Пошук в &тексті...</translation> + </message> + <message> + <source>&Find</source> + <translation>По&шук</translation> + </message> + <message> + <source>Find &Next</source> + <translation>Знайти &наступне</translation> + </message> + <message> + <source>Find &Previous</source> + <translation>Знайти &попереднє</translation> + </message> + <message> + <source>Preferences...</source> + <translation>Налаштування...</translation> + </message> + <message> + <source>&View</source> + <translation>&Вид</translation> + </message> + <message> + <source>Zoom &in</source> + <translation>З&більшити</translation> + </message> + <message> + <source>Zoom &out</source> + <translation>З&меншити</translation> + </message> + <message> + <source>Normal &Size</source> + <translation>&Нормальний розмір</translation> + </message> + <message> + <source>Ctrl+0</source> + <translation></translation> + </message> + <message> + <source>ALT+C</source> + <translation></translation> + </message> + <message> + <source>ALT+I</source> + <translation></translation> + </message> + <message> + <source>ALT+O</source> + <translation></translation> + </message> + <message> + <source>Search</source> + <translation>Пошук</translation> + </message> + <message> + <source>ALT+S</source> + <translation></translation> + </message> + <message> + <source>&Go</source> + <translation>П&ерейти</translation> + </message> + <message> + <source>&Home</source> + <translation>&Додому</translation> + </message> + <message> + <source>ALT+Home</source> + <translation></translation> + </message> + <message> + <source>&Back</source> + <translation>&Назад</translation> + </message> + <message> + <source>&Forward</source> + <translation>&Вперед</translation> + </message> + <message> + <source>Sync with Table of Contents</source> + <translation>Синхронізувати зі змістом</translation> + </message> + <message> + <source>Sync</source> + <translation>Синхронізувати</translation> + </message> + <message> + <source>Next Page</source> + <translation>Наступна сторінка</translation> + </message> + <message> + <source>Ctrl+Alt+Right</source> + <translation></translation> + </message> + <message> + <source>Previous Page</source> + <translation>Попередня сторінка</translation> + </message> + <message> + <source>Ctrl+Alt+Left</source> + <translation></translation> + </message> + <message> + <source>&Bookmarks</source> + <translation>&Закладки</translation> + </message> + <message> + <source>&Help</source> + <translation>&Довідка</translation> + </message> + <message> + <source>About...</source> + <translation>Про...</translation> + </message> + <message> + <source>Navigation Toolbar</source> + <translation>Панель навігації</translation> + </message> + <message> + <source>&Window</source> + <translation>В&ікно</translation> + </message> + <message> + <source>Zoom</source> + <translation>Масштабувати</translation> + </message> + <message> + <source>Minimize</source> + <translation>Мінімізувати</translation> + </message> + <message> + <source>Ctrl+M</source> + <translation></translation> + </message> + <message> + <source>Toolbars</source> + <translation>Панелі</translation> + </message> + <message> + <source>Filter Toolbar</source> + <translation>Панель фільтру</translation> + </message> + <message> + <source>Filtered by:</source> + <translation>Фільтрувати по:</translation> + </message> + <message> + <source>Address Toolbar</source> + <translation>Панель адреси</translation> + </message> + <message> + <source>Address:</source> + <translation>Адреса:</translation> + </message> + <message> + <source>Could not find the associated content item.</source> + <translation>Не вдалось знайти елемент, пов'язаний зі змістом.</translation> + </message> + <message> + <source>About %1</source> + <translation>Про %1</translation> + </message> + <message> + <source>Updating search index</source> + <translation>Оновлюється індекс пошуку</translation> + </message> + <message> + <source>Could not register file '%1': %2</source> + <translation>Не можу зареєструвати файл '%1': %2</translation> + </message> +</context> +<context> + <name>PreferencesDialog</name> + <message> + <source>Add Documentation</source> + <translation>Додати документацію</translation> + </message> + <message> + <source>Qt Compressed Help Files (*.qch)</source> + <translation>Стиснені файли довідки Qt (*.qch)</translation> + </message> + <message> + <source>The namespace %1 is already registered!</source> + <translation>Простір імен %1 вже зареєстровано!</translation> + </message> + <message> + <source>The specified file is not a valid Qt Help File!</source> + <translation>Вказаний файл не є коректним файлом довідки Qt!</translation> + </message> + <message> + <source>Remove Documentation</source> + <translation>Видалити документацію</translation> + </message> + <message> + <source>Some documents currently opened in Assistant reference the documentation you are attempting to remove. Removing the documentation will close those documents.</source> + <translation>Деякі документи, що зараз відкриті в Assistant пов'язані з документацією, яку ви намагаєтесь видалити. Видалення документації призведе до закриття цих документів.</translation> + </message> + <message> + <source>Cancel</source> + <translation>Скасувати</translation> + </message> + <message> + <source>OK</source> + <translation>OK</translation> + </message> + <message> + <source>Use custom settings</source> + <translation>Використовувати налаштування користувача</translation> + </message> +</context> +<context> + <name>PreferencesDialogClass</name> + <message> + <source>Preferences</source> + <translation>Налаштування</translation> + </message> + <message> + <source>Fonts</source> + <translation>Шрифти</translation> + </message> + <message> + <source>Font settings:</source> + <translation>Параметри шрифту:</translation> + </message> + <message> + <source>Browser</source> + <translation>Навігатор</translation> + </message> + <message> + <source>Application</source> + <translation>Додаток</translation> + </message> + <message> + <source>Filters</source> + <translation>Фільтри</translation> + </message> + <message> + <source>Filter:</source> + <translation>Фільтр:</translation> + </message> + <message> + <source>Attributes:</source> + <translation>Атрибути:</translation> + </message> + <message> + <source>1</source> + <translation>1</translation> + </message> + <message> + <source>Add</source> + <translation>Додати</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>Documentation</source> + <translation>Документація</translation> + </message> + <message> + <source>Registered Documentation:</source> + <translation>Зареєстрована документація:</translation> + </message> + <message> + <source>Add...</source> + <translation>Додати...</translation> + </message> + <message> + <source>Options</source> + <translation>Опції</translation> + </message> + <message> + <source>On help start:</source> + <translation>При запуску довідки:</translation> + </message> + <message> + <source>Show my home page</source> + <translation>Показувати мою домашню сторінку</translation> + </message> + <message> + <source>Show a blank page</source> + <translation>Показувати пусту сторінку</translation> + </message> + <message> + <source>Show my tabs from last session</source> + <translation>Показувати вкладку з минулого сеансу</translation> + </message> + <message> + <source>Homepage</source> + <translation>Домашня сторінка</translation> + </message> + <message> + <source>Current Page</source> + <translation>Поточна сторінка</translation> + </message> + <message> + <source>Blank Page</source> + <translation>Пуста сторінка</translation> + </message> + <message> + <source>Restore to default</source> + <translation>Відновити типово</translation> + </message> +</context> +<context> + <name>RemoteControl</name> + <message> + <source>Debugging Remote Control</source> + <translation>Зневадження віддаленого управління</translation> + </message> + <message> + <source>Received Command: %1 %2</source> + <translation>Отримано команду: %1 %2</translation> + </message> +</context> +<context> + <name>SearchWidget</name> + <message> + <source>&Copy</source> + <translation>&Копіювати</translation> + </message> + <message> + <source>Copy &Link Location</source> + <translation>Копіювати &адресу посилання</translation> + </message> + <message> + <source>Open Link in New Tab</source> + <translation>Відкрити посилання в новій вкладці</translation> + </message> + <message> + <source>Select All</source> + <translation>Виділити все</translation> + </message> +</context> +<context> + <name>TopicChooser</name> + <message> + <source>Choose Topic</source> + <translation>Оберіть тему</translation> + </message> + <message> + <source>&Topics</source> + <translation>&Теми</translation> + </message> + <message> + <source>&Display</source> + <translation>&Показати</translation> + </message> + <message> + <source>&Close</source> + <translation>&Закрити</translation> + </message> + <message> + <source>Choose a topic for <b>%1</b>:</source> + <translation>Оберіть тему для <b>%1</b>:</translation> + </message> +</context> +</TS> diff --git a/translations/designer_uk.ts b/translations/designer_uk.ts new file mode 100644 index 0000000..24b2a44 --- /dev/null +++ b/translations/designer_uk.ts @@ -0,0 +1,5783 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.0" language="uk_UA"> +<context> + <name>AbstractFindWidget</name> + <message> + <source>&Previous</source> + <translation>&Попередній</translation> + </message> + <message> + <source>&Next</source> + <translation>&Наступний</translation> + </message> + <message> + <source>&Case sensitive</source> + <translation>Враховувати &регістр</translation> + </message> + <message> + <source>Whole &words</source> + <translation>Цілі &слова</translation> + </message> + <message> + <source><img src=":/trolltech/shared/images/wrap.png">&nbsp;Search wrapped</source> + <translation><img src=":/trolltech/shared/images/wrap.png">&nbsp;Пошук з початку</translation> + </message> +</context> +<context> + <name>AddLinkDialog</name> + <message> + <source>Insert Link</source> + <translation>Вставити посилання</translation> + </message> + <message> + <source>Title:</source> + <translation>Заголовок:</translation> + </message> + <message> + <source>URL:</source> + <translation>URL:</translation> + </message> +</context> +<context> + <name>AppFontDialog</name> + <message> + <source>Additional Fonts</source> + <translation>Додаткові шрифти</translation> + </message> +</context> +<context> + <name>AppFontManager</name> + <message> + <source>'%1' is not a file.</source> + <translation>'%1' не є файлом.</translation> + </message> + <message> + <source>The font file '%1' does not have read permissions.</source> + <translation>Файл шрифту '%1' не доступний для читання.</translation> + </message> + <message> + <source>The font file '%1' is already loaded.</source> + <translation>Файл шрифти '%1' вже завантажено.</translation> + </message> + <message> + <source>The font file '%1' could not be loaded.</source> + <translation>Неможливо завантажити файл шрифт '%1'.</translation> + </message> + <message> + <source>'%1' is not a valid font id.</source> + <translation>'%1' не є правильним ідентифікатором шрифт.</translation> + </message> + <message> + <source>There is no loaded font matching the id '%1'.</source> + <translation>Відсутній завантажений шрифт, що відповідає ідентифікатору '%1'.</translation> + </message> + <message> + <source>The font '%1' (%2) could not be unloaded.</source> + <translation>Неможливо вивантажити шрифт '%1' (%2).</translation> + </message> +</context> +<context> + <name>AppFontWidget</name> + <message> + <source>Fonts</source> + <translation>Шрифти</translation> + </message> + <message> + <source>Add font files</source> + <translation>Додати файли шрифтів</translation> + </message> + <message> + <source>Remove current font file</source> + <translation>Видалити поточний файл шрифт</translation> + </message> + <message> + <source>Remove all font files</source> + <translation>Видалити усі файли шрифтів</translation> + </message> + <message> + <source>Add Font Files</source> + <translation>Додати файли шрифтів</translation> + </message> + <message> + <source>Font files (*.ttf)</source> + <translation>Файли шрифтів (*.ttf)</translation> + </message> + <message> + <source>Error Adding Fonts</source> + <translation>Помилка додавання шрифтів</translation> + </message> + <message> + <source>Error Removing Fonts</source> + <translation>Помилка видалення шрифтів</translation> + </message> + <message> + <source>Remove Fonts</source> + <translation>Видалити шрифти</translation> + </message> + <message> + <source>Would you like to remove all fonts?</source> + <translation>Бажаєте видалити усі шрифти?</translation> + </message> +</context> +<context> + <name>AppearanceOptionsWidget</name> + <message> + <source>Form</source> + <translation>Форма</translation> + </message> + <message> + <source>User Interface Mode</source> + <translation>Режим інтерфейсу користувача</translation> + </message> +</context> +<context> + <name>AssistantClient</name> + <message> + <source>Unable to send request: Assistant is not responding.</source> + <translation>Неможливо надіслати запит. Assistant не відповідає.</translation> + </message> + <message> + <source>The binary '%1' does not exist.</source> + <translation>Виконуваний файл '%1' не існує.</translation> + </message> + <message> + <source>Unable to launch assistant (%1).</source> + <translation>Неможливо запустити Assistant (%1).</translation> + </message> +</context> +<context> + <name>BrushPropertyManager</name> + <message> + <source>No brush</source> + <translation>Без пензля</translation> + </message> + <message> + <source>Solid</source> + <translation>Суцільна</translation> + </message> + <message> + <source>Dense 1</source> + <translation>Густина 1</translation> + </message> + <message> + <source>Dense 2</source> + <translation>Густина 2</translation> + </message> + <message> + <source>Dense 3</source> + <translation>Густина 3</translation> + </message> + <message> + <source>Dense 4</source> + <translation>Густина 4</translation> + </message> + <message> + <source>Dense 5</source> + <translation>Густина 5</translation> + </message> + <message> + <source>Dense 6</source> + <translation>Густина 6</translation> + </message> + <message> + <source>Dense 7</source> + <translation>Густина 7</translation> + </message> + <message> + <source>Horizontal</source> + <translation>Горизонтальний</translation> + </message> + <message> + <source>Vertical</source> + <translation>Вертикальний</translation> + </message> + <message> + <source>Cross</source> + <translation>Хрестоподібний</translation> + </message> + <message> + <source>Backward diagonal</source> + <translation>Зворотня діагональ</translation> + </message> + <message> + <source>Forward diagonal</source> + <translation>Пряма діагональ</translation> + </message> + <message> + <source>Crossing diagonal</source> + <translation>Діагоналі, що перетинаються</translation> + </message> + <message> + <source>Style</source> + <translation>Стиль</translation> + </message> + <message> + <source>Color</source> + <translation>Колір</translation> + </message> + <message> + <source>[%1, %2]</source> + <translation>[%1, %2]</translation> + </message> +</context> +<context> + <name>Command</name> + <message> + <source>Add connection</source> + <translation>Додати з'єднання</translation> + </message> + <message> + <source>Adjust connection</source> + <translation>Налаштувати з'єднання</translation> + </message> + <message> + <source>Delete connections</source> + <translation>Видалити з'єднання</translation> + </message> + <message> + <source>Change source</source> + <translation>Змінити джерело</translation> + </message> + <message> + <source>Change target</source> + <translation>Зміни ціль</translation> + </message> + <message> + <source>Add '%1' to '%2'</source> + <extracomment>Command description for adding buttons to a QButtonGroup</extracomment> + <translation>Додати '%1' до '%2'</translation> + </message> + <message> + <source>Morph %1/'%2' into %3</source> + <extracomment>MorphWidgetCommand description</extracomment> + <translation>Перетворити %1/%2 в %3</translation> + </message> + <message> + <source>Insert '%1'</source> + <translation>Вставити '%1'</translation> + </message> + <message> + <source>Change Z-order of '%1'</source> + <translation>Змінити порядок глибина для '%1'</translation> + </message> + <message> + <source>Raise '%1'</source> + <translation>Підняти '%1'</translation> + </message> + <message> + <source>Lower '%1'</source> + <translation>Опустити '%1'</translation> + </message> + <message> + <source>Delete '%1'</source> + <translation>Видалити '%1'</translation> + </message> + <message> + <source>Reparent '%1'</source> + <translation>Змінити власника '%1'</translation> + </message> + <message> + <source>Promote to custom widget</source> + <translation>Перетворити на користувацький віджет</translation> + </message> + <message> + <source>Demote from custom widget</source> + <translation>Перетворити з користувацького віджета</translation> + </message> + <message> + <source>Lay out using grid</source> + <translation>Розташувати, використовуючи сітку</translation> + </message> + <message> + <source>Lay out vertically</source> + <translation>Розташувати вертикально</translation> + </message> + <message> + <source>Lay out horizontally</source> + <translation>Розташувати горизонтально</translation> + </message> + <message> + <source>Break layout</source> + <translation>Розбити розташування</translation> + </message> + <message> + <source>Simplify Grid Layout</source> + <translation>Спрощене розташування по сітці</translation> + </message> + <message> + <source>Move Page</source> + <translation>Пересунути сторінку</translation> + </message> + <message> + <source>Delete Page</source> + <translation>Видалити сторінку</translation> + </message> + <message> + <source>Page</source> + <translation>Сторінка</translation> + </message> + <message> + <source>Insert Page</source> + <translation>Вставити сторінку</translation> + </message> + <message> + <source>Change Tab order</source> + <translation>Змінити порядок обходу</translation> + </message> + <message> + <source>Create Menu Bar</source> + <translation>Створити панель меню</translation> + </message> + <message> + <source>Delete Menu Bar</source> + <translation>Видалити панель меню</translation> + </message> + <message> + <source>Create Status Bar</source> + <translation>Створити рядок статусу</translation> + </message> + <message> + <source>Delete Status Bar</source> + <translation>Видалити рядок статусу</translation> + </message> + <message> + <source>Add Tool Bar</source> + <translation>Додати панель інструментів</translation> + </message> + <message> + <source>Add Dock Window</source> + <translation>Додати прикріплене вікно</translation> + </message> + <message> + <source>Adjust Size of '%1'</source> + <translation>Підігнати розмір '%1'</translation> + </message> + <message> + <source>Change Form Layout Item Geometry</source> + <translation>Змінити геометрію елемента розташування формою</translation> + </message> + <message> + <source>Change Layout Item Geometry</source> + <translation>Змінити геометрію елемента розташування</translation> + </message> + <message> + <source>Delete Subwindow</source> + <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> + <message> + <source>Change Table Contents</source> + <translation>Змінити зміст таблиці</translation> + </message> + <message> + <source>Change Tree Contents</source> + <translation>Змінити зміст дерева</translation> + </message> + <message> + <source>Add action</source> + <translation>Додати дію</translation> + </message> + <message> + <source>Remove action</source> + <translation>Видалити дію</translation> + </message> + <message> + <source>Add menu</source> + <translation>Додати меню</translation> + </message> + <message> + <source>Remove menu</source> + <translation>Видалити меню</translation> + </message> + <message> + <source>Create submenu</source> + <translation>Створити підменю</translation> + </message> + <message> + <source>Delete Tool Bar</source> + <translation>Видалити панель інструментів</translation> + </message> + <message> + <source>Change layout of '%1' from %2 to %3</source> + <translation>Змінити розташування '%1' з %2 на %3</translation> + </message> + <message> + <source>Set action text</source> + <translation>Встановити текст дії</translation> + </message> + <message> + <source>Insert action</source> + <translation>Вставити дію</translation> + </message> + <message> + <source>Move action</source> + <translation>Пересунути дію</translation> + </message> + <message> + <source>Change Title</source> + <translation>Змінити заголовок</translation> + </message> + <message> + <source>Insert Menu</source> + <translation>Вставити меню</translation> + </message> + <message> + <source>Changed '%1' of '%2'</source> + <translation>Змінено '%1' з '%2'</translation> + </message> + <message numerus="yes"> + <source>Changed '%1' of %n objects</source> + <translation> + <numerusform>Змінено '%1' з '%n' oб'єкта</numerusform> + <numerusform>Змінено '%1' з '%n' oб'єктів</numerusform> + <numerusform>Змінено '%1' з '%n' oб'єктів</numerusform> + </translation> + </message> + <message> + <source>Reset '%1' of '%2'</source> + <translation>Відновлено '%1' з '%2'</translation> + </message> + <message numerus="yes"> + <source>Reset '%1' of %n objects</source> + <translation> + <numerusform>Відновлено '%1' з %n об'єкта</numerusform> + <numerusform>Відновлено '%1' з %n об'єктів</numerusform> + <numerusform>Відновлено '%1' з %n об'єктів</numerusform> + </translation> + </message> + <message> + <source>Add dynamic property '%1' to '%2'</source> + <translation>Додати динамічну властивість '%1' до '%2'</translation> + </message> + <message numerus="yes"> + <source>Add dynamic property '%1' to %n objects</source> + <translation> + <numerusform>Додати динамічну властивість '%1' до '%n' об'єкта</numerusform> + <numerusform>Додати динамічну властивість '%1' до '%n' об'єктів</numerusform> + <numerusform>Додати динамічну властивість '%1' до '%n' об'єктів</numerusform> + </translation> + </message> + <message> + <source>Remove dynamic property '%1' from '%2'</source> + <translation>Видалити динамічну властивість '%1' у '%2'</translation> + </message> + <message numerus="yes"> + <source>Remove dynamic property '%1' from %n objects</source> + <translation> + <numerusform>Видалити динамічну властивість '%1' у '%n' об'єкта</numerusform> + <numerusform>Видалити динамічну властивість '%1' у '%n' об'єктів</numerusform> + <numerusform>Видалити динамічну властивість '%1' у '%n' об'єктів</numerusform> + </translation> + </message> + <message> + <source>Change script</source> + <translation>Змінити скрипт</translation> + </message> + <message> + <source>Change signals/slots</source> + <translation>Змінити сигнали/слоти</translation> + </message> + <message> + <source>Change signal</source> + <translation>Змінити сигнал</translation> + </message> + <message> + <source>Change slot</source> + <translation>Змінити слот</translation> + </message> + <message> + <source>Change signal-slot connection</source> + <translation>Змінити з'єднання сигнал-слот</translation> + </message> + <message> + <source>Change sender</source> + <translation>Змінити відправника</translation> + </message> + <message> + <source>Change receiver</source> + <translation>Змінити отримувача</translation> + </message> + <message> + <source>Create button group</source> + <translation>Створити групу кнопок</translation> + </message> + <message> + <source>Break button group</source> + <translation>Розбити групу кнопок</translation> + </message> + <message> + <source>Break button group '%1'</source> + <translation>Розбити групу кнопок '%1'</translation> + </message> + <message> + <source>Add buttons to group</source> + <translation>Додати кнопки до групи</translation> + </message> + <message> + <source>Remove buttons from group</source> + <translation>Видалити кнопки з групи</translation> + </message> + <message> + <source>Remove '%1' from '%2'</source> + <extracomment>Command description for removing buttons from a QButtonGroup</extracomment> + <translation>Видалити '%1' з '%2'</translation> + </message> +</context> +<context> + <name>ConnectDialog</name> + <message> + <source>Configure Connection</source> + <translation>Налаштування з'єднання</translation> + </message> + <message> + <source>GroupBox</source> + <translation></translation> + </message> + <message> + <source>Edit...</source> + <translation>Редагувати...</translation> + </message> + <message> + <source>Show signals and slots inherited from QWidget</source> + <translation>Показувати сигнали та слоти успадковані від QWidget</translation> + </message> +</context> +<context> + <name>ConnectionDelegate</name> + <message> + <source><object></source> + <translation><об'єкт></translation> + </message> + <message> + <source><signal></source> + <translation><сигнал></translation> + </message> + <message> + <source><slot></source> + <translation><слот></translation> + </message> +</context> +<context> + <name>DPI_Chooser</name> + <message> + <source>Standard (96 x 96)</source> + <extracomment>Embedded device standard screen resolution</extracomment> + <translation>Стандартна (96 x 96)</translation> + </message> + <message> + <source>Greenphone (179 x 185)</source> + <extracomment>Embedded device screen resolution</extracomment> + <translation>Greenphone (179 x 185)</translation> + </message> + <message> + <source>High (192 x 192)</source> + <extracomment>Embedded device high definition screen resolution</extracomment> + <translation>Висока (192 x 192)</translation> + </message> +</context> +<context> + <name>Designer</name> + <message> + <source>Unable to launch %1.</source> + <translation>Неможливо запустити %1.</translation> + </message> + <message> + <source>%1 timed out.</source> + <translation>Час очікування %1 вичерпано.</translation> + </message> + <message> + <source>Custom Widgets</source> + <translation>Віджети користувача</translation> + </message> + <message> + <source>Promoted Widgets</source> + <translation>Перетворені віджети</translation> + </message> + <message> + <source>Qt Designer</source> + <translation>Qt Designer</translation> + </message> + <message> + <source>This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form.</source> + <translation>Цей файл містить роздільники верхнього рівня.<br>Вони <b>НЕ</b> будуть збережені в формі.</translation> + </message> + <message> + <source>Perhaps you forgot to create a layout?</source> + <translation>Можливо, ви забули створити розташування?</translation> + </message> + <message> + <source>Invalid UI file: The root element <ui> is missing.</source> + <translation>Неправильний файл UI: Кореневий елемент <ui> відсутній.</translation> + </message> + <message> + <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> + <translation>Під час читання файлу UI сталася помилка в рядку %1, позиція %2: %3</translation> + </message> + <message> + <source>This file cannot be read because it was created using %1.</source> + <translation>Неможливо прочитати файл, бо його було створено з використанням %1.</translation> + </message> + <message> + <source>This file was created using Designer from Qt-%1 and cannot be read.</source> + <translation>Неможливо прочитати файл, бо його було створено з використанням Designer з Qt-%1.</translation> + </message> + <message> + <source>The converted file could not be read.</source> + <translation>Неможливо прочитати конвертований файл.</translation> + </message> + <message> + <source>This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer.</source> + <translation>Цей файл було створено з використанням Designer з Qt-%1.і його буде сконвертовано до нової форми.</translation> + </message> + <message> + <source>The old form has not been touched, but you will have to save the form under a new name.</source> + <translation>Стара форма не змінилася, але ви маєте зберегти форму під новим іменем.</translation> + </message> + <message> + <source>This file was created using Designer from Qt-%1 and could not be read: +%2</source> + <translation>Неможливо прочитати файл, бо його було створено з використанням Designer з Qt-%1: +%2</translation> + </message> + <message> + <source>Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format.</source> + <translation>Будь-ласка, пропустіть його через <b>uic3&nbsp;-convert</b>, щоб сконвертувати до формату Qt-4.</translation> + </message> + <message> + <source>This file cannot be read because the extra info extension failed to load.</source> + <translation>Неможливо прочитати цей файл, бо трапився збій при завантаженні розширення додаткової інформації.</translation> + </message> +</context> +<context> + <name>DesignerMetaEnum</name> + <message> + <source>%1 is not a valid enumeration value of '%2'.</source> + <translation>%1 не є правильним значення для переліку '%2'.</translation> + </message> + <message> + <source>'%1' could not be converted to an enumeration value of type '%2'.</source> + <translation>Неможливо сконвертувати '%1'до типу значень переліку '%2'.</translation> + </message> +</context> +<context> + <name>DesignerMetaFlags</name> + <message> + <source>'%1' could not be converted to a flag value of type '%2'.</source> + <translation>'%1' не можу бути сконвертовано до прапорця типу '%2'.</translation> + </message> +</context> +<context> + <name>DeviceProfile</name> + <message> + <source>'%1' is not a number.</source> + <extracomment>Reading a number for an embedded device profile</extracomment> + <translation>'%1' не є числом.</translation> + </message> + <message> + <source>An invalid tag <%1> was encountered.</source> + <translation>Знайдено неправильний тег <%1>.</translation> + </message> +</context> +<context> + <name>DeviceProfileDialog</name> + <message> + <source>&Family</source> + <translation>&Сім'я</translation> + </message> + <message> + <source>&Point Size</source> + <translation>&Розмір точки</translation> + </message> + <message> + <source>Style</source> + <translation>Стиль</translation> + </message> + <message> + <source>Device DPI</source> + <translation>DPI пристрою</translation> + </message> + <message> + <source>Name</source> + <translation>Назва</translation> + </message> +</context> +<context> + <name>DeviceSkin</name> + <message> + <source>The image file '%1' could not be loaded.</source> + <translation>Неможливо завантажити файл зображення '%1'.</translation> + </message> + <message> + <source>The skin directory '%1' does not contain a configuration file.</source> + <translation>Тека обкладинки '%1' не містить конфігураційного файлу.</translation> + </message> + <message> + <source>The skin configuration file '%1' could not be opened.</source> + <translation>Неможливо відкрити конфігураційний файл '%1'.</translation> + </message> + <message> + <source>The skin configuration file '%1' could not be read: %2</source> + <translation>Неможливо прочитати конфігураційний файл '%1': %2</translation> + </message> + <message> + <source>Syntax error: %1</source> + <translation>Синтаксична помилка: %1</translation> + </message> + <message> + <source>The skin "up" image file '%1' does not exist.</source> + <translation>Зображення обкладинки "вгору" '%1' не існує.</translation> + </message> + <message> + <source>The skin "down" image file '%1' does not exist.</source> + <translation>Зображення обкладинки "вниз" '%1' не існує.</translation> + </message> + <message> + <source>The skin "closed" image file '%1' does not exist.</source> + <translation>Зображення обкладинки "закрито" '%1' не існує.</translation> + </message> + <message> + <source>The skin cursor image file '%1' does not exist.</source> + <translation>Зображення обкладинки для курсору '%1' не існує.</translation> + </message> + <message> + <source>Syntax error in area definition: %1</source> + <translation>Синтаксична помилка в описі області: %1</translation> + </message> + <message> + <source>Mismatch in number of areas, expected %1, got %2.</source> + <translation>Не співпадає кількість областей, очікувалось %1, отримано %2.</translation> + </message> +</context> +<context> + <name>EmbeddedOptionsControl</name> + <message> + <source><html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Resolution</b></td><td>%4 x %5</td></tr></table></html></source> + <extracomment>Format embedded device profile description</extracomment> + <translation><html><table><tr><td><b>Шрифт</b></td><td>%1, %2</td></tr><tr><td><b>Стиль</b></td><td>%3</td></tr><tr><td><b>Роздільна здатність</b></td><td>%4 x %5</td></tr></table></html></translation> + </message> +</context> +<context> + <name>EmbeddedOptionsPage</name> + <message> + <source>Embedded Design</source> + <extracomment>Tab in preferences dialog</extracomment> + <translation>Дизайн для портативних пристроїв</translation> + </message> + <message> + <source>Device Profiles</source> + <extracomment>EmbeddedOptionsControl group box"</extracomment> + <translation>Профілі пристроїв</translation> + </message> +</context> +<context> + <name>FontPanel</name> + <message> + <source>Font</source> + <translation>Шрифт</translation> + </message> + <message> + <source>&Writing system</source> + <translation>Система &письма</translation> + </message> + <message> + <source>&Family</source> + <translation>&Сім'я</translation> + </message> + <message> + <source>&Style</source> + <translation>Сти&ль</translation> + </message> + <message> + <source>&Point size</source> + <translation>&Розмір точки</translation> + </message> +</context> +<context> + <name>FontPropertyManager</name> + <message> + <source>PreferDefault</source> + <translation>Надавати перевагу типовому</translation> + </message> + <message> + <source>NoAntialias</source> + <translation>Без згладжування</translation> + </message> + <message> + <source>PreferAntialias</source> + <translation>Надавати перевагу згладжування</translation> + </message> + <message> + <source>Antialiasing</source> + <translation>Згладжування</translation> + </message> +</context> +<context> + <name>FormBuilder</name> + <message> + <source>Invalid stretch value for '%1': '%2'</source> + <extracomment>Parsing layout stretch values +---------- +Parsing layout stretch values +---------- +Parsing layout stretch values</extracomment> + <translation>Неправильне значення розтягування для '%1': '%2'</translation> + </message> + <message> + <source>Invalid minimum size for '%1': '%2'</source> + <extracomment>Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values +---------- +Parsing grid layout minimum size values</extracomment> + <translation>Неправильне значення мінімального розміру для '%1': '%2'</translation> + </message> +</context> +<context> + <name>FormEditorOptionsPage</name> + <message> + <source>%1 %</source> + <translation>%1 %</translation> + </message> + <message> + <source>Preview Zoom</source> + <translation>Масштаб попереднього перегляду</translation> + </message> + <message> + <source>Default Zoom</source> + <translation>Типовий масштаб</translation> + </message> + <message> + <source>Forms</source> + <extracomment>Tab in preferences dialog</extracomment> + <translation>Форми</translation> + </message> + <message> + <source>Default Grid</source> + <translation>Типова сітка</translation> + </message> +</context> +<context> + <name>FormLayoutRowDialog</name> + <message> + <source>Add Form Layout Row</source> + <translation>Додати рядок до розташування формою</translation> + </message> + <message> + <source>&Label text:</source> + <translation>Текст &мітки:</translation> + </message> + <message> + <source>Field &type:</source> + <translation>&Тип поля:</translation> + </message> + <message> + <source>&Field name:</source> + <translation>Назва &поля:</translation> + </message> + <message> + <source>&Buddy:</source> + <translation>Прив'&язка:</translation> + </message> + <message> + <source>&Row:</source> + <translation>&Рядок:</translation> + </message> + <message> + <source>Label &name:</source> + <translation>&Назва мітки:</translation> + </message> +</context> +<context> + <name>FormWindow</name> + <message> + <source>Unexpected element <%1></source> + <translation>Неочікуваний елемент <%1></translation> + </message> + <message> + <source>Error while pasting clipboard contents at line %1, column %2: %3</source> + <translation>Помилка під час вставки змісту буферу обміну в рядку %1, позиція %2: %3</translation> + </message> +</context> +<context> + <name>FormWindowSettings</name> + <message> + <source>Form Settings</source> + <translation>Налаштування форми</translation> + </message> + <message> + <source>Layout &Default</source> + <translation>&Типове розташування</translation> + </message> + <message> + <source>&Spacing:</source> + <translation>&Відступ:</translation> + </message> + <message> + <source>&Margin:</source> + <translation>&Границя:</translation> + </message> + <message> + <source>&Layout Function</source> + <translation>Функція р&озташування</translation> + </message> + <message> + <source>Ma&rgin:</source> + <translation>Г&раниця:</translation> + </message> + <message> + <source>Spa&cing:</source> + <translation>В&ідступ:</translation> + </message> + <message> + <source>&Pixmap Function</source> + <translation>Функція растрового &зображення</translation> + </message> + <message> + <source>&Include Hints</source> + <translation>Включити під&казки</translation> + </message> + <message> + <source>Grid</source> + <translation>Сітка</translation> + </message> + <message> + <source>Embedded Design</source> + <translation>Дизайн для портативних пристроїв</translation> + </message> + <message> + <source>&Author</source> + <translation>&Автор</translation> + </message> +</context> +<context> + <name>IconSelector</name> + <message> + <source>All Pixmaps (</source> + <translation>Усі растрові зображення (</translation> + </message> +</context> +<context> + <name>ItemPropertyBrowser</name> + <message> + <source>XX Icon Selected off</source> + <extracomment>Sample string to determinate the width for the first column of the list item property browser</extracomment> + <translation>XX Значок Виділено вимк</translation> + </message> +</context> +<context> + <name>MainWindowBase</name> + <message> + <source>Main</source> + <extracomment>Not currently used (main tool bar)</extracomment> + <translation>Головна</translation> + </message> + <message> + <source>File</source> + <translation>Файл</translation> + </message> + <message> + <source>Edit</source> + <translation>Правка</translation> + </message> + <message> + <source>Tools</source> + <translation>Інструменти</translation> + </message> + <message> + <source>Form</source> + <translation>Форма</translation> + </message> + <message> + <source>Qt Designer</source> + <translation>Qt Designer</translation> + </message> +</context> +<context> + <name>NewForm</name> + <message> + <source>Show this Dialog on Startup</source> + <translation>Показувати цей діалог під час запуску</translation> + </message> + <message> + <source>C&reate</source> + <translation>&Створити</translation> + </message> + <message> + <source>Recent</source> + <translation>Нещодавні</translation> + </message> + <message> + <source>New Form</source> + <translation>Нова форма</translation> + </message> + <message> + <source>&Close</source> + <translation>З&акрити</translation> + </message> + <message> + <source>&Open...</source> + <translation>&Відкрити...</translation> + </message> + <message> + <source>&Recent Forms</source> + <translation>Нещодавні &форми</translation> + </message> + <message> + <source>Read error</source> + <translation>Помилка читання</translation> + </message> + <message> + <source>A temporary form file could not be created in %1.</source> + <translation>Неможливо створити тимчасовий файл форми в %1.</translation> + </message> + <message> + <source>The temporary form file %1 could not be written.</source> + <translation>Неможливо записати тимчасовий файл форми %1.</translation> + </message> +</context> +<context> + <name>ObjectInspectorModel</name> + <message> + <source>Object</source> + <translation>Об'єкт</translation> + </message> + <message> + <source>Class</source> + <translation>Клас</translation> + </message> + <message> + <source>separator</source> + <translation>розділювач</translation> + </message> + <message> + <source><noname></source> + <translation><без назви></translation> + </message> +</context> +<context> + <name>ObjectNameDialog</name> + <message> + <source>Change Object Name</source> + <translation>Змінити назву об'єкта</translation> + </message> + <message> + <source>Object Name</source> + <translation>Назва об'єкта</translation> + </message> +</context> +<context> + <name>PluginDialog</name> + <message> + <source>Plugin Information</source> + <translation>Інформація про додатки</translation> + </message> + <message> + <source>1</source> + <translation>1</translation> + </message> +</context> +<context> + <name>PreferencesDialog</name> + <message> + <source>Preferences</source> + <translation>Налаштування</translation> + </message> +</context> +<context> + <name>PreviewConfigurationWidget</name> + <message> + <source>Form</source> + <translation>Форма</translation> + </message> + <message> + <source>Print/Preview Configuration</source> + <translation>Налаштування друку/попереднього перегляду</translation> + </message> + <message> + <source>Style</source> + <translation>Стиль</translation> + </message> + <message> + <source>Style sheet</source> + <translation>Таблиця стилів</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Device skin</source> + <translation>Обкладинка пристрою</translation> + </message> +</context> +<context> + <name>PromotionModel</name> + <message> + <source>Not used</source> + <extracomment>Usage of promoted widgets</extracomment> + <translation>Не використовується</translation> + </message> +</context> +<context> + <name>Q3WizardContainer</name> + <message> + <source>Page</source> + <translation>Сторінка</translation> + </message> +</context> +<context> + <name>QAbstractFormBuilder</name> + <message> + <source>Unexpected element <%1></source> + <translation>Неочікуваний елемент <%1></translation> + </message> + <message> + <source>An error has occurred while reading the UI file at line %1, column %2: %3</source> + <translation>Під час читання файлу UI '%1' сталася помилка в рядку %2, позиція %3</translation> + </message> + <message> + <source>Invalid UI file: The root element <ui> is missing.</source> + <translation>Неправильний файл UI: Кореневий елемент <ui> відсутній.</translation> + </message> + <message> + <source>The creation of a widget of the class '%1' failed.</source> + <translation>Збій створення віджета класу '%1'.</translation> + </message> + <message> + <source>Attempt to add child that is not of class QWizardPage to QWizard.</source> + <translation>Спроба додати до QWizard нащадка, який не є класом QWizardPage.</translation> + </message> + <message> + <source>Attempt to add a layout to a widget '%1' (%2) which already has a layout of non-box type %3. +This indicates an inconsistency in the ui-file.</source> + <translation>Спроба додати розташування для віджета '%1' (%2), який вже має розташування %3. +Це вказує на некоректність в файлі UI.</translation> + </message> + <message> + <source>Empty widget item in %1 '%2'.</source> + <translation>Пустий елемент віджета в %1 '%2'.</translation> + </message> + <message> + <source>Flags property are not supported yet.</source> + <translation>Властивості-прапорці ще не підтримуються.</translation> + </message> + <message> + <source>While applying tab stops: The widget '%1' could not be found.</source> + <translation>Під час застосування позицій табуляції: Неможливо знайти віджет '%1'.</translation> + </message> + <message> + <source>Invalid QButtonGroup reference '%1' referenced by '%2'.</source> + <translation>'%2' містить неправильне посилання на QButtonGroup '%1'.</translation> + </message> + <message> + <source>This version of the uitools library is linked without script support.</source> + <translation>Ця версія бібліотеки uitools зібрана без підтримки скриптів.</translation> + </message> +</context> +<context> + <name>QAxWidgetPlugin</name> + <message> + <source>ActiveX control</source> + <translation>Елемент керування ActiveX</translation> + </message> + <message> + <source>ActiveX control widget</source> + <translation>Віджет елемента керування ActiveX</translation> + </message> +</context> +<context> + <name>QAxWidgetTaskMenu</name> + <message> + <source>Set Control</source> + <translation>Встановити елемент керування</translation> + </message> + <message> + <source>Reset Control</source> + <translation>Скинути елемент керування</translation> + </message> + <message> + <source>Licensed Control</source> + <translation>Ліцензований елемент керування</translation> + </message> + <message> + <source>The control requires a design-time license</source> + <translation>Цей елемент управління вимагає ліцензії для розробки</translation> + </message> +</context> +<context> + <name>QCoreApplication</name> + <message> + <source>Exception at line %1: %2</source> + <translation>Виключна ситуація в рядку %1: %2</translation> + </message> + <message> + <source>Unknown error</source> + <translation>Невідома помилка</translation> + </message> + <message> + <source>An error occurred while running the script for %1: %2 +Script: %3</source> + <translation>Під час виконання скрипту для %1 сталася помилка: %2 +Скрипт: %3</translation> + </message> + <message> + <source>%1 is not a promoted class.</source> + <translation>%1 не є перетвореним класом.</translation> + </message> + <message> + <source>The base class %1 is invalid.</source> + <translation>Неправильний базовий клас %1.</translation> + </message> + <message> + <source>The class %1 already exists.</source> + <translation>Клас %1 вже існує.</translation> + </message> + <message> + <source>Promoted Widgets</source> + <translation>Перетворені віджети</translation> + </message> + <message> + <source>The class %1 cannot be removed</source> + <translation>Неможливо видалити клас %1</translation> + </message> + <message> + <source>The class %1 cannot be removed because it is still referenced.</source> + <translation>Неможливо видалити клас %1, оскільки на нього досі є посилання.</translation> + </message> + <message> + <source>The class %1 cannot be renamed</source> + <translation>Неможливо перейменувати клас %1</translation> + </message> + <message> + <source>The class %1 cannot be renamed to an empty name.</source> + <translation>Неможливо дати класу %1 пусте ім'я.</translation> + </message> + <message> + <source>There is already a class named %1.</source> + <translation>Вже існує клас з іменем %1.</translation> + </message> + <message> + <source>Cannot set an empty include file.</source> + <translation>Неможливо встановити порожнє ім'я файлу заголовків.</translation> + </message> +</context> +<context> + <name>QDesigner</name> + <message> + <source>%1 - warning</source> + <translation>%1 - попередження</translation> + </message> + <message> + <source>Qt Designer</source> + <translation>Qt Designer</translation> + </message> + <message> + <source>This application cannot be used for the Console edition of Qt</source> + <translation>Ця програма не може бути використана консольною редакцією Qt</translation> + </message> +</context> +<context> + <name>QDesignerActions</name> + <message> + <source>Saved %1.</source> + <translation>Збережено %1.</translation> + </message> + <message> + <source>%1 already exists. +Do you want to replace it?</source> + <translation>%1 вже існує. +Бажаєте замінити його?</translation> + </message> + <message> + <source>Edit Widgets</source> + <translation>Редагувати віджети</translation> + </message> + <message> + <source>&New...</source> + <translation>&Новий...</translation> + </message> + <message> + <source>&Open...</source> + <translation>&Відкрити...</translation> + </message> + <message> + <source>&Save</source> + <translation>&Зберегти</translation> + </message> + <message> + <source>Save &As...</source> + <translation>Зберегти &як...</translation> + </message> + <message> + <source>Save A&ll</source> + <translation>Зберегти &усе</translation> + </message> + <message> + <source>Save As &Template...</source> + <translation>Зберегти як &шаблон...</translation> + </message> + <message> + <source>&Close</source> + <translation>З&акрити</translation> + </message> + <message> + <source>Save &Image...</source> + <translation>Зберегти з&ображення...</translation> + </message> + <message> + <source>&Print...</source> + <translation>&Друк...</translation> + </message> + <message> + <source>&Quit</source> + <translation>Ви&йти</translation> + </message> + <message> + <source>View &Code...</source> + <translation>Переглянути &код...</translation> + </message> + <message> + <source>&Minimize</source> + <translation>&Мінімізувати</translation> + </message> + <message> + <source>Bring All to Front</source> + <translation>Усе на передній план</translation> + </message> + <message> + <source>Preferences...</source> + <translation>Налаштування...</translation> + </message> + <message> + <source>Additional Fonts...</source> + <translation>Додаткові шрифти...</translation> + </message> + <message> + <source>ALT+CTRL+S</source> + <translation></translation> + </message> + <message> + <source>CTRL+SHIFT+S</source> + <translation></translation> + </message> + <message> + <source>CTRL+R</source> + <translation></translation> + </message> + <message> + <source>CTRL+M</source> + <translation></translation> + </message> + <message> + <source>Qt Designer &Help</source> + <translation>&Довідка по Qt Designer</translation> + </message> + <message> + <source>Current Widget Help</source> + <translation>Довідка по поточному віджету</translation> + </message> + <message> + <source>What's New in Qt Designer?</source> + <translation>Що нового в Qt Designer?</translation> + </message> + <message> + <source>About Plugins</source> + <translation>Про додатки</translation> + </message> + <message> + <source>About Qt Designer</source> + <translation>Про Qt Designer</translation> + </message> + <message> + <source>About Qt</source> + <translation>Про Qt</translation> + </message> + <message> + <source>Clear &Menu</source> + <translation>Очистити &меню</translation> + </message> + <message> + <source>&Recent Forms</source> + <translation>Нещодавні &форми</translation> + </message> + <message> + <source>Open Form</source> + <translation>Відкрити форму</translation> + </message> + <message> + <source>Designer UI files (*.%1);;All Files (*)</source> + <translation>UI файли Designer (*.%1);;Всі файли (*)</translation> + </message> + <message> + <source>Save Form As</source> + <translation>Зберегти форму як</translation> + </message> + <message> + <source>Designer</source> + <translation>Designer</translation> + </message> + <message> + <source>Feature not implemented yet!</source> + <translation>Можливість ще не реалізована!</translation> + </message> + <message> + <source>Code generation failed</source> + <translation>Збій генерації коду</translation> + </message> + <message> + <source>Read error</source> + <translation>Помилка читання</translation> + </message> + <message> + <source>%1 +Do you want to update the file location or generate a new form?</source> + <translation>%1 +Бажаєте оновити розташування файлу чи згенерувати нову форму?</translation> + </message> + <message> + <source>&Update</source> + <translation>&Оновити</translation> + </message> + <message> + <source>&New Form</source> + <translation>&Нова форма</translation> + </message> + <message> + <source>Save Form?</source> + <translation>Зберегти форму?</translation> + </message> + <message> + <source>Could not open file</source> + <translation>Неможливо відкрити файл</translation> + </message> + <message> + <source>The file %1 could not be opened. +Reason: %2 +Would you like to retry or select a different file?</source> + <translation>Неможливо відкрити файл %1. +Причина: %2 +Чи не хотіли б ви спробувати ще раз чи вибрати інший файл?</translation> + </message> + <message> + <source>Select New File</source> + <translation>Оберіть новий файл</translation> + </message> + <message> + <source>Could not write file</source> + <translation>Неможливо записати файл</translation> + </message> + <message> + <source>It was not possible to write the entire file %1 to disk. +Reason:%2 +Would you like to retry?</source> + <translation>Не вдалось записати цілий файл %1 на диск. +Причина:%2 +Бажаєте спробувати ще раз?</translation> + </message> + <message> + <source>Assistant</source> + <translation>Assistant</translation> + </message> + <message> + <source>&Close Preview</source> + <translation>З&акрити попередній перегляд</translation> + </message> + <message> + <source>The backup file %1 could not be written.</source> + <translation>Неможливо записати файл резервної копії %1.</translation> + </message> + <message> + <source>The backup directory %1 could not be created.</source> + <translation>Неможливо створити теку резервних копій %1.</translation> + </message> + <message> + <source>The temporary backup directory %1 could not be created.</source> + <translation>Неможливо створити тимчасову теку резервних копій %1.</translation> + </message> + <message> + <source>Preview failed</source> + <translation>Збій попереднього перегляду</translation> + </message> + <message> + <source>Image files (*.%1)</source> + <translation>Файли зображень (*.%1)</translation> + </message> + <message> + <source>Save Image</source> + <translation>Зберегти зображення</translation> + </message> + <message> + <source>Saved image %1.</source> + <translation>Збережено зображення %1.</translation> + </message> + <message> + <source>The file %1 could not be written.</source> + <translation>Неможливо записати файл %1.</translation> + </message> + <message> + <source>Please close all forms to enable the loading of additional fonts.</source> + <translation>Будь-ласка, закрийте усі форми, щоб дозволити завантаження додаткових шрифтів.</translation> + </message> + <message> + <source>Printed %1.</source> + <translation>Надруковано %1.</translation> + </message> +</context> +<context> + <name>QDesignerAppearanceOptionsPage</name> + <message> + <source>Appearance</source> + <extracomment>Tab in preferences dialog</extracomment> + <translation></translation> + </message> +</context> +<context> + <name>QDesignerAppearanceOptionsWidget</name> + <message> + <source>Docked Window</source> + <translation>Прикріплені вікна</translation> + </message> + <message> + <source>Multiple Top-Level Windows</source> + <translation>Декілька вікон верхнього рівня</translation> + </message> + <message> + <source>Toolwindow Font</source> + <translation>Шрифт інструментальних вікон</translation> + </message> +</context> +<context> + <name>QDesignerAxWidget</name> + <message> + <source>Reset control</source> + <translation>Скинути елемент керування</translation> + </message> + <message> + <source>Set control</source> + <translation>Встановити елемент керування</translation> + </message> + <message> + <source>Control loaded</source> + <translation>Елемент керування завантажено</translation> + </message> + <message> + <source>A COM exception occurred when executing a meta call of type %1, index %2 of "%3".</source> + <translation>Виникла виключна ситуація COM під час здійснення мета-виклику типу %1, індекс %2 з "%3".</translation> + </message> +</context> +<context> + <name>QDesignerFormBuilder</name> + <message> + <source>Script errors occurred:</source> + <translation>Трапились помилки скрипту:</translation> + </message> + <message> + <source>The preview failed to build.</source> + <translation>Збій побудови попереднього перегляду.</translation> + </message> + <message> + <source>Designer</source> + <translation>Designer</translation> + </message> +</context> +<context> + <name>QDesignerFormWindow</name> + <message> + <source>%1 - %2[*]</source> + <translation>%1 - %2[*]</translation> + </message> + <message> + <source>Save Form?</source> + <translation>Зберегти форму?</translation> + </message> + <message> + <source>Do you want to save the changes to this document before closing?</source> + <translation>Бажаєте зберегти зміни до цього документи перед тим як закрити?</translation> + </message> + <message> + <source>If you don't save, your changes will be lost.</source> + <translation>Якщо ви не збережете, ваші зміни будуть втрачені.</translation> + </message> +</context> +<context> + <name>QDesignerMenu</name> + <message> + <source>Type Here</source> + <translation>Набирайте тут</translation> + </message> + <message> + <source>Add Separator</source> + <translation>Додати розділювач</translation> + </message> + <message> + <source>Insert separator</source> + <translation>Вставити розділювач</translation> + </message> + <message> + <source>Remove separator</source> + <translation>Видалити розділювач</translation> + </message> + <message> + <source>Remove action '%1'</source> + <translation>Видалити дію '%1'</translation> + </message> + <message> + <source>Add separator</source> + <translation>Додати розділювач</translation> + </message> + <message> + <source>Insert action</source> + <translation>Вставити дію</translation> + </message> +</context> +<context> + <name>QDesignerMenuBar</name> + <message> + <source>Type Here</source> + <translation>Набирайте тут</translation> + </message> + <message> + <source>Remove Menu '%1'</source> + <translation>Видалити меню '%1'</translation> + </message> + <message> + <source>Remove Menu Bar</source> + <translation>Видалити панель меню</translation> + </message> + <message> + <source>Menu</source> + <translation>Меню</translation> + </message> +</context> +<context> + <name>QDesignerPluginManager</name> + <message> + <source>An XML error was encountered when parsing the XML of the custom widget %1: %2</source> + <translation>Під час розбору XML користувацького віджета %1 сталась помилка XML: %2</translation> + </message> + <message> + <source>A required attribute ('%1') is missing.</source> + <translation>Обов'язковий атрибут ('%1') відсутній.</translation> + </message> + <message> + <source>An invalid property specification ('%1') was encountered. Supported types: %2</source> + <translation>Знайдено неправильну специфікацію властивості ('%1'). Підтримувані типи: %2</translation> + </message> + <message> + <source>'%1' is not a valid string property specification.</source> + <translation>'%1' не є правильною специфікацією рядкової властивості.</translation> + </message> + <message> + <source>The XML of the custom widget %1 does not contain any of the elements <widget> or <ui>.</source> + <translation>XML користувацького віджета %1 не містить жодного з елементів <widget> або <ui>.</translation> + </message> + <message> + <source>The class attribute for the class %1 is missing.</source> + <translation>Відсутній атрибут для класу %1.</translation> + </message> + <message> + <source>The class attribute for the class %1 does not match the class name %2.</source> + <translation>Атрибут "клас" для класу %1 не співпадає з іменем класу %2.</translation> + </message> +</context> +<context> + <name>QDesignerPropertySheet</name> + <message> + <source>Dynamic Properties</source> + <translation>Динамічні властивості</translation> + </message> +</context> +<context> + <name>QDesignerResource</name> + <message> + <source>The layout type '%1' is not supported, defaulting to grid.</source> + <translation>Тип розташування '%1' не підтримується, використовуємо сітку.</translation> + </message> + <message> + <source>The container extension of the widget '%1' (%2) returned a widget not managed by Designer '%3' (%4) when queried for page #%5. +Container pages should only be added by specifying them in XML returned by the domXml() method of the custom widget.</source> + <translation>Контейнерне розширення '%1' (%2) повернуло віджет, який не може бути керований за допомогою Qt Designer '%3' (%4) під час запиту сторінки №%5. +Сторінки контейнера повинні додаватись лише за допомогою вказування їх в XML, що повертається методом domXml() віджета користувача.</translation> + </message> + <message> + <source>Unexpected element <%1></source> + <extracomment>Parsing clipboard contents</extracomment> + <translation>Неочікуваний елемент <%1></translation> + </message> + <message> + <source>Error while pasting clipboard contents at line %1, column %2: %3</source> + <extracomment>Parsing clipboard contents</extracomment> + <translation>Помилка під час вставки змісту буферу обміну в рядку %1, позиція %2: %3</translation> + </message> + <message> + <source>Error while pasting clipboard contents: The root element <ui> is missing.</source> + <extracomment>Parsing clipboard contents</extracomment> + <translation>Помилка під час вставки змісту буферу обміну. Кореневий елемент <ui> відсутній.</translation> + </message> +</context> +<context> + <name>QDesignerSharedSettings</name> + <message> + <source>The template path %1 could not be created.</source> + <translation>Неможливо створити шлях до шаблону %1.</translation> + </message> + <message> + <source>An error has been encountered while parsing device profile XML: %1</source> + <translation>Трапилась помилка під час розбору XML профілю пристрою: %1</translation> + </message> +</context> +<context> + <name>QDesignerToolWindow</name> + <message> + <source>Property Editor</source> + <translation>Редактор властивостей</translation> + </message> + <message> + <source>Action Editor</source> + <translation>Редактор дій</translation> + </message> + <message> + <source>Object Inspector</source> + <translation>Інспектор об'єктів</translation> + </message> + <message> + <source>Resource Browser</source> + <translation>Оглядач ресурсів</translation> + </message> + <message> + <source>Signal/Slot Editor</source> + <translation>Редактор сигналів/слотів</translation> + </message> + <message> + <source>Widget Box</source> + <translation>Панель віджетів</translation> + </message> +</context> +<context> + <name>QDesignerWorkbench</name> + <message> + <source>&File</source> + <translation>&Файл</translation> + </message> + <message> + <source>Edit</source> + <translation>Правка</translation> + </message> + <message> + <source>F&orm</source> + <translation>Ф&орма</translation> + </message> + <message> + <source>Preview in</source> + <translation>Попередній перегляд в</translation> + </message> + <message> + <source>&View</source> + <translation>&Вид</translation> + </message> + <message> + <source>&Settings</source> + <translation>&Налаштування</translation> + </message> + <message> + <source>&Window</source> + <translation>В&ікно</translation> + </message> + <message> + <source>&Help</source> + <translation>&Довідка</translation> + </message> + <message> + <source>Toolbars</source> + <translation>Панелі інструментів</translation> + </message> + <message> + <source>Widget Box</source> + <translation>Панель віджетів</translation> + </message> + <message> + <source>Save Forms?</source> + <translation>Зберегти форми?</translation> + </message> + <message numerus="yes"> + <source>There are %n forms with unsaved changes. Do you want to review these changes before quitting?</source> + <translation> + <numerusform>Є %n форма з незбереженими змінами. Бажаєте переглянути ці зміни перед виходом?</numerusform> + <numerusform>Є %n форми з незбереженими змінами. Бажаєте переглянути ці зміни перед виходом?</numerusform> + <numerusform>Є %n форм з незбереженими змінами. Бажаєте переглянути ці зміни перед виходом?</numerusform> + </translation> + </message> + <message> + <source>If you do not review your documents, all your changes will be lost.</source> + <translation>Якщо ви не переглянете ваші документи, усі ваші зміну будуть втрачені.</translation> + </message> + <message> + <source>Discard Changes</source> + <translation>Відхилити зміни</translation> + </message> + <message> + <source>Review Changes</source> + <translation>Переглянути зміни</translation> + </message> + <message> + <source>Backup Information</source> + <translation>Інформація про резервні копії</translation> + </message> + <message> + <source>The last session of Designer was not terminated correctly. Backup files were left behind. Do you want to load them?</source> + <translation>Останній сеанс Qt Designer не був правильно завершений. Залишились резервні копії файлів. Бажаєте їх завантажити?</translation> + </message> + <message> + <source>The file <b>%1</b> could not be opened.</source> + <translation>Неможливо відкрити файл <b>%1</b>.</translation> + </message> + <message> + <source>The file <b>%1</b> is not a valid Designer UI file.</source> + <translation>Файл <b>%1</b> не є правильним файлом UI Qt Designer.</translation> + </message> +</context> +<context> + <name>QFormBuilder</name> + <message> + <source>An empty class name was passed on to %1 (object name: '%2').</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 було передане пусте ім'я класу (ім'я об'єкта: '%2').</translation> + </message> + <message> + <source>QFormBuilder was unable to create a custom widget of the class '%1'; defaulting to base class '%2'.</source> + <translation>QFormBuilder не зміг створити користувацький віджет класу '%1'; було створено базовий клас '%2'.</translation> + </message> + <message> + <source>QFormBuilder was unable to create a widget of the class '%1'.</source> + <translation>QFormBuilder не зміг створити віджет класу '%1'.</translation> + </message> + <message> + <source>The layout type `%1' is not supported.</source> + <translation>Тип розташування '%1' не підтримується.</translation> + </message> + <message> + <source>The set-type property %1 could not be read.</source> + <translation>Неможливо прочитати властивість %1 типу "множина".</translation> + </message> + <message> + <source>The enumeration-type property %1 could not be read.</source> + <translation>Неможливо прочитати властивість %1 типу "перелік".</translation> + </message> + <message> + <source>Reading properties of the type %1 is not supported yet.</source> + <translation>Читання властивостей типу %1 ще не підтримується.</translation> + </message> + <message> + <source>The property %1 could not be written. The type %2 is not supported yet.</source> + <translation>Неможливо записати властивість %1. Тип %2 ще не підтримується.</translation> + </message> + <message> + <source>The enumeration-value '%1' is invalid. The default value '%2' will be used instead.</source> + <translation>Неправильне значення '%1' для переліку. Натомість, буде використано типове значення '%2'.</translation> + </message> + <message> + <source>The flag-value '%1' is invalid. Zero will be used instead.</source> + <translation>Неправильне значення '%1' для прапорців. Натомість, буде використано нуль.</translation> + </message> +</context> +<context> + <name>QStackedWidgetEventFilter</name> + <message> + <source>Previous Page</source> + <translation>Попередня сторінка</translation> + </message> + <message> + <source>Next Page</source> + <translation>Наступна сторінка</translation> + </message> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> + <message> + <source>Before Current Page</source> + <translation>Перед поточною сторінкою</translation> + </message> + <message> + <source>After Current Page</source> + <translation>Після поточною сторінкою</translation> + </message> + <message> + <source>Change Page Order...</source> + <translation>Змінити порядок сторінок...</translation> + </message> + <message> + <source>Change Page Order</source> + <translation>Змінити порядок сторінок</translation> + </message> + <message> + <source>Page %1 of %2</source> + <translation>Сторінка %1 з %2</translation> + </message> + <message> + <source>Insert Page</source> + <translation>Вставити сторінку</translation> + </message> +</context> +<context> + <name>QStackedWidgetPreviewEventFilter</name> + <message> + <source>Go to previous page of %1 '%2' (%3/%4).</source> + <translation>Перейти до попередньої сторінки з %1 '%2' (%3/%4).</translation> + </message> + <message> + <source>Go to next page of %1 '%2' (%3/%4).</source> + <translation>Перейти до наступної сторінки з %1 '%2' (%3/%4).</translation> + </message> +</context> +<context> + <name>QTabWidgetEventFilter</name> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> + <message> + <source>Before Current Page</source> + <translation>Перед поточною сторінкою</translation> + </message> + <message> + <source>After Current Page</source> + <translation>Після поточної сторінки</translation> + </message> + <message> + <source>Page %1 of %2</source> + <translation>Сторінка %1 з %2</translation> + </message> + <message> + <source>Insert Page</source> + <translation>Вставити сторінку</translation> + </message> +</context> +<context> + <name>QToolBoxHelper</name> + <message> + <source>Delete Page</source> + <translation>Видалити сторінку</translation> + </message> + <message> + <source>Before Current Page</source> + <translation>Перед поточною сторінкою</translation> + </message> + <message> + <source>After Current Page</source> + <translation>Після поточної сторінки</translation> + </message> + <message> + <source>Change Page Order...</source> + <translation>Змінити порядок сторінок...</translation> + </message> + <message> + <source>Change Page Order</source> + <translation>Змінити порядок сторінок</translation> + </message> + <message> + <source>Page %1 of %2</source> + <translation>Сторінка %1 з %2</translation> + </message> + <message> + <source>Insert Page</source> + <translation>Вставити сторінку</translation> + </message> +</context> +<context> + <name>QtBoolEdit</name> + <message> + <source>True</source> + <translation>Істинно</translation> + </message> + <message> + <source>False</source> + <translation>Хибно</translation> + </message> +</context> +<context> + <name>QtBoolPropertyManager</name> + <message> + <source>True</source> + <translation>Істинно</translation> + </message> + <message> + <source>False</source> + <translation>Хибно</translation> + </message> +</context> +<context> + <name>QtCharEdit</name> + <message> + <source>Clear Char</source> + <translation>Стерти символ</translation> + </message> +</context> +<context> + <name>QtColorEditWidget</name> + <message> + <source>...</source> + <translation>...</translation> + </message> +</context> +<context> + <name>QtColorPropertyManager</name> + <message> + <source>Red</source> + <translation>Червоний</translation> + </message> + <message> + <source>Green</source> + <translation>Зелений</translation> + </message> + <message> + <source>Blue</source> + <translation>Блакитний</translation> + </message> + <message> + <source>Alpha</source> + <translation>Альфа</translation> + </message> +</context> +<context> + <name>QtCursorDatabase</name> + <message> + <source>Arrow</source> + <translation>Стрілка</translation> + </message> + <message> + <source>Up Arrow</source> + <translation>Стрілка вгору</translation> + </message> + <message> + <source>Cross</source> + <translation>Хрест</translation> + </message> + <message> + <source>Wait</source> + <translation>Очікування</translation> + </message> + <message> + <source>IBeam</source> + <translation>Текстовий</translation> + </message> + <message> + <source>Size Vertical</source> + <translation>Вертикальний розмір</translation> + </message> + <message> + <source>Size Horizontal</source> + <translation>Горизонтальний розмір</translation> + </message> + <message> + <source>Size Backslash</source> + <translation>Зворотній слеш</translation> + </message> + <message> + <source>Size Slash</source> + <translation>Слеш</translation> + </message> + <message> + <source>Size All</source> + <translation>В усі сторони</translation> + </message> + <message> + <source>Blank</source> + <translation>Пусто</translation> + </message> + <message> + <source>Split Vertical</source> + <translation>Розділити вертикально</translation> + </message> + <message> + <source>Split Horizontal</source> + <translation>Розділити вертикально</translation> + </message> + <message> + <source>Pointing Hand</source> + <translation>Вказівний перст</translation> + </message> + <message> + <source>Forbidden</source> + <translation>Заборонено</translation> + </message> + <message> + <source>Open Hand</source> + <translation>Відкрита рука</translation> + </message> + <message> + <source>Closed Hand</source> + <translation>Закрита рука</translation> + </message> + <message> + <source>What's This</source> + <translation>Що це</translation> + </message> + <message> + <source>Busy</source> + <translation>Зайнятий</translation> + </message> +</context> +<context> + <name>QtFontEditWidget</name> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Select Font</source> + <translation>Оберіть шрифт</translation> + </message> +</context> +<context> + <name>QtFontPropertyManager</name> + <message> + <source>Family</source> + <translation>Сім'я</translation> + </message> + <message> + <source>Point Size</source> + <translation>Розмір точки</translation> + </message> + <message> + <source>Bold</source> + <translation>Жирний</translation> + </message> + <message> + <source>Italic</source> + <translation>Курсив</translation> + </message> + <message> + <source>Underline</source> + <translation>Підкреслений</translation> + </message> + <message> + <source>Strikeout</source> + <translation>Перекреслений</translation> + </message> + <message> + <source>Kerning</source> + <translation>Кернінг</translation> + </message> +</context> +<context> + <name>QtGradientDialog</name> + <message> + <source>Edit Gradient</source> + <translation>Редагувати градієнт</translation> + </message> +</context> +<context> + <name>QtGradientEditor</name> + <message> + <source>Form</source> + <translation>Форма</translation> + </message> + <message> + <source>Gradient Editor</source> + <translation>Редактор градієнту</translation> + </message> + <message> + <source>This area shows a preview of the gradient being edited. It also allows you to edit parameters specific to the gradient's type such as start and final point, radius, etc. by drag & drop.</source> + <translation>В цій області відображається попередній перегляд градієнту, що редагується. Вона також дозволяє за допомогою "drag & drop" редагувати специфічні до типу градієнта параметри, такі як: початкова та кінцева точки, радіус та ін.</translation> + </message> + <message> + <source>1</source> + <translation>1</translation> + </message> + <message> + <source>2</source> + <translation>2</translation> + </message> + <message> + <source>3</source> + <translation>3</translation> + </message> + <message> + <source>4</source> + <translation>4</translation> + </message> + <message> + <source>5</source> + <translation>5</translation> + </message> + <message> + <source>Gradient Stops Editor</source> + <translation>Редактор точок градієнту</translation> + </message> + <message> + <source>This area allows you to edit gradient stops. Double click on the existing stop handle to duplicate it. Double click outside of the existing stop handles to create a new stop. Drag & drop the handle to reposition it. Use right mouse button to popup context menu with extra actions.</source> + <translation>Ця область дозволяє вам редагувати точки градієнту. Подвійне клацання на існуючій точці створює її дублікат. Подвійне клацання поза межами існуючої точки створює нову точку. Перетягніть точку мишею, щоб змінити її позицію. Використовуйте праву кнопку миші, щоб отримати контекстне меню з додатковими діями.</translation> + </message> + <message> + <source>Zoom</source> + <translation>Масштаб</translation> + </message> + <message> + <source>Reset Zoom</source> + <translation>Скинути</translation> + </message> + <message> + <source>Position</source> + <translation>Положення</translation> + </message> + <message> + <source>Hue</source> + <translation>Відтінок</translation> + </message> + <message> + <source>H</source> + <translation>H</translation> + </message> + <message> + <source>Saturation</source> + <translation>Насиченість</translation> + </message> + <message> + <source>S</source> + <translation>S</translation> + </message> + <message> + <source>Sat</source> + <translation>Насиченість</translation> + </message> + <message> + <source>Value</source> + <translation>Значення</translation> + </message> + <message> + <source>V</source> + <translation>V</translation> + </message> + <message> + <source>Val</source> + <translation>Значення</translation> + </message> + <message> + <source>Alpha</source> + <translation>Альфа</translation> + </message> + <message> + <source>A</source> + <translation>A</translation> + </message> + <message> + <source>Type</source> + <translation>Тип</translation> + </message> + <message> + <source>Spread</source> + <translation>Заливка</translation> + </message> + <message> + <source>Color</source> + <translation>Колір</translation> + </message> + <message> + <source>Current stop's color</source> + <translation>Колір поточної точки</translation> + </message> + <message> + <source>Show HSV specification</source> + <translation>Показати у вигляді HSV</translation> + </message> + <message> + <source>HSV</source> + <translation>HSV</translation> + </message> + <message> + <source>Show RGB specification</source> + <translation>Показати у вигляді RGB</translation> + </message> + <message> + <source>RGB</source> + <translation>RGB</translation> + </message> + <message> + <source>Current stop's position</source> + <translation>Позиція поточної точки</translation> + </message> + <message> + <source>%</source> + <translation>%</translation> + </message> + <message> + <source>Zoom In</source> + <translation>Збільшити</translation> + </message> + <message> + <source>Zoom Out</source> + <translation>Зменшити</translation> + </message> + <message> + <source>Toggle details extension</source> + <translation>Показати/приховати деталі</translation> + </message> + <message> + <source>></source> + <translation>></translation> + </message> + <message> + <source>Linear Type</source> + <translation>Лінійний тип</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Radial Type</source> + <translation>Радіальний тип</translation> + </message> + <message> + <source>Conical Type</source> + <translation>Конічний тип</translation> + </message> + <message> + <source>Pad Spread</source> + <translation>Рівномірна заливка</translation> + </message> + <message> + <source>Repeat Spread</source> + <translation>Повторна заливка</translation> + </message> + <message> + <source>Reflect Spread</source> + <translation>Дзеркальна заливка</translation> + </message> + <message> + <source>Start X</source> + <translation>X початку</translation> + </message> + <message> + <source>Start Y</source> + <translation>Y початку</translation> + </message> + <message> + <source>Final X</source> + <translation>X кінця</translation> + </message> + <message> + <source>Final Y</source> + <translation>Y кінця</translation> + </message> + <message> + <source>Central X</source> + <translation>X центру</translation> + </message> + <message> + <source>Central Y</source> + <translation>Y центру</translation> + </message> + <message> + <source>Focal X</source> + <translation>X фокусу</translation> + </message> + <message> + <source>Focal Y</source> + <translation>Y фокусу</translation> + </message> + <message> + <source>Radius</source> + <translation>Радіус</translation> + </message> + <message> + <source>Angle</source> + <translation>Кут</translation> + </message> + <message> + <source>Linear</source> + <translation>Лінійний</translation> + </message> + <message> + <source>Radial</source> + <translation>Радіальний</translation> + </message> + <message> + <source>Conical</source> + <translation>Конічний</translation> + </message> + <message> + <source>Pad</source> + <translation>Рівномірна</translation> + </message> + <message> + <source>Repeat</source> + <translation>Повторна</translation> + </message> + <message> + <source>Reflect</source> + <translation>Дзеркальна</translation> + </message> +</context> +<context> + <name>QtGradientStopsWidget</name> + <message> + <source>New Stop</source> + <translation>Нова точка</translation> + </message> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> + <message> + <source>Flip All</source> + <translation>Відобразити дзеркально</translation> + </message> + <message> + <source>Select All</source> + <translation>Виділити все</translation> + </message> + <message> + <source>Zoom In</source> + <translation>Збільшити</translation> + </message> + <message> + <source>Zoom Out</source> + <translation>Зменшити</translation> + </message> + <message> + <source>Reset Zoom</source> + <translation>Скинути</translation> + </message> +</context> +<context> + <name>QtGradientView</name> + <message> + <source>Gradient View</source> + <translation>Перегляд градієнту</translation> + </message> + <message> + <source>New...</source> + <translation>Новий...</translation> + </message> + <message> + <source>Edit...</source> + <translation>Редагувати...</translation> + </message> + <message> + <source>Rename</source> + <translation>Перейменувати</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>Grad</source> + <translation>Градієнт</translation> + </message> + <message> + <source>Remove Gradient</source> + <translation>Видалити градієнт</translation> + </message> + <message> + <source>Are you sure you want to remove the selected gradient?</source> + <translation>Ви впевнені, що бажаєте видалити виділений градієнт?</translation> + </message> +</context> +<context> + <name>QtGradientViewDialog</name> + <message> + <source>Select Gradient</source> + <translation>Обрати градієнт</translation> + </message> +</context> +<context> + <name>QtKeySequenceEdit</name> + <message> + <source>Clear Shortcut</source> + <translation>Видалити поєднання клавіш</translation> + </message> +</context> +<context> + <name>QtLocalePropertyManager</name> + <message> + <source>%1, %2</source> + <translation>%1, %2</translation> + </message> + <message> + <source>Language</source> + <translation>Мова</translation> + </message> + <message> + <source>Country</source> + <translation>Країна</translation> + </message> +</context> +<context> + <name>QtPointFPropertyManager</name> + <message> + <source>(%1, %2)</source> + <translation>(%1, %2)</translation> + </message> + <message> + <source>X</source> + <translation>X</translation> + </message> + <message> + <source>Y</source> + <translation>Y</translation> + </message> +</context> +<context> + <name>QtPointPropertyManager</name> + <message> + <source>(%1, %2)</source> + <translation>(%1, %2)</translation> + </message> + <message> + <source>X</source> + <translation>X</translation> + </message> + <message> + <source>Y</source> + <translation>Y</translation> + </message> +</context> +<context> + <name>QtPropertyBrowserUtils</name> + <message> + <source>[%1, %2, %3] (%4)</source> + <translation>[%1, %2, %3] (%4)</translation> + </message> + <message> + <source>[%1, %2]</source> + <translation>[%1, %2]</translation> + </message> +</context> +<context> + <name>QtRectFPropertyManager</name> + <message> + <source>[(%1, %2), %3 x %4]</source> + <translation>[(%1, %2), %3 x %4]</translation> + </message> + <message> + <source>X</source> + <translation>X</translation> + </message> + <message> + <source>Y</source> + <translation>Y</translation> + </message> + <message> + <source>Width</source> + <translation>Ширина</translation> + </message> + <message> + <source>Height</source> + <translation>Висота</translation> + </message> +</context> +<context> + <name>QtRectPropertyManager</name> + <message> + <source>[(%1, %2), %3 x %4]</source> + <translation>[(%1, %2), %3 x %4]</translation> + </message> + <message> + <source>X</source> + <translation>X</translation> + </message> + <message> + <source>Y</source> + <translation>Y</translation> + </message> + <message> + <source>Width</source> + <translation>Ширина</translation> + </message> + <message> + <source>Height</source> + <translation>Висота</translation> + </message> +</context> +<context> + <name>QtResourceEditorDialog</name> + <message> + <source>Dialog</source> + <translation>Діалог</translation> + </message> + <message> + <source>New File</source> + <translation>Новий файл</translation> + </message> + <message> + <source>N</source> + <translation>Н</translation> + </message> + <message> + <source>Remove File</source> + <translation>Видалити файл</translation> + </message> + <message> + <source>R</source> + <translation>В</translation> + </message> + <message> + <source>I</source> + <translation>Ф</translation> + </message> + <message> + <source>New Resource</source> + <translation>Новий ресурс</translation> + </message> + <message> + <source>A</source> + <translation>Д</translation> + </message> + <message> + <source>Remove Resource or File</source> + <translation>Видалити ресурс або файл</translation> + </message> + <message> + <source>%1 already exists. +Do you want to replace it?</source> + <translation>%1 вже існує. +Бажаєте замінити його?</translation> + </message> + <message> + <source>The file does not appear to be a resource file; element '%1' was found where '%2' was expected.</source> + <translation>Не схоже, що файл є файлом ресурсів, елемент '%1' було знайдено, замість '%2'.</translation> + </message> + <message> + <source>%1 [read-only]</source> + <translation>%1 [лише для читання]</translation> + </message> + <message> + <source>%1 [missing]</source> + <translation>%1 [відсутній]</translation> + </message> + <message> + <source><no prefix></source> + <translation><без префіксу></translation> + </message> + <message> + <source>New Resource File</source> + <translation>Новий файл ресурсів</translation> + </message> + <message> + <source>Resource files (*.qrc)</source> + <translation>Файли ресурсів (*.qrc)</translation> + </message> + <message> + <source>Import Resource File</source> + <translation>Імпортувати файл ресурсів</translation> + </message> + <message> + <source>newPrefix</source> + <translation></translation> + </message> + <message> + <source><p><b>Warning:</b> The file</p><p>%1</p><p>is outside of the current resource file's parent directory.</p></source> + <translation><p><b>Попередження:</b> Файл</p><p>%1</p><p>знаходиться поза межами батьківської теки поточного файлу ресурсів.</p></translation> + </message> + <message> + <source><p>To resolve the issue, press:</p><table><tr><th align="left">Copy</th><td>to copy the file to the resource file's parent directory.</td></tr><tr><th align="left">Copy As...</th><td>to copy the file into a subdirectory of the resource file's parent directory.</td></tr><tr><th align="left">Keep</th><td>to use its current location.</td></tr></table></source> + <translation><p>Щоб вирішити цю проблему, натисніть:</p><table><tr><th align="left">Копіювати</th><td>, щоб скопіювати файл до батьківської теки файлу ресурсів.</td></tr><tr><th align="left">Копіювати як...</th><td>, щоб скопіювати файл в підтеку батьківської теки файлу ресурсів.</td></tr><tr><th align="left">Залишити</th><td>, щоб використовувати поточне розміщення.</td></tr></table></translation> + </message> + <message> + <source>Add Files</source> + <translation>Додати файли</translation> + </message> + <message> + <source>Incorrect Path</source> + <translation>Неправильний шлях</translation> + </message> + <message> + <source>Copy</source> + <translation>Копіювати</translation> + </message> + <message> + <source>Copy As...</source> + <translation>Копіювати як...</translation> + </message> + <message> + <source>Keep</source> + <translation>Залишити</translation> + </message> + <message> + <source>Skip</source> + <translation>Пропустити</translation> + </message> + <message> + <source>Clone Prefix</source> + <translation>Префікс клонування</translation> + </message> + <message> + <source>Enter the suffix which you want to add to the names of the cloned files. +This could for example be a language extension like "_de".</source> + <translation>Введіть суфікс, який ви хочете додавати до імен клонованих файлів. +Це може бути, наприклад, мовне розширення, як "_uk".</translation> + </message> + <message> + <source>Copy As</source> + <translation>Копіювати як</translation> + </message> + <message> + <source><p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p></source> + <translation><p>Обраний файл</p><p>%1</p><p>знаходиться поза межами батьківської теки поточного файлу ресурсів.</p><p>%2</p>Будь-ласка, оберіть інший шлях всередині цієї теки.<p><p></translation> + </message> + <message> + <source>Could not overwrite %1.</source> + <translation>Неможливо перезаписати %1.</translation> + </message> + <message> + <source>Could not copy +%1 +to +%2</source> + <translation>Неможливо копіювати +%1 +до +%2</translation> + </message> + <message> + <source>A parse error occurred at line %1, column %2 of %3: +%4</source> + <translation>Сталась помилка розбору в рядку %1, позиція %2 з %3 +%4</translation> + </message> + <message> + <source>Save Resource File</source> + <translation>Зберегти файл ресурсів</translation> + </message> + <message> + <source>Could not write %1: %2</source> + <translation>Неможливо записати %1: %2</translation> + </message> + <message> + <source>Edit Resources</source> + <translation>Редагування ресурсів</translation> + </message> + <message> + <source>New...</source> + <translation>Новий...</translation> + </message> + <message> + <source>Open...</source> + <translation>Відкрити...</translation> + </message> + <message> + <source>Open Resource File</source> + <translation>Відкрити файл ресурсів</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>Move Up</source> + <translation>Пересунути вгору</translation> + </message> + <message> + <source>Move Down</source> + <translation>Пересунути вниз</translation> + </message> + <message> + <source>Add Prefix</source> + <translation>Додати префікс</translation> + </message> + <message> + <source>Add Files...</source> + <translation>Додати файли...</translation> + </message> + <message> + <source>Change Prefix</source> + <translation>Змінити префікс</translation> + </message> + <message> + <source>Change Language</source> + <translation>Змінити мову</translation> + </message> + <message> + <source>Change Alias</source> + <translation>Додати псевдонім</translation> + </message> + <message> + <source>Clone Prefix...</source> + <translation>Префікс клонування...</translation> + </message> + <message> + <source>Prefix / Path</source> + <translation>Префікс / Шлях</translation> + </message> + <message> + <source>Language / Alias</source> + <translation>Мова / Псевдонім</translation> + </message> + <message> + <source><html><p><b>Warning:</b> There have been problems while reloading the resources:</p><pre>%1</pre></html></source> + <translation><html><p><b>Попередження:</b> Під час перезавантаження ресурсів виникли проблеми:</p><pre>%1</pre></html></translation> + </message> + <message> + <source>Resource Warning</source> + <translation>Попередження про ресурси</translation> + </message> +</context> +<context> + <name>QtResourceView</name> + <message> + <source>Size: %1 x %2 +%3</source> + <translation>Розмір: %1 x %2 +%3</translation> + </message> + <message> + <source>Edit Resources...</source> + <translation>Редагувати ресурси...</translation> + </message> + <message> + <source>Reload</source> + <translation>Перезавантажити</translation> + </message> + <message> + <source>Copy Path</source> + <translation>Копіювати шлях</translation> + </message> +</context> +<context> + <name>QtResourceViewDialog</name> + <message> + <source>Select Resource</source> + <translation>Оберіть ресурс</translation> + </message> +</context> +<context> + <name>QtSizeFPropertyManager</name> + <message> + <source>%1 x %2</source> + <translation>%1 x %2</translation> + </message> + <message> + <source>Width</source> + <translation>Ширина</translation> + </message> + <message> + <source>Height</source> + <translation>Висота</translation> + </message> +</context> +<context> + <name>QtSizePolicyPropertyManager</name> + <message> + <source><Invalid></source> + <translation><Неправильний></translation> + </message> + <message> + <source>[%1, %2, %3, %4]</source> + <translation>[%1, %2, %3, %4]</translation> + </message> + <message> + <source>Horizontal Policy</source> + <translation>Горизонтальна політика</translation> + </message> + <message> + <source>Vertical Policy</source> + <translation>Вертикальна політика</translation> + </message> + <message> + <source>Horizontal Stretch</source> + <translation>Горизонтальне розтягування</translation> + </message> + <message> + <source>Vertical Stretch</source> + <translation>Вертикальне розтягування</translation> + </message> +</context> +<context> + <name>QtSizePropertyManager</name> + <message> + <source>%1 x %2</source> + <translation>%1 x %2</translation> + </message> + <message> + <source>Width</source> + <translation>Ширина</translation> + </message> + <message> + <source>Height</source> + <translation>Висота</translation> + </message> +</context> +<context> + <name>QtToolBarDialog</name> + <message> + <source>Customize Toolbars</source> + <translation>Налаштувати панелі інструментів</translation> + </message> + <message> + <source>1</source> + <translation>1</translation> + </message> + <message> + <source>Actions</source> + <translation>Дії</translation> + </message> + <message> + <source>Toolbars</source> + <translation>Панелі інструментів</translation> + </message> + <message> + <source>Add new toolbar</source> + <translation>Додати нову панель інструментів</translation> + </message> + <message> + <source>New</source> + <translation>Нова</translation> + </message> + <message> + <source>Remove selected toolbar</source> + <translation>Видалити виділену панель інструментів</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>Rename toolbar</source> + <translation>Перейменувати панель інструментів</translation> + </message> + <message> + <source>Rename</source> + <translation>Перейменувати</translation> + </message> + <message> + <source>Move action up</source> + <translation>Пересунути дію вгору</translation> + </message> + <message> + <source>Up</source> + <translation>Вгору</translation> + </message> + <message> + <source>Remove action from toolbar</source> + <translation>Видалити дію з панелі інструментів</translation> + </message> + <message> + <source><-</source> + <translation><-</translation> + </message> + <message> + <source>Add action to toolbar</source> + <translation>Додати дію до панелі інструментів</translation> + </message> + <message> + <source>-></source> + <translation>-></translation> + </message> + <message> + <source>Move action down</source> + <translation>Пересунути дію вниз</translation> + </message> + <message> + <source>Down</source> + <translation>Вниз</translation> + </message> + <message> + <source>Current Toolbar Actions</source> + <translation>Поточні дії панелі інструментів</translation> + </message> + <message> + <source>Custom Toolbar</source> + <translation>Користувацька панель інструментів</translation> + </message> + <message> + <source>< S E P A R A T O R ></source> + <translation>< Р О З Д І Л Ю В А Ч ></translation> + </message> +</context> +<context> + <name>QtTreePropertyBrowser</name> + <message> + <source>Property</source> + <translation>Властивість</translation> + </message> + <message> + <source>Value</source> + <translation>Значення</translation> + </message> +</context> +<context> + <name>SaveFormAsTemplate</name> + <message> + <source>Save Form As Template</source> + <translation>Зберегти форму як шаблон</translation> + </message> + <message> + <source>&Name:</source> + <translation>&Назва:</translation> + </message> + <message> + <source>&Category:</source> + <translation>&Категорія:</translation> + </message> + <message> + <source>Add path...</source> + <translation>Додати шлях...</translation> + </message> + <message> + <source>Template Exists</source> + <translation>Шаблон існує</translation> + </message> + <message> + <source>A template with the name %1 already exists. +Do you want overwrite the template?</source> + <translation>Шаблон з іменем %1 вже існує. +Бажаєте перезаписати його?</translation> + </message> + <message> + <source>Overwrite Template</source> + <translation>Перезаписати шаблон</translation> + </message> + <message> + <source>Open Error</source> + <translation>Помилка відкриття</translation> + </message> + <message> + <source>There was an error opening template %1 for writing. Reason: %2</source> + <translation>Під час відкриття шаблону %1 для запису сталася помилка. Причина: %2</translation> + </message> + <message> + <source>Write Error</source> + <translation>Помилка запису</translation> + </message> + <message> + <source>There was an error writing the template %1 to disk. Reason: %2</source> + <translation>Під час запису шаблону %1 на диск сталася помилка. Причина: %2</translation> + </message> + <message> + <source>Pick a directory to save templates in</source> + <translation>Виберіть теку для збереження шаблонів</translation> + </message> +</context> +<context> + <name>ScriptErrorDialog</name> + <message> + <source>An error occurred while running the scripts for "%1": +</source> + <translation>Під час виконання скриптів для "%1" сталася помилка: +</translation> + </message> +</context> +<context> + <name>SelectSignalDialog</name> + <message> + <source>Go to slot</source> + <translation>Перейти до слота</translation> + </message> + <message> + <source>Select signal</source> + <translation>Оберіть сигнал</translation> + </message> + <message> + <source>signal</source> + <translation>сигнал</translation> + </message> + <message> + <source>class</source> + <translation>клас</translation> + </message> +</context> +<context> + <name>SignalSlotConnection</name> + <message> + <source>SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4)</source> + <translation>НАДСИЛАЧ(%1), СИГНАЛ(%2), ОТРИМУВАЧ(%3), СЛОТ(%4)</translation> + </message> +</context> +<context> + <name>SignalSlotDialogClass</name> + <message> + <source>Signals and slots</source> + <translation>Сигнали та слоти</translation> + </message> + <message> + <source>Slots</source> + <translation>Слоти</translation> + </message> + <message> + <source>Add</source> + <translation>Додати</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> + <message> + <source>Signals</source> + <translation>Сигнали</translation> + </message> +</context> +<context> + <name>Spacer</name> + <message> + <source>Horizontal Spacer '%1', %2 x %3</source> + <translation>Горизонтальний роздільник '%1', %2 x %3</translation> + </message> + <message> + <source>Vertical Spacer '%1', %2 x %3</source> + <translation>Вертикальний роздільник '%1', %2 x %3</translation> + </message> +</context> +<context> + <name>TemplateOptionsPage</name> + <message> + <source>Template Paths</source> + <extracomment>Tab in preferences dialog</extracomment> + <translation>Шляхи до шаблонів</translation> + </message> +</context> +<context> + <name>ToolBarManager</name> + <message> + <source>Configure Toolbars...</source> + <translation>Налаштувати панелі інструментів...</translation> + </message> + <message> + <source>Window</source> + <translation>Вікно</translation> + </message> + <message> + <source>Help</source> + <translation>Довідка</translation> + </message> + <message> + <source>Style</source> + <translation>Стиль</translation> + </message> + <message> + <source>Dock views</source> + <translation>Прикріплюванні панелі</translation> + </message> + <message> + <source>File</source> + <translation>Файл</translation> + </message> + <message> + <source>Edit</source> + <translation>Правка</translation> + </message> + <message> + <source>Tools</source> + <translation>Інструменти</translation> + </message> + <message> + <source>Form</source> + <translation>Форма</translation> + </message> + <message> + <source>Toolbars</source> + <translation>Панелі інструментів</translation> + </message> +</context> +<context> + <name>VersionDialog</name> + <message> + <source><h3>%1</h3><br/><br/>Version %2</source> + <translation><h3>%1</h3><br/><br/>Версія %2</translation> + </message> + <message> + <source>Qt Designer</source> + <translation>Qt Designer</translation> + </message> + <message> + <source><br/>Qt Designer is a graphical user interface designer for Qt applications.<br/></source> + <translation><br/>Qt Designer - це дизайнер графічного інтерфейсу користувача для програм Qt.<br/></translation> + </message> + <message> + <source>%1<br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> + <translation>%1<br/>Copyright (C) 2010 Корпорація Nokia та/або її дочірні компанії.</translation> + </message> +</context> +<context> + <name>VideoPlayerTaskMenu</name> + <message> + <source>Available Mime Types</source> + <translation>Доступні типи MIME</translation> + </message> + <message> + <source>Display supported mime types...</source> + <translation>Показати підтримувані типи MIME...</translation> + </message> + <message> + <source>Load...</source> + <translation>Завантажити...</translation> + </message> + <message> + <source>Play</source> + <translation>Грати</translation> + </message> + <message> + <source>Pause</source> + <translation>Пауза</translation> + </message> + <message> + <source>Stop</source> + <translation>Зупинити</translation> + </message> + <message> + <source>Choose Video Player Media Source</source> + <translation>Оберіть джерело медіа для відеопрогравача</translation> + </message> + <message> + <source>An error has occurred in '%1': %2</source> + <translation>Сталась помилка в '%1': %2</translation> + </message> + <message> + <source>Video Player Error</source> + <translation>Помилка відеопрогравача</translation> + </message> +</context> +<context> + <name>WidgetDataBase</name> + <message> + <source>The file contains a custom widget '%1' whose base class (%2) differs from the current entry in the widget database (%3). The widget database is left unchanged.</source> + <translation>Цей файл містить користувацький віджет '%1', чий базовий клас (%2) відрізняється від поточного елементу в базі даних віджетів (%3). Базу даних віджетів залишено без змін.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ActionEditor</name> + <message> + <source>New...</source> + <translation>Новий...</translation> + </message> + <message> + <source>Edit...</source> + <translation>Редагувати...</translation> + </message> + <message> + <source>Go to slot...</source> + <translation>Перейти до слота...</translation> + </message> + <message> + <source>Copy</source> + <translation>Копіювати</translation> + </message> + <message> + <source>Cut</source> + <translation>Вирізати</translation> + </message> + <message> + <source>Paste</source> + <translation>Вставити</translation> + </message> + <message> + <source>Select all</source> + <translation>Виділити все</translation> + </message> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> + <message> + <source>Actions</source> + <translation>Дії</translation> + </message> + <message> + <source>Configure Action Editor</source> + <translation>Налаштувати редактор дій</translation> + </message> + <message> + <source>Icon View</source> + <translation>Значками</translation> + </message> + <message> + <source>Detailed View</source> + <translation>Детально</translation> + </message> + <message> + <source>New action</source> + <translation>Нова дія</translation> + </message> + <message> + <source>Edit action</source> + <translation>Редагувати дію</translation> + </message> + <message> + <source>Remove action '%1'</source> + <translation>Видалити дію '%1'</translation> + </message> + <message> + <source>Remove actions</source> + <translation>Видалити дії</translation> + </message> + <message> + <source>Used In</source> + <translation>Використовується в</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ActionModel</name> + <message> + <source>Name</source> + <translation>Назва</translation> + </message> + <message> + <source>Used</source> + <translation>Використовується</translation> + </message> + <message> + <source>Text</source> + <translation>Текст</translation> + </message> + <message> + <source>Shortcut</source> + <translation>Поєднання клавіш</translation> + </message> + <message> + <source>Checkable</source> + <translation>Прапорець</translation> + </message> + <message> + <source>ToolTip</source> + <translation>Спливаюча підказка</translation> + </message> +</context> +<context> + <name>qdesigner_internal::BrushManagerProxy</name> + <message> + <source>The element '%1' is missing the required attribute '%2'.</source> + <translation>У елемента '%1' відсутній обов'язковий атрибут '%2'.</translation> + </message> + <message> + <source>Empty brush name encountered.</source> + <translation>Знайдено порожня назва пензля.</translation> + </message> + <message> + <source>An unexpected element '%1' was encountered.</source> + <translation>Знайдено неочікуваний елемент '%1'.</translation> + </message> + <message> + <source>An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4</source> + <translation>Під час читання файлу опису пензля '%1' сталася помилка в рядку %2, позиція %3: %4</translation> + </message> + <message> + <source>An error occurred when reading the resource file '%1' at line %2, column %3: %4</source> + <translation>Під час читання файлу ресурсів '%1' сталася помилка в рядку %2, позиція %3: %4</translation> + </message> +</context> +<context> + <name>qdesigner_internal::BuddyEditor</name> + <message> + <source>Add buddy</source> + <translation>Додати прив'язку</translation> + </message> + <message> + <source>Remove buddies</source> + <translation>Видалити прив'язки</translation> + </message> + <message numerus="yes"> + <source>Remove %n buddies</source> + <translation> + <numerusform>Видалити %n прив'язку</numerusform> + <numerusform>Видалити %n прив'язки</numerusform> + <numerusform>Видалити %n прив'язок</numerusform> + </translation> + </message> + <message numerus="yes"> + <source>Add %n buddies</source> + <translation> + <numerusform>Додати %n прив'язку</numerusform> + <numerusform>Додати %n прив'язки</numerusform> + <numerusform>Додати %n прив'язок</numerusform> + </translation> + </message> + <message> + <source>Set automatically</source> + <translation>Встановити автоматично</translation> + </message> +</context> +<context> + <name>qdesigner_internal::BuddyEditorPlugin</name> + <message> + <source>Edit Buddies</source> + <translation>Редагувати прив'язки</translation> + </message> +</context> +<context> + <name>qdesigner_internal::BuddyEditorTool</name> + <message> + <source>Edit Buddies</source> + <translation>Редагувати прив'язки</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ButtonGroupMenu</name> + <message> + <source>Select members</source> + <translation>Обрати членів</translation> + </message> + <message> + <source>Break</source> + <translation>Розбити</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ButtonTaskMenu</name> + <message> + <source>Assign to button group</source> + <translation>Призначити до групи кнопок</translation> + </message> + <message> + <source>Button group</source> + <translation>Група кнопок</translation> + </message> + <message> + <source>New button group</source> + <translation>Нова група кнопок</translation> + </message> + <message> + <source>Change text...</source> + <translation>Змінити текст...</translation> + </message> + <message> + <source>None</source> + <translation>Немає</translation> + </message> + <message> + <source>Button group '%1'</source> + <translation>Група кнопок '%1'</translation> + </message> +</context> +<context> + <name>qdesigner_internal::CodeDialog</name> + <message> + <source>Save...</source> + <translation>Зберегти...</translation> + </message> + <message> + <source>Copy All</source> + <translation>Копіювати все</translation> + </message> + <message> + <source>&Find in Text...</source> + <translation>&Знайти в тексті...</translation> + </message> + <message> + <source>A temporary form file could not be created in %1.</source> + <translation>Неможливо створити тимчасовий файл форми в %1.</translation> + </message> + <message> + <source>The temporary form file %1 could not be written.</source> + <translation>Неможливо записати тимчасовий файл форми %1.</translation> + </message> + <message> + <source>%1 - [Code]</source> + <translation>%1 - [код]</translation> + </message> + <message> + <source>Save Code</source> + <translation>Зберегти код</translation> + </message> + <message> + <source>Header Files (*.%1)</source> + <translation>Файли заголовків (*.%1)</translation> + </message> + <message> + <source>The file %1 could not be opened: %2</source> + <translation>Неможливо відкрити файл %1: %2</translation> + </message> + <message> + <source>The file %1 could not be written: %2</source> + <translation>Неможливо записати файл %1: %2</translation> + </message> + <message> + <source>%1 - Error</source> + <translation>%1 - Помилка</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ColorAction</name> + <message> + <source>Text Color</source> + <translation>Колір тексту</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ComboBoxTaskMenu</name> + <message> + <source>Edit Items...</source> + <translation>Редагувати елементи...</translation> + </message> + <message> + <source>Change Combobox Contents</source> + <translation>Змінити зміст випадаючого списку</translation> + </message> +</context> +<context> + <name>qdesigner_internal::CommandLinkButtonTaskMenu</name> + <message> + <source>Change description...</source> + <translation>Змінити опис...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ConnectionEdit</name> + <message> + <source>Select All</source> + <translation>Виділити все</translation> + </message> + <message> + <source>Deselect All</source> + <translation>Зняти виділення</translation> + </message> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ConnectionModel</name> + <message> + <source>Sender</source> + <translation>Надсилач</translation> + </message> + <message> + <source>Signal</source> + <translation>Сигнал</translation> + </message> + <message> + <source>Receiver</source> + <translation>Отримувач</translation> + </message> + <message> + <source>Slot</source> + <translation>Слот</translation> + </message> + <message> + <source><sender></source> + <translation><надсилач></translation> + </message> + <message> + <source><signal></source> + <translation><сигнал></translation> + </message> + <message> + <source><receiver></source> + <translation><отримувач></translation> + </message> + <message> + <source><slot></source> + <translation><слот></translation> + </message> + <message> + <source>The connection already exists!<br>%1</source> + <translation>З'єднання вже існує!<br>%1</translation> + </message> + <message> + <source>Signal and Slot Editor</source> + <translation>Редактор сигналів та слотів</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ContainerWidgetTaskMenu</name> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> + <message> + <source>Insert</source> + <translation>Вставити</translation> + </message> + <message> + <source>Insert Page Before Current Page</source> + <translation>Вставити сторінку перед поточною сторінкою</translation> + </message> + <message> + <source>Insert Page After Current Page</source> + <translation>Вставити сторінку після поточної сторінки</translation> + </message> + <message> + <source>Add Subwindow</source> + <translation>Додати підвікно</translation> + </message> + <message> + <source>Subwindow</source> + <translation>Підвікно</translation> + </message> + <message> + <source>Page</source> + <translation>Сторінка</translation> + </message> + <message> + <source>Page %1 of %2</source> + <translation>Сторінка %1 з %2</translation> + </message> +</context> +<context> + <name>qdesigner_internal::DPI_Chooser</name> + <message> + <source>System (%1 x %2)</source> + <extracomment>System resolution</extracomment> + <translation>Системна (%1 x %2)</translation> + </message> + <message> + <source>User defined</source> + <translation>Визначена користувачем</translation> + </message> + <message> + <source> x </source> + <extracomment>DPI X/Y separator</extracomment> + <translation> x </translation> + </message> +</context> +<context> + <name>qdesigner_internal::DesignerPropertyManager</name> + <message> + <source>AlignLeft</source> + <translation>Вліво</translation> + </message> + <message> + <source>AlignHCenter</source> + <translation>По центру</translation> + </message> + <message> + <source>AlignRight</source> + <translation>Вправо</translation> + </message> + <message> + <source>AlignJustify</source> + <translation>По ширині</translation> + </message> + <message> + <source>AlignTop</source> + <translation>Догори</translation> + </message> + <message> + <source>AlignVCenter</source> + <translation>По центру</translation> + </message> + <message> + <source>AlignBottom</source> + <translation>Донизу</translation> + </message> + <message> + <source>%1, %2</source> + <translation>%1, %2</translation> + </message> + <message numerus="yes"> + <source>Customized (%n roles)</source> + <translation> + <numerusform>Користувацька (%n роль)</numerusform> + <numerusform>Користувацька (%n ролі)</numerusform> + <numerusform>Користувацька (%n ролей)</numerusform> + </translation> + </message> + <message> + <source>Inherited</source> + <translation>Успадкована</translation> + </message> + <message> + <source>Horizontal</source> + <translation>Горизонтальне</translation> + </message> + <message> + <source>Vertical</source> + <translation>Вертикальне</translation> + </message> + <message> + <source>Normal Off</source> + <translation>Нормальний, вимк</translation> + </message> + <message> + <source>Normal On</source> + <translation>Нормальний, увімк</translation> + </message> + <message> + <source>Disabled Off</source> + <translation>Вимкнений, вимк</translation> + </message> + <message> + <source>Disabled On</source> + <translation>Вимкнений, увімк</translation> + </message> + <message> + <source>Active Off</source> + <translation>Активний, вимк</translation> + </message> + <message> + <source>Active On</source> + <translation>Активний, увімк</translation> + </message> + <message> + <source>Selected Off</source> + <translation>Обраний, вимк</translation> + </message> + <message> + <source>Selected On</source> + <translation>Обраний, увімк</translation> + </message> + <message> + <source>translatable</source> + <translation>перекладати</translation> + </message> + <message> + <source>disambiguation</source> + <translation>уточнення</translation> + </message> + <message> + <source>comment</source> + <translation>коментар</translation> + </message> +</context> +<context> + <name>qdesigner_internal::DeviceProfileDialog</name> + <message> + <source>Device Profiles (*.%1)</source> + <translation>Профілі пристроїв (*.%1)</translation> + </message> + <message> + <source>Default</source> + <translation>Типовий</translation> + </message> + <message> + <source>Save Profile</source> + <translation>Зберегти профіль</translation> + </message> + <message> + <source>Save Profile - Error</source> + <translation>Збереження профілю - Помилка</translation> + </message> + <message> + <source>Unable to open the file '%1' for writing: %2</source> + <translation>Неможливо відкрити файл '%1' для запису: %2</translation> + </message> + <message> + <source>Open profile</source> + <translation>Відкрити профіль</translation> + </message> + <message> + <source>Open Profile - Error</source> + <translation>Відкриття профілю - Помилка</translation> + </message> + <message> + <source>Unable to open the file '%1' for reading: %2</source> + <translation>Неможливо відкрити файл '%1' для читання: %2</translation> + </message> + <message> + <source>'%1' is not a valid profile: %2</source> + <translation>'%1' не є правильним профілем: %2</translation> + </message> +</context> +<context> + <name>qdesigner_internal::Dialog</name> + <message> + <source>Dialog</source> + <translation>Діалог</translation> + </message> + <message> + <source>StringList</source> + <translation>Список рядків</translation> + </message> + <message> + <source>New String</source> + <translation>Новий рядок</translation> + </message> + <message> + <source>&New</source> + <translation>&Новий</translation> + </message> + <message> + <source>Delete String</source> + <translation>Видалити рядок</translation> + </message> + <message> + <source>&Delete</source> + <translation>Ви&далити</translation> + </message> + <message> + <source>&Value:</source> + <translation>&Значення:</translation> + </message> + <message> + <source>Move String Up</source> + <translation>Пересунути рядок вгору</translation> + </message> + <message> + <source>Up</source> + <translation>Вгору</translation> + </message> + <message> + <source>Move String Down</source> + <translation>Пересунути рядок донизу</translation> + </message> + <message> + <source>Down</source> + <translation>Вниз</translation> + </message> +</context> +<context> + <name>qdesigner_internal::EmbeddedOptionsControl</name> + <message> + <source>None</source> + <translation>Немає</translation> + </message> + <message> + <source>Add a profile</source> + <translation>Додати профіль</translation> + </message> + <message> + <source>Edit the selected profile</source> + <translation>Редагувати виділений профіль</translation> + </message> + <message> + <source>Delete the selected profile</source> + <translation>Видалити виділений профіль</translation> + </message> + <message> + <source>Add Profile</source> + <translation>Додати профіль</translation> + </message> + <message> + <source>New profile</source> + <translation>Новий профіль</translation> + </message> + <message> + <source>Edit Profile</source> + <translation>Редагувати профіль</translation> + </message> + <message> + <source>Delete Profile</source> + <translation>Видалити профіль</translation> + </message> + <message> + <source>Would you like to delete the profile '%1'?</source> + <translation>Бажаєте видалити профіль '%1'?</translation> + </message> + <message> + <source>Default</source> + <translation>Типовий</translation> + </message> +</context> +<context> + <name>qdesigner_internal::FilterWidget</name> + <message> + <source>Filter</source> + <translation>Фільтр</translation> + </message> + <message> + <source>Clear text</source> + <translation>Очистити текст</translation> + </message> +</context> +<context> + <name>qdesigner_internal::FormEditor</name> + <message> + <source>Resource File Changed</source> + <translation>Файли ресурсів було змінено</translation> + </message> + <message> + <source>The file "%1" has changed outside Designer. Do you want to reload it?</source> + <translation>Файл "%1" було змінено поза Qt Designer. Бажаєте перезавантажити його?</translation> + </message> +</context> +<context> + <name>qdesigner_internal::FormLayoutMenu</name> + <message> + <source>Add form layout row...</source> + <translation>Додати рядок до розташування формою...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::FormWindow</name> + <message> + <source>Edit contents</source> + <translation>Редагувати зміст</translation> + </message> + <message> + <source>F2</source> + <translation></translation> + </message> + <message> + <source>Insert widget '%1'</source> + <translation>Вставити віджет '%1'</translation> + </message> + <message> + <source>Resize</source> + <translation>Змінити розмір</translation> + </message> + <message> + <source>Key Resize</source> + <translation>Зміна розміру клавішею</translation> + </message> + <message> + <source>Key Move</source> + <translation>Переміщення клавішею</translation> + </message> + <message numerus="yes"> + <source>Paste %n action(s)</source> + <translation> + <numerusform>Вставити %n дію</numerusform> + <numerusform>Вставити %n дії</numerusform> + <numerusform>Вставити %n дій</numerusform> + </translation> + </message> + <message numerus="yes"> + <source>Paste %n widget(s)</source> + <translation> + <numerusform>Вставити %n віджет</numerusform> + <numerusform>Вставити %n віджети</numerusform> + <numerusform>Вставити %n віджетів</numerusform> + </translation> + </message> + <message> + <source>Paste (%1 widgets, %2 actions)</source> + <translation>Вставити (%1 віджетів, %2 дії)</translation> + </message> + <message> + <source>Cannot paste widgets. Designer could not find a container without a layout to paste into.</source> + <translation>Неможливо вставити віджети. Qt Designer не зміг знайти контейнер без розташування для вставки.</translation> + </message> + <message> + <source>Break the layout of the container you want to paste into, select this container and then paste again.</source> + <translation>Розбийте розташування контейнеру, в який ви бажаєте вставити, виділіть цей контейнер та вставте знову.</translation> + </message> + <message> + <source>Paste error</source> + <translation>Помилка вставки</translation> + </message> + <message> + <source>Raise widgets</source> + <translation>Підняти віджети</translation> + </message> + <message> + <source>Lower widgets</source> + <translation>Опустити віджети</translation> + </message> + <message> + <source>Select Ancestor</source> + <translation>Обрати предка</translation> + </message> + <message> + <source>Lay out</source> + <translation>Розташування</translation> + </message> + <message> + <source>Drop widget</source> + <translation>Кинути віджет</translation> + </message> + <message> + <source>A QMainWindow-based form does not contain a central widget.</source> + <translation>Форма, що базується на QMainWindow не містить центрального віджета.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::FormWindowBase</name> + <message> + <source>Delete '%1'</source> + <translation>Видалити '%1'</translation> + </message> + <message> + <source>Delete</source> + <translation>Видалити</translation> + </message> +</context> +<context> + <name>qdesigner_internal::FormWindowManager</name> + <message> + <source>Cu&t</source> + <translation>Вирі&зати</translation> + </message> + <message> + <source>Cuts the selected widgets and puts them on the clipboard</source> + <translation>Вирізає виділені віджети та розміщує їх в буфері обміну</translation> + </message> + <message> + <source>&Copy</source> + <translation>&Копіювати</translation> + </message> + <message> + <source>Copies the selected widgets to the clipboard</source> + <translation>Копіює виділені віджети до буферу обміну</translation> + </message> + <message> + <source>&Paste</source> + <translation>&Вставити</translation> + </message> + <message> + <source>Pastes the clipboard's contents</source> + <translation>Вставляє зміст буферу обміну</translation> + </message> + <message> + <source>&Delete</source> + <translation>Ви&далити</translation> + </message> + <message> + <source>Deletes the selected widgets</source> + <translation>Видаляє виділені віджети</translation> + </message> + <message> + <source>Select &All</source> + <translation>Виділити в&се</translation> + </message> + <message> + <source>Selects all widgets</source> + <translation>Виділяє усі віджети</translation> + </message> + <message> + <source>Bring to &Front</source> + <translation>На &передній план</translation> + </message> + <message> + <source>Raises the selected widgets</source> + <translation>Піднімає виділені віджети</translation> + </message> + <message> + <source>Send to &Back</source> + <translation>На зад&ній план</translation> + </message> + <message> + <source>Lowers the selected widgets</source> + <translation>Опускає виділені віджети</translation> + </message> + <message> + <source>Adjust &Size</source> + <translation>Підігнати &розмір</translation> + </message> + <message> + <source>Adjusts the size of the selected widget</source> + <translation>Підганяє розмір виділених віджетів</translation> + </message> + <message> + <source>Lay Out &Horizontally</source> + <translation>Розташувати &горизонтально</translation> + </message> + <message> + <source>Lays out the selected widgets horizontally</source> + <translation>Розташовує виділені віджети горизонтально</translation> + </message> + <message> + <source>Lay Out &Vertically</source> + <translation>Розташувати &вертикально</translation> + </message> + <message> + <source>Lays out the selected widgets vertically</source> + <translation>Розташовує виділені віджети вертикально</translation> + </message> + <message> + <source>Lay Out in a &Form Layout</source> + <translation>Розташувати по &формі</translation> + </message> + <message> + <source>Lays out the selected widgets in a form layout</source> + <translation>Розташовує виділені віджети по формі</translation> + </message> + <message> + <source>Lay Out in a &Grid</source> + <translation>Розташувати, використовуючи &сітку</translation> + </message> + <message> + <source>Lays out the selected widgets in a grid</source> + <translation>Розташовує виділені віджети по сітці</translation> + </message> + <message> + <source>Lay Out Horizontally in S&plitter</source> + <translation>Розташувати г&оризонтально з розділювачем</translation> + </message> + <message> + <source>Lays out the selected widgets horizontally in a splitter</source> + <translation>Розташовує виділені віджети горизонтально з розділювачем</translation> + </message> + <message> + <source>Lay Out Vertically in Sp&litter</source> + <translation>Розташувати в&ертикально з розділювачем</translation> + </message> + <message> + <source>Lays out the selected widgets vertically in a splitter</source> + <translation>Розташовує виділені віджети вертикально з розділювачем</translation> + </message> + <message> + <source>&Break Layout</source> + <translation>Розби&ти розташування</translation> + </message> + <message> + <source>Breaks the selected layout</source> + <translation>Розбиває виділено розташування</translation> + </message> + <message> + <source>Si&mplify Grid Layout</source> + <translation>Спро&щене розташування по сітці</translation> + </message> + <message> + <source>Removes empty columns and rows</source> + <translation>Видаляє пусті рядки та колонки</translation> + </message> + <message> + <source>&Preview...</source> + <translation>Попередній перегля&д...</translation> + </message> + <message> + <source>Preview current form</source> + <translation>Попередній перегляд поточної форми</translation> + </message> + <message> + <source>Form &Settings...</source> + <translation>Нала&штування форми...</translation> + </message> + <message> + <source>Break Layout</source> + <translation>Розбити розташування</translation> + </message> + <message> + <source>Adjust Size</source> + <translation>Підігнати розмір</translation> + </message> + <message> + <source>Could not create form preview</source> + <comment>Title of warning message box</comment> + <translation>Неможливо створити попередній перегляд форми</translation> + </message> + <message> + <source>Form Settings - %1</source> + <translation>Налаштування форми - %1</translation> + </message> +</context> +<context> + <name>qdesigner_internal::FormWindowSettings</name> + <message> + <source>None</source> + <translation>Немає</translation> + </message> + <message> + <source>Device Profile: %1</source> + <translation>Профіль пристрою: %1</translation> + </message> +</context> +<context> + <name>qdesigner_internal::GridPanel</name> + <message> + <source>Form</source> + <translation>Форма</translation> + </message> + <message> + <source>Grid</source> + <translation>Сітка</translation> + </message> + <message> + <source>Visible</source> + <translation>Видима</translation> + </message> + <message> + <source>Grid &X</source> + <translation>Сітка &X</translation> + </message> + <message> + <source>Snap</source> + <translation>Прив'язка</translation> + </message> + <message> + <source>Reset</source> + <translation>Скинути</translation> + </message> + <message> + <source>Grid &Y</source> + <translation>Сітка &Y</translation> + </message> +</context> +<context> + <name>qdesigner_internal::GroupBoxTaskMenu</name> + <message> + <source>Change title...</source> + <translation>Змінити заголовок...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::HtmlTextEdit</name> + <message> + <source>Insert HTML entity</source> + <translation>Вставити елемент HTML</translation> + </message> +</context> +<context> + <name>qdesigner_internal::IconSelector</name> + <message> + <source>The pixmap file '%1' cannot be read.</source> + <translation>Неможливо прочитати файл растрового зображення '%1'.</translation> + </message> + <message> + <source>The file '%1' does not appear to be a valid pixmap file: %2</source> + <translation>Файл '%1' не схожий на правильний файл растрового зображення: %2</translation> + </message> + <message> + <source>The file '%1' could not be read: %2</source> + <translation>Неможливо прочитати файл '%1': %2</translation> + </message> + <message> + <source>Choose a Pixmap</source> + <translation>Оберіть растрове зображення</translation> + </message> + <message> + <source>Pixmap Read Error</source> + <translation>Помилка читання растрового зображення</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Normal Off</source> + <translation>Нормальний, вимк</translation> + </message> + <message> + <source>Normal On</source> + <translation>Нормальний, увімк</translation> + </message> + <message> + <source>Disabled Off</source> + <translation>Вимкнений, вимк</translation> + </message> + <message> + <source>Disabled On</source> + <translation>Вимкнений, увімк</translation> + </message> + <message> + <source>Active Off</source> + <translation>Активний, вимк</translation> + </message> + <message> + <source>Active On</source> + <translation>Активний, увімк</translation> + </message> + <message> + <source>Selected Off</source> + <translation>Обраний, вимк</translation> + </message> + <message> + <source>Selected On</source> + <translation>Обраний, увімк</translation> + </message> + <message> + <source>Choose Resource...</source> + <translation>Оберіть ресурс...</translation> + </message> + <message> + <source>Choose File...</source> + <translation>Оберіть файл...</translation> + </message> + <message> + <source>Reset</source> + <translation>Скинути</translation> + </message> + <message> + <source>Reset All</source> + <translation>Скинути все</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ItemListEditor</name> + <message> + <source>Items List</source> + <translation>Список елементів</translation> + </message> + <message> + <source>New Item</source> + <translation>Новий елемент</translation> + </message> + <message> + <source>&New</source> + <translation>&Новий</translation> + </message> + <message> + <source>Delete Item</source> + <translation>Видалити елемент</translation> + </message> + <message> + <source>&Delete</source> + <translation>Ви&далити</translation> + </message> + <message> + <source>Move Item Up</source> + <translation>Пересунути елемент вгору</translation> + </message> + <message> + <source>U</source> + <translation>В</translation> + </message> + <message> + <source>Move Item Down</source> + <translation>Пересунути елемент вниз</translation> + </message> + <message> + <source>D</source> + <translation>Н</translation> + </message> + <message> + <source>Properties &>></source> + <translation>Властивост&і >></translation> + </message> + <message> + <source>Properties &<<</source> + <translation>Властивост&і <<</translation> + </message> +</context> +<context> + <name>qdesigner_internal::LabelTaskMenu</name> + <message> + <source>Change rich text...</source> + <translation>Змінити форматований текст...</translation> + </message> + <message> + <source>Change plain text...</source> + <translation>Змінити простий текст...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::LanguageResourceDialog</name> + <message> + <source>Choose Resource</source> + <translation>Оберіть ресурс</translation> + </message> +</context> +<context> + <name>qdesigner_internal::LineEditTaskMenu</name> + <message> + <source>Change text...</source> + <translation>Змінити текст...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ListWidgetEditor</name> + <message> + <source>New Item</source> + <translation>Новий елемент</translation> + </message> + <message> + <source>Edit List Widget</source> + <translation>Редагування віджета "Список"</translation> + </message> + <message> + <source>Edit Combobox</source> + <translation>Редагування віджета "Випадаючий список"</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ListWidgetTaskMenu</name> + <message> + <source>Edit Items...</source> + <translation>Редагувати елементи...</translation> + </message> + <message> + <source>Change List Contents</source> + <translation>Змінити зміст списку</translation> + </message> +</context> +<context> + <name>qdesigner_internal::MdiContainerWidgetTaskMenu</name> + <message> + <source>Next Subwindow</source> + <translation>Наступне підвікно</translation> + </message> + <message> + <source>Previous Subwindow</source> + <translation>Попереднє підвікно</translation> + </message> + <message> + <source>Tile</source> + <translation>Плиткою</translation> + </message> + <message> + <source>Cascade</source> + <translation>Каскадом</translation> + </message> +</context> +<context> + <name>qdesigner_internal::MenuTaskMenu</name> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> +</context> +<context> + <name>qdesigner_internal::MorphMenu</name> + <message> + <source>Morph into</source> + <translation>Перетворити на</translation> + </message> +</context> +<context> + <name>qdesigner_internal::NewActionDialog</name> + <message> + <source>New Action...</source> + <translation>Нова дія...</translation> + </message> + <message> + <source>&Text:</source> + <translation>&Текст:</translation> + </message> + <message> + <source>Object &name:</source> + <translation>&Ім'я об'єкта:</translation> + </message> + <message> + <source>&Icon:</source> + <translation>&Значок:</translation> + </message> + <message> + <source>Shortcut:</source> + <translation>Поєднання клавіш:</translation> + </message> + <message> + <source>Checkable:</source> + <translation>Прапорець:</translation> + </message> + <message> + <source>ToolTip:</source> + <translation>Спливаюча підказка:</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::NewDynamicPropertyDialog</name> + <message> + <source>Create Dynamic Property</source> + <translation>Створити динамічну властивість</translation> + </message> + <message> + <source>Property Name</source> + <translation>Ім'я властивості</translation> + </message> + <message> + <source>horizontalSpacer</source> + <translation></translation> + </message> + <message> + <source>Property Type</source> + <translation>Тип властивості</translation> + </message> + <message> + <source>Set Property Name</source> + <translation>Встановіть ім'я властивості</translation> + </message> + <message> + <source>The current object already has a property named '%1'. +Please select another, unique one.</source> + <translation>Поточний об'єкт вже має властивість з іменем '%1'. +Будь-ласка, оберіть інше, унікальне ім'я.</translation> + </message> + <message> + <source>The '_q_' prefix is reserved for the Qt library. +Please select another name.</source> + <translation>Префікс '_q_' зарезервовано для бібліотеки Qt. +Будь-ласка, оберіть інше ім'я.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::NewFormWidget</name> + <message> + <source>0</source> + <translation>0</translation> + </message> + <message> + <source>Choose a template for a preview</source> + <translation>Оберіть шаблон для попереднього перегляду</translation> + </message> + <message> + <source>Embedded Design</source> + <translation>Дизайн для портативних пристроїв</translation> + </message> + <message> + <source>Device:</source> + <translation>Пристрій:</translation> + </message> + <message> + <source>Screen Size:</source> + <translation>Розмір екрану:</translation> + </message> + <message> + <source>Default size</source> + <translation>Типовий розмір</translation> + </message> + <message> + <source>QVGA portrait (240x320)</source> + <translation>QVGA книжкою (240x320)</translation> + </message> + <message> + <source>QVGA landscape (320x240)</source> + <translation>QVGA альбомом (320x240)</translation> + </message> + <message> + <source>VGA portrait (480x640)</source> + <translation>VGA книжкою (480x640)</translation> + </message> + <message> + <source>VGA landscape (640x480)</source> + <translation>VGA альбомом (640x480)</translation> + </message> + <message> + <source>Widgets</source> + <extracomment>New Form Dialog Categories</extracomment> + <translation>Віджети</translation> + </message> + <message> + <source>Custom Widgets</source> + <translation>Віджети користувача</translation> + </message> + <message> + <source>None</source> + <translation>Немає</translation> + </message> + <message> + <source>Error loading form</source> + <translation>Помилка завантаження форми</translation> + </message> + <message> + <source>Unable to open the form template file '%1': %2</source> + <translation>Неможливо відкрити файл шаблону форми '%1': %2</translation> + </message> + <message> + <source>Internal error: No template selected.</source> + <translation>Внутрішня помилка. Не обрано шаблон.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::NewPromotedClassPanel</name> + <message> + <source>Add</source> + <translation>Додати</translation> + </message> + <message> + <source>New Promoted Class</source> + <translation>Новий перетворений клас</translation> + </message> + <message> + <source>Base class name:</source> + <translation>Ім'я базового класу:</translation> + </message> + <message> + <source>Promoted class name:</source> + <translation>Ім'я перетвореного класу:</translation> + </message> + <message> + <source>Header file:</source> + <translation>Файл заголовків:</translation> + </message> + <message> + <source>Global include</source> + <translation>Глобальне включення</translation> + </message> + <message> + <source>Reset</source> + <translation>Скинути</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ObjectInspector</name> + <message> + <source>Change Current Page</source> + <translation>Змінити поточну сторінку</translation> + </message> + <message> + <source>&Find in Text...</source> + <translation>&Знайти в тексті...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::OrderDialog</name> + <message> + <source>Change Page Order</source> + <translation>Змінити порядок сторінок</translation> + </message> + <message> + <source>Page Order</source> + <translation>Порядок сторінок</translation> + </message> + <message> + <source>Move page up</source> + <translation>Пересунути сторінку вгору</translation> + </message> + <message> + <source>Move page down</source> + <translation>Пересунути сторінку вниз</translation> + </message> + <message> + <source>Index %1 (%2)</source> + <translation>Індекс %1 (%2)</translation> + </message> + <message> + <source>%1 %2</source> + <translation>%1 %2</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PaletteEditor</name> + <message> + <source>Edit Palette</source> + <translation>Редагувати палітру</translation> + </message> + <message> + <source>Tune Palette</source> + <translation>Налаштувати палітру</translation> + </message> + <message> + <source>Show Details</source> + <translation>Показати деталі</translation> + </message> + <message> + <source>Compute Details</source> + <translation>Розраховувати деталі</translation> + </message> + <message> + <source>Quick</source> + <translation>Швидко</translation> + </message> + <message> + <source>Preview</source> + <translation>Попередній перегляд</translation> + </message> + <message> + <source>Disabled</source> + <translation>Вимкнений</translation> + </message> + <message> + <source>Inactive</source> + <translation>Неактивний</translation> + </message> + <message> + <source>Active</source> + <translation>Активний</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PaletteEditorButton</name> + <message> + <source>Change Palette</source> + <translation>Змінити палітру</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PaletteModel</name> + <message> + <source>Color Role</source> + <translation>Кольорова роль</translation> + </message> + <message> + <source>Active</source> + <translation>Активна</translation> + </message> + <message> + <source>Inactive</source> + <translation>Неактивний</translation> + </message> + <message> + <source>Disabled</source> + <translation>Вимкнений</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PixmapEditor</name> + <message> + <source>Choose Resource...</source> + <translation>Оберіть ресурс...</translation> + </message> + <message> + <source>Choose File...</source> + <translation>Оберіть файл...</translation> + </message> + <message> + <source>Copy Path</source> + <translation>Копіювати шлях</translation> + </message> + <message> + <source>Paste Path</source> + <translation>Вставити шлях</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PlainTextEditorDialog</name> + <message> + <source>Edit text</source> + <translation>Редагувати текст</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PluginDialog</name> + <message> + <source>Components</source> + <translation>Компоненти</translation> + </message> + <message> + <source>Plugin Information</source> + <translation>Інформація про додаток</translation> + </message> + <message> + <source>Refresh</source> + <translation>Оновити</translation> + </message> + <message> + <source>Scan for newly installed custom widget plugins.</source> + <translation>Шукати нові встановлені додатки користувацьких віджетів.</translation> + </message> + <message> + <source>Qt Designer couldn't find any plugins</source> + <translation>Qt Designer не зміг знайти жодного додатку</translation> + </message> + <message> + <source>Qt Designer found the following plugins</source> + <translation>Qt Designer знайшов наступні додатки</translation> + </message> + <message> + <source>New custom widget plugins have been found.</source> + <translation>Були знайдені нові додатки користувацьких віджетів.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PreviewActionGroup</name> + <message> + <source>%1 Style</source> + <translation>Стиль %1</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PreviewConfigurationWidget</name> + <message> + <source>Default</source> + <translation>Типово</translation> + </message> + <message> + <source>None</source> + <translation>Немає</translation> + </message> + <message> + <source>Browse...</source> + <translation>Огляд...</translation> + </message> + <message> + <source>Load Custom Device Skin</source> + <translation>Завантажити користувацьку обкладинку пристрою</translation> + </message> + <message> + <source>All QVFB Skins (*.%1)</source> + <translation>Усі обкладинки QVFB (*.%1)</translation> + </message> + <message> + <source>%1 - Duplicate Skin</source> + <translation>%1 - Обкладинка-дублікат</translation> + </message> + <message> + <source>The skin '%1' already exists.</source> + <translation>Обкладинка '%1' вже існує.</translation> + </message> + <message> + <source>%1 - Error</source> + <translation>%1 - Помилка</translation> + </message> + <message> + <source>%1 is not a valid skin directory: +%2</source> + <translation>%1 не є правильною текою обкладинки: +%2</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PreviewDeviceSkin</name> + <message> + <source>&Portrait</source> + <translation>Книжка</translation> + </message> + <message> + <source>Landscape (&CCW)</source> + <extracomment>Rotate form preview counter-clockwise</extracomment> + <translation>Альбом (проти ГС)</translation> + </message> + <message> + <source>&Landscape (CW)</source> + <extracomment>Rotate form preview clockwise</extracomment> + <translation>Альбом (за ГС)</translation> + </message> + <message> + <source>&Close</source> + <translation>Закрити</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PreviewManager</name> + <message> + <source>%1 - [Preview]</source> + <translation>%1 - [Перегляд]</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PreviewMdiArea</name> + <message> + <source>The moose in the noose +ate the goose who was loose.</source> + <extracomment>Palette editor background</extracomment> + <translation>Кричав Архип, Архип охрип, +Не треба Архипу кричати до хрипу.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PreviewWidget</name> + <message> + <source>Preview Window</source> + <translation>Вікно попереднього перегляду</translation> + </message> + <message> + <source>LineEdit</source> + <translation>Поле введення</translation> + </message> + <message> + <source>ComboBox</source> + <translation>Випадаючий список</translation> + </message> + <message> + <source>PushButton</source> + <translation>Кнопка</translation> + </message> + <message> + <source>ButtonGroup2</source> + <translation>Група кнопок 2</translation> + </message> + <message> + <source>CheckBox1</source> + <translation>Прапорець 1</translation> + </message> + <message> + <source>CheckBox2</source> + <translation>Прапорець 2</translation> + </message> + <message> + <source>ButtonGroup</source> + <translation>Група кнопок</translation> + </message> + <message> + <source>RadioButton1</source> + <translation>Перемикач 1</translation> + </message> + <message> + <source>RadioButton2</source> + <translation>Перемикач 2</translation> + </message> + <message> + <source>RadioButton3</source> + <translation>Перемикач 3</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PromotionModel</name> + <message> + <source>Name</source> + <translation>Назва</translation> + </message> + <message> + <source>Header file</source> + <translation>Файл заголовків</translation> + </message> + <message> + <source>Global include</source> + <translation>Глобальне включення</translation> + </message> + <message> + <source>Usage</source> + <translation>Використання</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PromotionTaskMenu</name> + <message> + <source>Promoted widgets...</source> + <translation>Перетворені віджети...</translation> + </message> + <message> + <source>Promote to ...</source> + <translation>Перетворити на...</translation> + </message> + <message> + <source>Change signals/slots...</source> + <translation>Змінити сигнали/слоти...</translation> + </message> + <message> + <source>Promote to</source> + <translation>Перетворити на</translation> + </message> + <message> + <source>Demote to %1</source> + <translation>Перетворити на %1</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PropertyEditor</name> + <message> + <source>Add Dynamic Property...</source> + <translation>Додати динамічну властивість...</translation> + </message> + <message> + <source>Remove Dynamic Property</source> + <translation>Видалити динамічну властивість</translation> + </message> + <message> + <source>Sorting</source> + <translation>Сортування</translation> + </message> + <message> + <source>Color Groups</source> + <translation>Групи кольорів</translation> + </message> + <message> + <source>Tree View</source> + <translation>Деревом</translation> + </message> + <message> + <source>Drop Down Button View</source> + <translation>Випадаючим списком</translation> + </message> + <message> + <source>String...</source> + <translation>Рядки...</translation> + </message> + <message> + <source>Bool...</source> + <translation>Булева...</translation> + </message> + <message> + <source>Other...</source> + <translation>Інше...</translation> + </message> + <message> + <source>Configure Property Editor</source> + <translation>Налаштувати редактор властивостей</translation> + </message> + <message> + <source>Object: %1 +Class: %2</source> + <translation>Об'єкт: %1 +Клас: %2</translation> + </message> +</context> +<context> + <name>qdesigner_internal::PropertyLineEdit</name> + <message> + <source>Insert line break</source> + <translation>Insert розрив рядка</translation> + </message> +</context> +<context> + <name>qdesigner_internal::QDesignerPromotionDialog</name> + <message> + <source>Promoted Widgets</source> + <translation>Перетворені віджети</translation> + </message> + <message> + <source>Promoted Classes</source> + <translation>Перетворені класи</translation> + </message> + <message> + <source>Promote</source> + <translation>Перетворити</translation> + </message> + <message> + <source>Change signals/slots...</source> + <translation>Змінити сигнали/слоти...</translation> + </message> + <message> + <source>%1 - Error</source> + <translation>%1 - Помилка</translation> + </message> +</context> +<context> + <name>qdesigner_internal::QDesignerResource</name> + <message> + <source>Loading qrc file</source> + <translation>Завантаження файлу qrc</translation> + </message> + <message> + <source>The specified qrc file <p><b>%1</b></p><p>could not be found. Do you want to update the file location?</p></source> + <translation>Неможливо знайти вказаний файл qrc <p><b>%1</b></p><p>. Бажаєте оновити розташування файлу?</p></translation> + </message> + <message> + <source>New location for %1</source> + <translation>Нове розташування для %1</translation> + </message> + <message> + <source>Resource files (*.qrc)</source> + <translation>Файли ресурсів (*.qrc)</translation> + </message> +</context> +<context> + <name>qdesigner_internal::QDesignerTaskMenu</name> + <message> + <source>Change objectName...</source> + <translation>Змінити objectName...</translation> + </message> + <message> + <source>Change toolTip...</source> + <translation>Змінити toolTip...</translation> + </message> + <message> + <source>Change whatsThis...</source> + <translation>Змінити whatsThis...</translation> + </message> + <message> + <source>Change styleSheet...</source> + <translation>Змінити styleSheet...</translation> + </message> + <message> + <source>Create Menu Bar</source> + <translation>Створити панель меню</translation> + </message> + <message> + <source>Add Tool Bar</source> + <translation>Додати панель інструментів</translation> + </message> + <message> + <source>Create Status Bar</source> + <translation>Створити рядок статусу</translation> + </message> + <message> + <source>Remove Status Bar</source> + <translation>Видалити рядок статусу</translation> + </message> + <message> + <source>Change script...</source> + <translation>Змінити скрипт...</translation> + </message> + <message> + <source>Change signals/slots...</source> + <translation>Змінити сигнали/слоти...</translation> + </message> + <message> + <source>Go to slot...</source> + <translation>Перейти до слота...</translation> + </message> + <message> + <source>Size Constraints</source> + <translation>Обмеження розміру</translation> + </message> + <message> + <source>Set Minimum Width</source> + <translation>Встановити мінімальну ширину</translation> + </message> + <message> + <source>Set Minimum Height</source> + <translation>Встановити мінімальну висоту</translation> + </message> + <message> + <source>Set Minimum Size</source> + <translation>Встановити мінімальний розмір</translation> + </message> + <message> + <source>Set Maximum Width</source> + <translation>Встановити максимальну ширину</translation> + </message> + <message> + <source>Set Maximum Height</source> + <translation>Встановити максимальну висоту</translation> + </message> + <message> + <source>Set Maximum Size</source> + <translation>Встановити максимальний розмір</translation> + </message> + <message> + <source>Edit ToolTip</source> + <translation>Редагувати спливаючу підказку</translation> + </message> + <message> + <source>Edit WhatsThis</source> + <translation>Редагування підказки "Що це?"</translation> + </message> + <message> + <source>no signals available</source> + <translation>немає доступних сигналів</translation> + </message> + <message numerus="yes"> + <source>Set size constraint on %n widget(s)</source> + <translation> + <numerusform>Встановити обмеження розміру для %n віджета</numerusform> + <numerusform>Встановити обмеження розміру для %n віджетів</numerusform> + <numerusform>Встановити обмеження розміру для %n віджетів</numerusform> + </translation> + </message> +</context> +<context> + <name>qdesigner_internal::QDesignerWidgetBox</name> + <message> + <source>Unexpected element <%1></source> + <translation>Неочікуваний елемент <%1></translation> + </message> + <message> + <source>A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 +%5</source> + <translation>Під час розбору XML коду, вказаного для віджета %3, сталась помилка в рядку %1, позиція %2: %4 +%5</translation> + </message> + <message> + <source>The XML code specified for the widget %1 does not contain any widget elements. +%2</source> + <translation>XML код, вказаний для віджета %1, не містить жодного елемента віджета. +%2</translation> + </message> + <message> + <source>An error has been encountered at line %1 of %2: %3</source> + <translation>Сталась помилка в рядку %1 з %2: %3</translation> + </message> + <message> + <source>Unexpected element <%1> encountered when parsing for <widget> or <ui></source> + <translation>Під час розбору <widget> або <ui> було знайдено неочікуваний елемент <%1></translation> + </message> + <message> + <source>Unexpected end of file encountered when parsing widgets.</source> + <translation>Під час розбору віджетів несподівано закінчився файл.</translation> + </message> + <message> + <source>A widget element could not be found.</source> + <translation>Неможливо знайти елемент віджета.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::QtGradientStopsController</name> + <message> + <source>H</source> + <translation>H</translation> + </message> + <message> + <source>S</source> + <translation>S</translation> + </message> + <message> + <source>V</source> + <translation>V</translation> + </message> + <message> + <source>Hue</source> + <translation>Відтінок</translation> + </message> + <message> + <source>Sat</source> + <translation>Насиченість</translation> + </message> + <message> + <source>Val</source> + <translation>Значення</translation> + </message> + <message> + <source>Saturation</source> + <translation>Насиченість</translation> + </message> + <message> + <source>Value</source> + <translation>Значення</translation> + </message> + <message> + <source>R</source> + <translation>R</translation> + </message> + <message> + <source>G</source> + <translation>G</translation> + </message> + <message> + <source>B</source> + <translation>B</translation> + </message> + <message> + <source>Red</source> + <translation>Червоний</translation> + </message> + <message> + <source>Green</source> + <translation>Зелений</translation> + </message> + <message> + <source>Blue</source> + <translation>Блакитний</translation> + </message> +</context> +<context> + <name>qdesigner_internal::RichTextEditorDialog</name> + <message> + <source>Edit text</source> + <translation>Редагувати текст</translation> + </message> + <message> + <source>Rich Text</source> + <translation>Форматований текст</translation> + </message> + <message> + <source>Source</source> + <translation>Код</translation> + </message> + <message> + <source>&OK</source> + <translation>&OK</translation> + </message> + <message> + <source>&Cancel</source> + <translation>&Скасувати</translation> + </message> +</context> +<context> + <name>qdesigner_internal::RichTextEditorToolBar</name> + <message> + <source>Bold</source> + <translation>Жирний</translation> + </message> + <message> + <source>CTRL+B</source> + <translation></translation> + </message> + <message> + <source>Italic</source> + <translation>Курсив</translation> + </message> + <message> + <source>CTRL+I</source> + <translation></translation> + </message> + <message> + <source>Underline</source> + <translation>Підкреслений</translation> + </message> + <message> + <source>CTRL+U</source> + <translation></translation> + </message> + <message> + <source>Left Align</source> + <translation>Вліво</translation> + </message> + <message> + <source>Center</source> + <translation>По центру</translation> + </message> + <message> + <source>Right Align</source> + <translation>Вправо</translation> + </message> + <message> + <source>Justify</source> + <translation>По ширині</translation> + </message> + <message> + <source>Superscript</source> + <translation>Верхній індекс</translation> + </message> + <message> + <source>Subscript</source> + <translation>Нижній індекс</translation> + </message> + <message> + <source>Insert &Link</source> + <translation>Вставити &посилання</translation> + </message> + <message> + <source>Insert &Image</source> + <translation>Вставити &зображення</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ScriptDialog</name> + <message> + <source>Edit script</source> + <translation>Редагування скрипту</translation> + </message> + <message> + <source><html>Enter a Qt Script snippet to be executed while loading the form.<br>The widget and its children are accessible via the variables <i>widget</i> and <i>childWidgets</i>, respectively.</source> + <translation><html>Введіть фрагмент коду Qt Script, що має виконуватись під час завантаження форми.<br>Віджет та його діти доступні через змінні <i>widget</i> та <i>childWidgets</i>, відповідно.</translation> + </message> + <message> + <source>Syntax error</source> + <translation>Синтаксична помилка</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ScriptErrorDialog</name> + <message> + <source>Script errors</source> + <translation>Помилки скрипту</translation> + </message> +</context> +<context> + <name>qdesigner_internal::SignalSlotDialog</name> + <message> + <source>There is already a slot with the signature '%1'.</source> + <translation>Вже існує слот з сигнатурою '%1'.</translation> + </message> + <message> + <source>There is already a signal with the signature '%1'.</source> + <translation>Вже існує сигнал з сигнатурою '%1'.</translation> + </message> + <message> + <source>%1 - Duplicate Signature</source> + <translation>%1 - Повторна сигнатура</translation> + </message> + <message> + <source>Signals/Slots of %1</source> + <translation>Сигнали/слоти %1</translation> + </message> +</context> +<context> + <name>qdesigner_internal::SignalSlotEditorPlugin</name> + <message> + <source>Edit Signals/Slots</source> + <translation>Редагувати сигнали/слоти</translation> + </message> + <message> + <source>F4</source> + <translation>F4</translation> + </message> +</context> +<context> + <name>qdesigner_internal::SignalSlotEditorTool</name> + <message> + <source>Edit Signals/Slots</source> + <translation>Редагувати сигнали/слоти</translation> + </message> +</context> +<context> + <name>qdesigner_internal::StatusBarTaskMenu</name> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> +</context> +<context> + <name>qdesigner_internal::StringListEditorButton</name> + <message> + <source>Change String List</source> + <translation>Змінити список рядків</translation> + </message> +</context> +<context> + <name>qdesigner_internal::StyleSheetEditorDialog</name> + <message> + <source>Valid Style Sheet</source> + <translation>Коректна таблиця стилів</translation> + </message> + <message> + <source>Add Resource...</source> + <translation>Додати ресурс...</translation> + </message> + <message> + <source>Add Gradient...</source> + <translation>Додати градієнт...</translation> + </message> + <message> + <source>Add Color...</source> + <translation>Додати колір...</translation> + </message> + <message> + <source>Add Font...</source> + <translation>Додати шрифт...</translation> + </message> + <message> + <source>Edit Style Sheet</source> + <translation>Редагувати таблицю стилів</translation> + </message> + <message> + <source>Invalid Style Sheet</source> + <translation>Неправильна таблиця стилів</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TabOrderEditor</name> + <message> + <source>Start from Here</source> + <translation>Почати звідси</translation> + </message> + <message> + <source>Restart</source> + <translation>Почати спочатку</translation> + </message> + <message> + <source>Tab Order List...</source> + <translation>Список порядку обходу...</translation> + </message> + <message> + <source>Tab Order List</source> + <translation>Список порядку обходу</translation> + </message> + <message> + <source>Tab Order</source> + <translation>Порядок обходу</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TabOrderEditorPlugin</name> + <message> + <source>Edit Tab Order</source> + <translation>Редагувати порядок обходу</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TabOrderEditorTool</name> + <message> + <source>Edit Tab Order</source> + <translation>Редагувати порядок обходу</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TableWidgetEditor</name> + <message> + <source>Edit Table Widget</source> + <translation>Редагування віджета "Таблиця"</translation> + </message> + <message> + <source>&Items</source> + <translation>&Елементи</translation> + </message> + <message> + <source>Table Items</source> + <translation>Елементи таблиці</translation> + </message> + <message> + <source>Properties &>></source> + <translation>Властивост&і >></translation> + </message> + <message> + <source>New Column</source> + <translation>Новий стовпчик</translation> + </message> + <message> + <source>New Row</source> + <translation>Новий рядок</translation> + </message> + <message> + <source>&Columns</source> + <translation>&Стовпці</translation> + </message> + <message> + <source>&Rows</source> + <translation>&Рядки</translation> + </message> + <message> + <source>Properties &<<</source> + <translation>Властивост&і <<</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TableWidgetTaskMenu</name> + <message> + <source>Edit Items...</source> + <translation>Редагувати елементи...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TemplateOptionsWidget</name> + <message> + <source>Form</source> + <translation>Форма</translation> + </message> + <message> + <source>Additional Template Paths</source> + <translation>Додаткові шляхи до шаблонів</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Pick a directory to save templates in</source> + <translation>Виберіть теку для збереження шаблонів</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TextEditTaskMenu</name> + <message> + <source>Edit HTML</source> + <translation>Редагувати HTML</translation> + </message> + <message> + <source>Change HTML...</source> + <translation>Змінити HTML...</translation> + </message> + <message> + <source>Edit Text</source> + <translation>Редагувати текст</translation> + </message> + <message> + <source>Change Plain Text...</source> + <translation>Змінити простий текст...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TextEditor</name> + <message> + <source>Choose Resource...</source> + <translation>Оберіть ресурс...</translation> + </message> + <message> + <source>Choose File...</source> + <translation>Оберіть файл...</translation> + </message> + <message> + <source>...</source> + <translation>...</translation> + </message> + <message> + <source>Choose a File</source> + <translation>Оберіть файл</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ToolBarEventFilter</name> + <message> + <source>Insert Separator before '%1'</source> + <translation>Вставити розділювач перед %1</translation> + </message> + <message> + <source>Append Separator</source> + <translation>Приєднати розділювач</translation> + </message> + <message> + <source>Remove action '%1'</source> + <translation>Видалити дію '%1'</translation> + </message> + <message> + <source>Remove Toolbar '%1'</source> + <translation>Видалити панель інструментів '%1'</translation> + </message> + <message> + <source>Insert Separator</source> + <translation>Вставити розділювач</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TreeWidgetEditor</name> + <message> + <source>Edit Tree Widget</source> + <translation>Редагування віджета "Дерево"</translation> + </message> + <message> + <source>&Items</source> + <translation>&Елементи</translation> + </message> + <message> + <source>Tree Items</source> + <translation>Елементи дерева</translation> + </message> + <message> + <source>1</source> + <translation>1</translation> + </message> + <message> + <source>New Item</source> + <translation>Новий елемент</translation> + </message> + <message> + <source>&New</source> + <translation>&Новий</translation> + </message> + <message> + <source>New Subitem</source> + <translation>Новий піделемент</translation> + </message> + <message> + <source>New &Subitem</source> + <translation>Новий &піделемент</translation> + </message> + <message> + <source>Delete Item</source> + <translation>Видалити елемент</translation> + </message> + <message> + <source>&Delete</source> + <translation>Ви&далити</translation> + </message> + <message> + <source>Move Item Left (before Parent Item)</source> + <translation>Пересунути елемент вліво (перед батьківським)</translation> + </message> + <message> + <source>L</source> + <translation>Л</translation> + </message> + <message> + <source>Move Item Right (as a First Subitem of the Next Sibling Item)</source> + <translation>Пересунути елемент вправо (як перший піделемент наступного сусіда)</translation> + </message> + <message> + <source>R</source> + <translation>П</translation> + </message> + <message> + <source>Move Item Up</source> + <translation>Пересунути елемент вгору</translation> + </message> + <message> + <source>U</source> + <translation>В</translation> + </message> + <message> + <source>Move Item Down</source> + <translation>Пересунути елемент вниз</translation> + </message> + <message> + <source>D</source> + <translation>Н</translation> + </message> + <message> + <source>Properties &>></source> + <translation>Властивост&і >></translation> + </message> + <message> + <source>New Column</source> + <translation>Новий стовпчик</translation> + </message> + <message> + <source>&Columns</source> + <translation>&Стовпці</translation> + </message> + <message> + <source>Per column properties</source> + <translation>Властивості стовпця</translation> + </message> + <message> + <source>Common properties</source> + <translation>Загальні властивості</translation> + </message> + <message> + <source>Properties &<<</source> + <translation>Властивост&і <<</translation> + </message> +</context> +<context> + <name>qdesigner_internal::TreeWidgetTaskMenu</name> + <message> + <source>Edit Items...</source> + <translation>Редагувати елементи...</translation> + </message> +</context> +<context> + <name>qdesigner_internal::WidgetBox</name> + <message> + <source>Warning: Widget creation failed in the widget box. This could be caused by invalid custom widget XML.</source> + <translation>Попередження: Збій створення віджета в панелі віджетів. Причиною цього може бути неправильний XML користувацького віджета.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::WidgetBoxTreeWidget</name> + <message> + <source>Scratchpad</source> + <translation>Нотатник</translation> + </message> + <message> + <source>Custom Widgets</source> + <translation>Віджети користувача</translation> + </message> + <message> + <source>Expand all</source> + <translation>Розгорнути все</translation> + </message> + <message> + <source>Collapse all</source> + <translation>Згорнути все</translation> + </message> + <message> + <source>List View</source> + <translation>Списком</translation> + </message> + <message> + <source>Icon View</source> + <translation>Значками</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>Edit name</source> + <translation>Редагувати ім'я</translation> + </message> +</context> +<context> + <name>qdesigner_internal::WidgetDataBase</name> + <message> + <source>A custom widget plugin whose class name (%1) matches that of an existing class has been found.</source> + <translation>Користувацький додаток віджета з іменем класу (%1) співпадає з існуючим класом.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::WidgetEditorTool</name> + <message> + <source>Edit Widgets</source> + <translation>Редагувати віджети</translation> + </message> +</context> +<context> + <name>qdesigner_internal::WidgetFactory</name> + <message> + <source>The custom widget factory registered for widgets of class %1 returned 0.</source> + <translation>Користувацька фабрика віджетів, що зареєстрована для класу %1, повернула 0.</translation> + </message> + <message> + <source>A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2.</source> + <translation>Сталося неспівпадіння імені класу під час створення віджета, використовуючи користувацьку фабрику віджетів, що зареєстрована для класу %1. Вона повернула віджет класу %2.</translation> + </message> + <message> + <source>%1 Widget</source> + <translation>Віджет %1</translation> + </message> + <message> + <source>The current page of the container '%1' (%2) could not be determined while creating a layout.This indicates an inconsistency in the ui-file, probably a layout being constructed on a container widget.</source> + <translation>Неможливо визначити поточну сторінку контейнера '%1' (%2) під час створення розташування. Це вказує на некоректність файлу UI, можливо, розташування було створене на контейнерному віджеті.</translation> + </message> + <message> + <source>Attempt to add a layout to a widget '%1' (%2) which already has an unmanaged layout of type %3. +This indicates an inconsistency in the ui-file.</source> + <translation>Спроба додати розташування для віджета '%1' (%2), який вже має некероване розташування %3. +Це вказує на некоректність в файлі UI.</translation> + </message> + <message> + <source>Cannot create style '%1'.</source> + <translation>Неможливо створити стиль '%1'.</translation> + </message> +</context> +<context> + <name>qdesigner_internal::WizardContainerWidgetTaskMenu</name> + <message> + <source>Next</source> + <translation>Далі</translation> + </message> + <message> + <source>Back</source> + <translation>Назад</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ZoomMenu</name> + <message> + <source>%1 %</source> + <extracomment>Zoom factor</extracomment> + <translation>%1 %</translation> + </message> +</context> +<context> + <name>qdesigner_internal::ZoomablePreviewDeviceSkin</name> + <message> + <source>&Zoom</source> + <translation>Масштаб</translation> + </message> +</context> +</TS> diff --git a/translations/linguist_uk.ts b/translations/linguist_uk.ts new file mode 100644 index 0000000..92d16dd --- /dev/null +++ b/translations/linguist_uk.ts @@ -0,0 +1,1602 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.0" language="uk_UA"> +<context> + <name>AboutDialog</name> + <message> + <source>Qt Linguist</source> + <translation>Qt Linguist</translation> + </message> +</context> +<context> + <name>BatchTranslationDialog</name> + <message> + <source>Qt Linguist - Batch Translation</source> + <translation>Qt Linguist - Пакетний переклад</translation> + </message> + <message> + <source>Options</source> + <translation>Опції</translation> + </message> + <message> + <source>Set translated entries to finished</source> + <translation>Помічати перекладені елементи як завершені</translation> + </message> + <message> + <source>Retranslate entries with existing translation</source> + <translation>Повторно перекласти елементи, що вже мають переклад</translation> + </message> + <message> + <source>Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked</source> + <translation>Майте на увазі, що модифіковані елементи будуть помічені як незавершені, якщо параметр 'Помічати перекладені елементи як завершені' вимкнено</translation> + </message> + <message> + <source>Translate also finished entries</source> + <translation>Перекладати також завершені елементи</translation> + </message> + <message> + <source>Phrase book preference</source> + <translation>Використання глосарію</translation> + </message> + <message> + <source>Move up</source> + <translation>Вгору</translation> + </message> + <message> + <source>Move down</source> + <translation>Вниз</translation> + </message> + <message> + <source>The batch translator will search through the selected phrase books in the order given above</source> + <translation>Пакетний перекладач буде шукати серед обраних глосаріїв у вказаному вище порядку</translation> + </message> + <message> + <source>&Run</source> + <translation>&Запустити</translation> + </message> + <message> + <source>Cancel</source> + <translation>Скасувати</translation> + </message> + <message> + <source>Batch Translation of '%1' - Qt Linguist</source> + <translation>Пакетний переклад '%1' - Qt Linguist</translation> + </message> + <message> + <source>Searching, please wait...</source> + <translation>Здійснюється пошук, будь-ласка, зачекайте...</translation> + </message> + <message> + <source>&Cancel</source> + <translation>&Скасувати</translation> + </message> + <message> + <source>Linguist batch translator</source> + <translation>Пакетний переклад Linguist'а</translation> + </message> + <message numerus="yes"> + <source>Batch translated %n entries</source> + <translation> + <numerusform>Пакетно перекладено %n елемент</numerusform> + <numerusform>Пакетно перекладено %n елементи</numerusform> + <numerusform>Пакетно перекладено %n елементів</numerusform> + </translation> + </message> +</context> +<context> + <name>DataModel</name> + <message> + <source><qt>Duplicate messages found in '%1':</source> + <translation><qt>Повідомлення-дублікати знайдено в '%1':</translation> + </message> + <message> + <source><p>[more duplicates omitted]</source> + <translation><p>[решта дублікатів пропущено]</translation> + </message> + <message> + <source><p>* ID: %1</source> + <translation><p>* ID: %1</translation> + </message> + <message> + <source><p>* Context: %1<br>* Source: %2</source> + <translation><p>* Контекст: %1<br>* Оригінал: %2</translation> + </message> + <message> + <source><br>* Comment: %3</source> + <translation><br>* Коментар: %3</translation> + </message> + <message> + <source>Linguist does not know the plural rules for '%1'. +Will assume a single universal form.</source> + <translation>Linguist не знає правил множини для '%1'. +Буде застосована універсальна форма однини.</translation> + </message> + <message> + <source>Cannot create '%2': %1</source> + <translation>Не можу створити '%2': %1</translation> + </message> + <message> + <source>Universal Form</source> + <translation>Універсальна форма</translation> + </message> +</context> +<context> + <name>ErrorsView</name> + <message> + <source>Accelerator possibly superfluous in translation.</source> + <translation>В перекладі, можливо, пропущено акселератор.</translation> + </message> + <message> + <source>Accelerator possibly missing in translation.</source> + <translation>В перекладі, можливо, пропущено акселератор.</translation> + </message> + <message> + <source>Translation does not end with the same punctuation as the source text.</source> + <translation>Переклад не закінчується тим самим знаком пунктуації, що й оригінал.</translation> + </message> + <message> + <source>A phrase book suggestion for '%1' was ignored.</source> + <translation>Пропозицію глосарію для '%1' було проігноровано.</translation> + </message> + <message> + <source>Translation does not refer to the same place markers as in the source text.</source> + <translation>Переклад не містить тих самих маркерів позиції, що й оригінал.</translation> + </message> + <message> + <source>Translation does not contain the necessary %n place marker.</source> + <translation>Переклад не містить необхідних маркерів позиції %n.</translation> + </message> + <message> + <source>Unknown error</source> + <translation>Невідома помилка</translation> + </message> +</context> +<context> + <name>FindDialog</name> + <message> + <source>Find</source> + <translation>Знайти</translation> + </message> + <message> + <source>This window allows you to search for some text in the translation source file.</source> + <translation>Це вікно дозволяє вам шукати текст в файлі перекладу.</translation> + </message> + <message> + <source>&Find what:</source> + <translation>&Шукати:</translation> + </message> + <message> + <source>Type in the text to search for.</source> + <translation>Введіть текст для пошуку.</translation> + </message> + <message> + <source>Options</source> + <translation>Опції</translation> + </message> + <message> + <source>Source texts are searched when checked.</source> + <translation>Якщо відмічено, то пошук здійснюватиметься серед оригінальних текстів.</translation> + </message> + <message> + <source>&Source texts</source> + <translation>&Оригінальні тексти</translation> + </message> + <message> + <source>Translations are searched when checked.</source> + <translation>Якщо відмічено, то пошук здійснюватиметься серед перекладів.</translation> + </message> + <message> + <source>&Translations</source> + <translation>&Переклади</translation> + </message> + <message> + <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> + <translation>Якщо відмічено, то рядки 'приклад' та 'прИкЛад' будуть вважатись різними.</translation> + </message> + <message> + <source>&Match case</source> + <translation>Враховувати &регістр</translation> + </message> + <message> + <source>Comments and contexts are searched when checked.</source> + <translation>Якщо відмічено, то пошук здійснюватиметься серед коментарів та контекстів.</translation> + </message> + <message> + <source>&Comments</source> + <translation>&Коментарі</translation> + </message> + <message> + <source>Ignore &accelerators</source> + <translation>Ігнорувати &акселератори</translation> + </message> + <message> + <source>Click here to find the next occurrence of the text you typed in.</source> + <translation>Клацніть тут, щоб знайти наступне співпадіння для введеного вами тексту.</translation> + </message> + <message> + <source>Find Next</source> + <translation>Знайти наступний</translation> + </message> + <message> + <source>Click here to close this window.</source> + <translation>Клацніть тут щоб закрити вікно.</translation> + </message> + <message> + <source>Cancel</source> + <translation>Скасувати</translation> + </message> + <message> + <source></source> + <comment>Choose Edit|Find from the menu bar or press Ctrl+F to pop up the Find dialog</comment> + <translatorcomment>Виберіть Правка|Пошук з головного меню чи натисніть Ctrl+F, щоб відкрити діалог пошуку</translatorcomment> + <translation></translation> + </message> +</context> +<context> + <name>FormMultiWidget</name> + <message> + <source>Alt+Delete</source> + <extracomment>translate, but don't change</extracomment> + <translation></translation> + </message> + <message> + <source>Shift+Alt+Insert</source> + <extracomment>translate, but don't change</extracomment> + <translation></translation> + </message> + <message> + <source>Alt+Insert</source> + <extracomment>translate, but don't change</extracomment> + <translation></translation> + </message> + <message> + <source>Confirmation - Qt Linguist</source> + <translation>Підтвердження - Qt Linguist</translation> + </message> + <message> + <source>Delete non-empty length variant?</source> + <translation>Видалити непустий варіант перекладу?</translation> + </message> +</context> +<context> + <name>LRelease</name> + <message numerus="yes"> + <source>Dropped %n message(s) which had no ID.</source> + <translation> + <numerusform>Видалено %n повідомлення, яке не має ID.</numerusform> + <numerusform>Видалено %n повідомлення, які не мають ID.</numerusform> + <numerusform>Видалено %n повідомлень, які не мають ID.</numerusform> + </translation> + </message> + <message numerus="yes"> + <source>Excess context/disambiguation dropped from %n message(s).</source> + <translation> + <numerusform>Видалено зайвий контекст/неоднозначність з %n повідомлення.</numerusform> + <numerusform>Видалено зайвий контекст/неоднозначність з %n повідомлень.</numerusform> + <numerusform>Видалено зайвий контекст/неоднозначність з %n повідомлень.</numerusform> + </translation> + </message> + <message numerus="yes"> + <source> Generated %n translation(s) (%1 finished and %2 unfinished)</source> + <translation> + <numerusform> Згенеровано %n переклад (%1 завершено та %2 незавершено)</numerusform> + <numerusform> Згенеровано %n переклади (%1 завершено та %2 незавершено)</numerusform> + <numerusform> Згенеровано %n перекладів (%1 завершено та %2 незавершено)</numerusform> + </translation> + </message> + <message numerus="yes"> + <source> Ignored %n untranslated source text(s)</source> + <translation> + <numerusform> Зігноровано %n неперекладений оригінальний текст</numerusform> + <numerusform> Зігноровано %n неперекладені оригінальні тексти</numerusform> + <numerusform> Зігноровано %n неперекладених оригінальних текстів</numerusform> + </translation> + </message> +</context> +<context> + <name>MainWindow</name> + <message> + <source>MainWindow</source> + <translation>Головне вікно</translation> + </message> + <message> + <source>&Phrases</source> + <translation>Фра&зи</translation> + </message> + <message> + <source>&Close Phrase Book</source> + <translation>&Закрити глосарій</translation> + </message> + <message> + <source>&Edit Phrase Book</source> + <translation>&Редагувати глосарій</translation> + </message> + <message> + <source>&Print Phrase Book</source> + <translation>&Друк глосарію</translation> + </message> + <message> + <source>V&alidation</source> + <translation>Перев&ірка</translation> + </message> + <message> + <source>&View</source> + <translation>&Вид</translation> + </message> + <message> + <source>Vie&ws</source> + <translation>&Види</translation> + </message> + <message> + <source>&Toolbars</source> + <translation>Панелі &інструментів</translation> + </message> + <message> + <source>&Help</source> + <translation>&Довідка</translation> + </message> + <message> + <source>&Translation</source> + <translation>Пере&клад</translation> + </message> + <message> + <source>&File</source> + <translation>&Файл</translation> + </message> + <message> + <source>Recently Opened &Files</source> + <translation>&Нещодавно відкриті файли</translation> + </message> + <message> + <source>&Edit</source> + <translation>&Правка</translation> + </message> + <message> + <source>&Open...</source> + <translation>&Відкрити...</translation> + </message> + <message> + <source>Open a Qt translation source file (TS file) for editing</source> + <translation>Відкрити файл перекладу Qt (файл TS) для редагування</translation> + </message> + <message> + <source>Ctrl+O</source> + <translation></translation> + </message> + <message> + <source>E&xit</source> + <translation>Ви&йти</translation> + </message> + <message> + <source>Close this window and exit.</source> + <translation>Закрити вікно та вийти.</translation> + </message> + <message> + <source>Ctrl+Q</source> + <translation></translation> + </message> + <message> + <source>Save</source> + <translation>Зберегти</translation> + </message> + <message> + <source>Save changes made to this Qt translation source file</source> + <translation>Зберегти зміни зроблені до цього файлу перекладу Qt</translation> + </message> + <message> + <source>Save &As...</source> + <translation>Зберегти &як...</translation> + </message> + <message> + <source>Save As...</source> + <translation>Зберегти як...</translation> + </message> + <message> + <source>Save changes made to this Qt translation source file into a new file.</source> + <translation>Зберегти зміни зроблені до цього файлу перекладу Qt до нового файлу.</translation> + </message> + <message> + <source>Release</source> + <translation>Скомпілювати</translation> + </message> + <message> + <source>Create a Qt message file suitable for released applications from the current message file.</source> + <translation>Створити файл повідомлень Qt придатний для використання програмами з поточного файлу повідомлень.</translation> + </message> + <message> + <source>&Print...</source> + <translation>&Друк...</translation> + </message> + <message> + <source>Print a list of all the translation units in the current translation source file.</source> + <translation>Друкувати список усіх елементів перекладу з поточного файлу перекладу.</translation> + </message> + <message> + <source>Ctrl+P</source> + <translation></translation> + </message> + <message> + <source>&Undo</source> + <translation>&Повернути</translation> + </message> + <message> + <source>Undo the last editing operation performed on the current translation.</source> + <translation>Скасувати останню операцію редагування здійснену над поточним перекладом.</translation> + </message> + <message> + <source>Ctrl+Z</source> + <translation></translation> + </message> + <message> + <source>&Redo</source> + <translation>П&овторити</translation> + </message> + <message> + <source>Redo an undone editing operation performed on the translation.</source> + <translation>Повторити скасовану операцію редагування здійснену над поточним перекладом.</translation> + </message> + <message> + <source>Ctrl+Y</source> + <translation></translation> + </message> + <message> + <source>Cu&t</source> + <translation>Ви&різати</translation> + </message> + <message> + <source>Copy the selected translation text to the clipboard and deletes it.</source> + <translation>Копіювати виділений текст перекладу в буфер обміну та видалити його.</translation> + </message> + <message> + <source>Ctrl+X</source> + <translation></translation> + </message> + <message> + <source>&Copy</source> + <translation>&Копіювати</translation> + </message> + <message> + <source>Copy the selected translation text to the clipboard.</source> + <translation>Копіювати виділений текст перекладу до буферу обміну.</translation> + </message> + <message> + <source>Ctrl+C</source> + <translation></translation> + </message> + <message> + <source>&Paste</source> + <translation>&Вставити</translation> + </message> + <message> + <source>Paste the clipboard text into the translation.</source> + <translation>Вставити текст з буферу обміну до перекладу.</translation> + </message> + <message> + <source>Ctrl+V</source> + <translation></translation> + </message> + <message> + <source>Select &All</source> + <translation>Виділити в&се</translation> + </message> + <message> + <source>Select the whole translation text.</source> + <translation>Виділити все текст перекладу.</translation> + </message> + <message> + <source>Ctrl+A</source> + <translation></translation> + </message> + <message> + <source>&Find...</source> + <translation>&Знайти...</translation> + </message> + <message> + <source>Search for some text in the translation source file.</source> + <translation>Шукати деякий текст в файлі перекладу.</translation> + </message> + <message> + <source>Ctrl+F</source> + <translation></translation> + </message> + <message> + <source>Find &Next</source> + <translation>Знайти &наступне</translation> + </message> + <message> + <source>Continue the search where it was left.</source> + <translation>Продовжити пошук з місця, де він був зупинений.</translation> + </message> + <message> + <source>F3</source> + <translation></translation> + </message> + <message> + <source>&Prev Unfinished</source> + <translation>&Попередній незавершений</translation> + </message> + <message> + <source>Previous unfinished item</source> + <translation>Попередній незавершений елемент</translation> + </message> + <message> + <source>Move to the previous unfinished item.</source> + <translation>Перейти до попереднього незавершеного елементу.</translation> + </message> + <message> + <source>Ctrl+K</source> + <translation></translation> + </message> + <message> + <source>&Next Unfinished</source> + <translation>&Наступний незавершений</translation> + </message> + <message> + <source>Next unfinished item</source> + <translation>Наступний незавершений елемент</translation> + </message> + <message> + <source>Move to the next unfinished item.</source> + <translation>Перейти до наступного незавершеного елементу.</translation> + </message> + <message> + <source>Ctrl+J</source> + <translation></translation> + </message> + <message> + <source>P&rev</source> + <translation>П&опередній</translation> + </message> + <message> + <source>Move to previous item</source> + <translation>Перейти до попереднього елементу</translation> + </message> + <message> + <source>Move to the previous item.</source> + <translation>Перейти до попереднього елементу.</translation> + </message> + <message> + <source>Ctrl+Shift+K</source> + <translation></translation> + </message> + <message> + <source>Ne&xt</source> + <translation>Н&аступний</translation> + </message> + <message> + <source>Next item</source> + <translation>Наступний елемент</translation> + </message> + <message> + <source>Move to the next item.</source> + <translation>Перейти до наступного елементу.</translation> + </message> + <message> + <source>Ctrl+Shift+J</source> + <translation></translation> + </message> + <message> + <source>&Done and Next</source> + <translation>&Готово і наступний</translation> + </message> + <message> + <source>Mark item as done and move to the next unfinished item</source> + <translation>Помітити елемент як завершений та перейти до наступного незавершеного елементу</translation> + </message> + <message> + <source>Mark this item as done and move to the next unfinished item.</source> + <translation>Помітити цей елемент як завершений та перейти до наступного незавершеного елементу.</translation> + </message> + <message> + <source>Copy from source text</source> + <translation>Копіювати з оригінального тексту</translation> + </message> + <message> + <source>Copies the source text into the translation field</source> + <translation>Копіює оригінальний текст в поле перекладу</translation> + </message> + <message> + <source>Copies the source text into the translation field.</source> + <translation>Копіює оригінальний текст в поле перекладу.</translation> + </message> + <message> + <source>Ctrl+B</source> + <translation></translation> + </message> + <message> + <source>&Accelerators</source> + <translation>&Акселератори</translation> + </message> + <message> + <source>Toggle the validity check of accelerators</source> + <translation>Перемикання перевірки правильності акселераторів</translation> + </message> + <message> + <source>Toggle the validity check of accelerators, i.e. whether the number of ampersands in the source and translation text is the same. If the check fails, a message is shown in the warnings window.</source> + <translation>Перемикання перевірки акселераторів, тобто чи співпадає кількість амперсандів в оригінальному та перекладеному тексті. Якщо виявлено неспівпадіння, то у вікні попереджень буде показано повідомлення.</translation> + </message> + <message> + <source>&Ending Punctuation</source> + <translation>&Кінцева пунктуація</translation> + </message> + <message> + <source>Toggle the validity check of ending punctuation</source> + <translation>Перемикання перевірки правильності кінцевої пунктуації</translation> + </message> + <message> + <source>Toggle the validity check of ending punctuation. If the check fails, a message is shown in the warnings window.</source> + <translation>Перемикання перевірки кінцевої пунктуації. Якщо виявлено неспівпадіння, то у вікні попереджень буде показано повідомлення.</translation> + </message> + <message> + <source>&Phrase matches</source> + <translation>Співпадіння &фраз</translation> + </message> + <message> + <source>Toggle checking that phrase suggestions are used</source> + <translation>Перемикання перевірки, що пропозиції фраз були застосовані</translation> + </message> + <message> + <source>Toggle checking that phrase suggestions are used. If the check fails, a message is shown in the warnings window.</source> + <translation>Перемикання перевірки про використання запропонованих фраз. Якщо виявлено неспівпадіння, то у вікні попереджень буде показано повідомлення.</translation> + </message> + <message> + <source>Place &Marker Matches</source> + <translation>Співпадіння &маркерів положення</translation> + </message> + <message> + <source>Toggle the validity check of place markers</source> + <translation>Перемикання перевірки правильності маркерів розташування</translation> + </message> + <message> + <source>Toggle the validity check of place markers, i.e. whether %1, %2, ... are used consistently in the source text and translation text. If the check fails, a message is shown in the warnings window.</source> + <translation>Перемикання перевірки правильності маркерів розташування, тобто чи усі %1, %2, ... співпадають в оригінальному та перекладеному тексті. Якщо виявлено неспівпадіння, то у вікні попереджень буде показано повідомлення.</translation> + </message> + <message> + <source>&New Phrase Book...</source> + <translation>&Новий глосарій...</translation> + </message> + <message> + <source>Create a new phrase book.</source> + <translation>Створити новий глосарій.</translation> + </message> + <message> + <source>Ctrl+N</source> + <translation></translation> + </message> + <message> + <source>&Open Phrase Book...</source> + <translation>&Відкрити глосарій...</translation> + </message> + <message> + <source>Open a phrase book to assist translation.</source> + <translation>Відкрити глосарій для допомоги в перекладі.</translation> + </message> + <message> + <source>Ctrl+H</source> + <translation></translation> + </message> + <message> + <source>&Reset Sorting</source> + <translation>С&кинути сортування</translation> + </message> + <message> + <source>Sort the items back in the same order as in the message file.</source> + <translation>Сортувати елементи в тому ж порядку, що й в файлі повідомлень.</translation> + </message> + <message> + <source>&Display guesses</source> + <translation>&Показувати підказки</translation> + </message> + <message> + <source>Set whether or not to display translation guesses.</source> + <translation>Встановлює показувати чи ні підказки перекладу.</translation> + </message> + <message> + <source>&Statistics</source> + <translation>&Статистика</translation> + </message> + <message> + <source>Display translation statistics.</source> + <translation>Показати статистку перекладу.</translation> + </message> + <message> + <source>&Manual</source> + <translation>&Посібник</translation> + </message> + <message> + <source>F1</source> + <translation></translation> + </message> + <message> + <source>About Qt Linguist</source> + <translation>Про Qt Linguist</translation> + </message> + <message> + <source>About Qt</source> + <translation>Про Qt</translation> + </message> + <message> + <source>Display information about the Qt toolkit by Nokia.</source> + <translation>Показати інформацію про інструментарій Qt від Nokia.</translation> + </message> + <message> + <source>&What's This?</source> + <translation>&Що це?</translation> + </message> + <message> + <source>What's This?</source> + <translation>Що це?</translation> + </message> + <message> + <source>Enter What's This? mode.</source> + <translation>Перехід в режим "Що це?".</translation> + </message> + <message> + <source>Shift+F1</source> + <translation>Shift+F1</translation> + </message> + <message> + <source>&Search And Translate...</source> + <translation>Знайти &та перекласти...</translation> + </message> + <message> + <source>Replace the translation on all entries that matches the search source text.</source> + <translation>Замінити переклад усіх елементів, що співпадають з оригінальним текстом, що шукається.</translation> + </message> + <message> + <source>&Batch Translation...</source> + <translation>Пакетний перекла&д...</translation> + </message> + <message> + <source>Batch translate all entries using the information in the phrase books.</source> + <translation>Пакетно перекласти усі елементи використовуючи інформацію з глосаріїв.</translation> + </message> + <message> + <source>Release As...</source> + <translation>Скомпілювати як...</translation> + </message> + <message> + <source>Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the TS file.</source> + <translation>Створення файла повідомлень Qt придатного для використання програмами з поточного файлу повідомлень. Ім'я файла буде автоматично визначено з імені файлу TS.</translation> + </message> + <message> + <source>File</source> + <translation>Файл</translation> + </message> + <message> + <source>Edit</source> + <translation>Правка</translation> + </message> + <message> + <source>Translation</source> + <translation>Переклад</translation> + </message> + <message> + <source>Validation</source> + <translation>Перевірка</translation> + </message> + <message> + <source>Help</source> + <translation>Довідка</translation> + </message> + <message> + <source>Open/Refresh Form &Preview</source> + <translation>&Відкрити/оновити попередній перегляд форм</translation> + </message> + <message> + <source>Form Preview Tool</source> + <translation>Засіб попереднього перегляду форм</translation> + </message> + <message> + <source>F5</source> + <translation></translation> + </message> + <message> + <source>Translation File &Settings...</source> + <translation>Налаштування &файлу перекладу...</translation> + </message> + <message> + <source>&Add to Phrase Book</source> + <translation>Дод&ати до глосарію</translation> + </message> + <message> + <source>Ctrl+T</source> + <translation></translation> + </message> + <message> + <source>Open Read-O&nly...</source> + <translation>Відкрити лише для &читання...</translation> + </message> + <message> + <source>&Save All</source> + <translation>&Зберегти усе</translation> + </message> + <message> + <source>Ctrl+S</source> + <translation></translation> + </message> + <message> + <source>&Release All</source> + <translation>&Скомпілювати все</translation> + </message> + <message> + <source>Close</source> + <translation>Закрити</translation> + </message> + <message> + <source>&Close All</source> + <translation>З&акрити усе</translation> + </message> + <message> + <source>Ctrl+W</source> + <translation></translation> + </message> + <message> + <source>Length Variants</source> + <translation>Варіанти перекладу</translation> + </message> + <message> + <source></source> + <comment>This is the application's main window.</comment> + <translatorcomment>Це головне вікно програми.</translatorcomment> + <translation></translation> + </message> + <message> + <source>Source text</source> + <translation>Оригінальний текст</translation> + </message> + <message> + <source>Index</source> + <translation>Індекс</translation> + </message> + <message> + <source>Context</source> + <translation>Контекст</translation> + </message> + <message> + <source>Items</source> + <translation>Елементи</translation> + </message> + <message> + <source>This panel lists the source contexts.</source> + <translation>В цій панелі перераховані оригінальні контексти.</translation> + </message> + <message> + <source>Strings</source> + <translation>Рядки</translation> + </message> + <message> + <source>Phrases and guesses</source> + <translation>Фрази та підказки</translation> + </message> + <message> + <source>Sources and Forms</source> + <translation>Коди та форми</translation> + </message> + <message> + <source>Warnings</source> + <translation>Попередження</translation> + </message> + <message> + <source> MOD </source> + <comment>status bar: file(s) modified</comment> + <translation> ЗМІ </translation> + </message> + <message> + <source>Loading...</source> + <translation>Завантажується...</translation> + </message> + <message> + <source>Loading File - Qt Linguist</source> + <translation>Завантаження файлу - Qt Linguist</translation> + </message> + <message> + <source>The file '%1' does not seem to be related to the currently open file(s) '%2'. + +Close the open file(s) first?</source> + <translation>Не схоже, що файл '%1' пов'язаний з жодним з відкритим зараз файлом '%2'. + +Закрити спочатку відкриті файли?</translation> + </message> + <message> + <source>The file '%1' does not seem to be related to the file '%2' which is being loaded as well. + +Skip loading the first named file?</source> + <translation>Не схоже, що файл '%1' пов'язаний з файлом '%2', що також завантажується. + +Пропустити завантаження першого вказаного файлу?</translation> + </message> + <message numerus="yes"> + <source>%n translation unit(s) loaded.</source> + <translation> + <numerusform>%n одиниця перекладу завантажена.</numerusform> + <numerusform>%n одиниці перекладу завантажені.</numerusform> + <numerusform>%n одиниць перекладу завантажено.</numerusform> + </translation> + </message> + <message> + <source>Related files (%1);;</source> + <translation>Пов'язані файли (%1);;</translation> + </message> + <message> + <source>Open Translation Files</source> + <translation>Відкрити файли перекладу</translation> + </message> + <message> + <source>File saved.</source> + <translation>Файл збережено.</translation> + </message> + <message> + <source>Qt message files for released applications (*.qm) +All files (*)</source> + <translation>Файли повідомлень Qt для готовий програм (*.qm) +Всі файли (*)</translation> + </message> + <message> + <source>File created.</source> + <translation>Файл створено.</translation> + </message> + <message> + <source>Printing...</source> + <translation>Друкується...</translation> + </message> + <message> + <source>Context: %1</source> + <translation>Контекст: %1</translation> + </message> + <message> + <source>finished</source> + <translation>завершено</translation> + </message> + <message> + <source>unresolved</source> + <translation>нерозв'язаний</translation> + </message> + <message> + <source>obsolete</source> + <translation>застарілий</translation> + </message> + <message> + <source>Printing... (page %1)</source> + <translation>Друк... (сторінка %1)</translation> + </message> + <message> + <source>Printing completed</source> + <translation>Друк завершено</translation> + </message> + <message> + <source>Printing aborted</source> + <translation>Друк перервано</translation> + </message> + <message> + <source>Search wrapped.</source> + <translation>Пошук з початку.</translation> + </message> + <message> + <source>Qt Linguist</source> + <translation>Qt Linguist</translation> + </message> + <message> + <source>Cannot find the string '%1'.</source> + <translation>Неможливо знайти рядок '%1.</translation> + </message> + <message> + <source>Search And Translate in '%1' - Qt Linguist</source> + <translation>Пошук та переклад і '%1' - Qt Linguist</translation> + </message> + <message> + <source>Translate - Qt Linguist</source> + <translation>Переклад - Qt Linguist</translation> + </message> + <message numerus="yes"> + <source>Translated %n entry(s)</source> + <translation> + <numerusform>Перекладено %n елемент</numerusform> + <numerusform>Перекладено %n елементи</numerusform> + <numerusform>Перекладено %n елементів</numerusform> + </translation> + </message> + <message> + <source>No more occurrences of '%1'. Start over?</source> + <translation>Більше співпадінь '%1' немає. Почати спочатку?</translation> + </message> + <message> + <source>Create New Phrase Book</source> + <translation>Створити новий глосарій</translation> + </message> + <message> + <source>Qt phrase books (*.qph) +All files (*)</source> + <translation>Глосарії Q (*.qph) +Всі файли (*)</translation> + </message> + <message> + <source>Phrase book created.</source> + <translation>Глосарій створено.</translation> + </message> + <message> + <source>Open Phrase Book</source> + <translation>Відкрити глосарій</translation> + </message> + <message> + <source>Qt phrase books (*.qph);;All files (*)</source> + <translation>Глосарії Q (*.qph);;Всі файли (*)</translation> + </message> + <message numerus="yes"> + <source>%n phrase(s) loaded.</source> + <translation> + <numerusform>%n фразу завантажено.</numerusform> + <numerusform>%n фрази завантажено.</numerusform> + <numerusform>%n фраз завантажено.</numerusform> + </translation> + </message> + <message> + <source>Add to phrase book</source> + <translation>Додати до глосарію</translation> + </message> + <message> + <source>No appropriate phrasebook found.</source> + <translation>Не знайдено відповідного глосарію.</translation> + </message> + <message> + <source>Adding entry to phrasebook %1</source> + <translation>Додавання елементу до глосарію %1</translation> + </message> + <message> + <source>Select phrase book to add to</source> + <translation>Оберіть глосарій, в який бажаєте додати</translation> + </message> + <message> + <source>Unable to launch Qt Assistant (%1)</source> + <translation>Неможливо запустити Qt Assistant (%1)</translation> + </message> + <message> + <source>Version %1</source> + <translation>Версія %1</translation> + </message> + <message> + <source><center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> + <translation><center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist - це засіб для додавання перекладів до програм на Qt.</p><p>Copyright (C) 2010 Корпорація Nokia та/або її дочірні компанії.</translation> + </message> + <message> + <source>Do you want to save the modified files?</source> + <translation>Бажаєте зберегти модифіковані файли?</translation> + </message> + <message> + <source>Do you want to save '%1'?</source> + <translation>Бажаєте зберегти '%1'?</translation> + </message> + <message> + <source>Qt Linguist[*]</source> + <translation>Qt Linguist[*]</translation> + </message> + <message> + <source>%1[*] - Qt Linguist</source> + <translation>%1[*] - Qt Linguist</translation> + </message> + <message> + <source>No untranslated translation units left.</source> + <translation>Неперекладених одиниць не залишилось.</translation> + </message> + <message> + <source>&Window</source> + <translation>Вікн&о</translation> + </message> + <message> + <source>Minimize</source> + <translation>Мінімізувати</translation> + </message> + <message> + <source>Ctrl+M</source> + <translation></translation> + </message> + <message> + <source>Display the manual for %1.</source> + <translation>Показати посібник для %1.</translation> + </message> + <message> + <source>Display information about %1.</source> + <translation>Показати інформацію про %1.</translation> + </message> + <message> + <source>&Save '%1'</source> + <translation>&Зберегти '%1'</translation> + </message> + <message> + <source>Save '%1' &As...</source> + <translation>Зберегти '%1' &як...</translation> + </message> + <message> + <source>Release '%1'</source> + <translation>Скомпілювати '%1'</translation> + </message> + <message> + <source>Release '%1' As...</source> + <translation>Скомпілювати '%1' як...</translation> + </message> + <message> + <source>&Close '%1'</source> + <translation>З&акрити '%1'</translation> + </message> + <message> + <source>&Save</source> + <translation>&Зберегти</translation> + </message> + <message> + <source>&Close</source> + <translation>З&акрити</translation> + </message> + <message> + <source>Save All</source> + <translation>Зберегти усе</translation> + </message> + <message> + <source>Close All</source> + <translation>Закрити усе</translation> + </message> + <message> + <source>&Release</source> + <translation>&Скомпілювати</translation> + </message> + <message> + <source>Translation File &Settings for '%1'...</source> + <translation>Налаштування &файлу перекладу для '%1'...</translation> + </message> + <message> + <source>&Batch Translation of '%1'...</source> + <translation>Пакетний перекла&д '%1'...</translation> + </message> + <message> + <source>Search And &Translate in '%1'...</source> + <translation>Знайти &та переклад '%1'...</translation> + </message> + <message> + <source>Search And &Translate...</source> + <translation>Знайти &та перекласти...</translation> + </message> + <message> + <source>Cannot read from phrase book '%1'.</source> + <translation>Неможливо прочитати з глосарію '%1'.</translation> + </message> + <message> + <source>Close this phrase book.</source> + <translation>Закрити цей глосарій.</translation> + </message> + <message> + <source>Enables you to add, modify, or delete entries in this phrase book.</source> + <translation>Дозволяє вам додавати, модифікувати та видаляти елементи глосарію.</translation> + </message> + <message> + <source>Print the entries in this phrase book.</source> + <translation>Друку елементів цього глосарію.</translation> + </message> + <message> + <source>Cannot create phrase book '%1'.</source> + <translation>Неможливо створити глосарій '%1'.</translation> + </message> + <message> + <source>Do you want to save phrase book '%1'?</source> + <translation>Бажаєте зберегти глосарій '%1'?</translation> + </message> + <message> + <source>All</source> + <translation>Усе</translation> + </message> +</context> +<context> + <name>MessageEditor</name> + <message> + <source></source> + <comment>This is the right panel of the main window.</comment> + <translatorcomment>Це права панель основного вікна.</translatorcomment> + <translation></translation> + </message> + <message> + <source>Russian</source> + <translation>Російська</translation> + </message> + <message> + <source>German</source> + <translation>Німецька</translation> + </message> + <message> + <source>Japanese</source> + <translation>Японська</translation> + </message> + <message> + <source>French</source> + <translation>Французька</translation> + </message> + <message> + <source>Polish</source> + <translation>Польська</translation> + </message> + <message> + <source>Chinese</source> + <translation>Китайська</translation> + </message> + <message> + <source>This whole panel allows you to view and edit the translation of some source text.</source> + <translation>Ця панель дозволяє вам переглядати та редагувати переклад деякого оригінального тексту.</translation> + </message> + <message> + <source>Source text</source> + <translation>Оригінальний текст</translation> + </message> + <message> + <source>This area shows the source text.</source> + <translation>В цій області відображається оригінальний текст.</translation> + </message> + <message> + <source>Source text (Plural)</source> + <translation>Оригінальний текст (множина)</translation> + </message> + <message> + <source>This area shows the plural form of the source text.</source> + <translation>В цій області відображається множина оригінального тексту.</translation> + </message> + <message> + <source>Developer comments</source> + <translation>Коментарі розробника</translation> + </message> + <message> + <source>This area shows a comment that may guide you, and the context in which the text occurs.</source> + <translation>В цій області відображається коментар, який може допомогти вам та контекст, в якому зустрічається текст.</translation> + </message> + <message> + <source>Here you can enter comments for your own use. They have no effect on the translated applications.</source> + <translation>Тут ви можете вводити коментарі для власного вжитку. Вони не впливають на перекладені програми.</translation> + </message> + <message> + <source>%1 translation (%2)</source> + <translation>%1 переклад (%2)</translation> + </message> + <message> + <source>This is where you can enter or modify the translation of the above source text.</source> + <translation>Тут ви можете чи змінювати переклад оригінального тексту, наведеного вище.</translation> + </message> + <message> + <source>%1 translation</source> + <translation>%1 переклад</translation> + </message> + <message> + <source>%1 translator comments</source> + <translation>%1 коментар перекладача</translation> + </message> + <message> + <source>'%1' +Line: %2</source> + <translation>'%1' +Рядок: %2</translation> + </message> +</context> +<context> + <name>MessageModel</name> + <message> + <source>Completion status for %1</source> + <translation>Статус завершеності для %1</translation> + </message> + <message> + <source><file header></source> + <translation><заголовок файлу></translation> + </message> + <message> + <source><context comment></source> + <translation><контекстний коментар></translation> + </message> + <message> + <source><unnamed context></source> + <translation><контекст без назви></translation> + </message> +</context> +<context> + <name>PhraseBookBox</name> + <message> + <source>Edit Phrase Book</source> + <translation>Редагування глосарію</translation> + </message> + <message> + <source>This window allows you to add, modify, or delete entries in a phrase book.</source> + <translation>Це вікно дозволяє вам додавати, модифікувати та видаляти елементи глосарію.</translation> + </message> + <message> + <source>&Translation:</source> + <translation>&Переклад:</translation> + </message> + <message> + <source>This is the phrase in the target language corresponding to the source phrase.</source> + <translation>Це фраза на мові перекладу, що відповідає оригінальній фразі.</translation> + </message> + <message> + <source>S&ource phrase:</source> + <translation>&Оригінальна фраза:</translation> + </message> + <message> + <source>This is a definition for the source phrase.</source> + <translation>Це визначення оригінальної фрази.</translation> + </message> + <message> + <source>This is the phrase in the source language.</source> + <translation>Це фраза мовою оригіналу.</translation> + </message> + <message> + <source>&Definition:</source> + <translation>&Визначення:</translation> + </message> + <message> + <source>Click here to add the phrase to the phrase book.</source> + <translation>Клацніть тут, щоб додати фразу до глосарію.</translation> + </message> + <message> + <source>&New Entry</source> + <translation>&Новий запис</translation> + </message> + <message> + <source>Click here to remove the entry from the phrase book.</source> + <translation>Клацніть тут, щоб видалити фразу з глосарію.</translation> + </message> + <message> + <source>&Remove Entry</source> + <translation>Ви&далити запис</translation> + </message> + <message> + <source>Settin&gs...</source> + <translation>Нала&штування...</translation> + </message> + <message> + <source>Click here to save the changes made.</source> + <translation>Клацніть тут, щоб зберегти зроблені зміни.</translation> + </message> + <message> + <source>&Save</source> + <translation>&Зберегти</translation> + </message> + <message> + <source>Click here to close this window.</source> + <translation>Клацніть тут щоб закрити вікно.</translation> + </message> + <message> + <source>Close</source> + <translation>Закрити</translation> + </message> + <message> + <source></source> + <comment>Go to Phrase > Edit Phrase Book... The dialog that pops up is a PhraseBookBox.</comment> + <translatorcomment>Йдіть в Фрази > Редагувати глосарій... З'явиться діалог PhraseBookBox.</translatorcomment> + <translation></translation> + </message> + <message> + <source>(New Entry)</source> + <translation>(Новий запис)</translation> + </message> + <message> + <source>%1[*] - Qt Linguist</source> + <translation>%1[*] - Qt Linguist</translation> + </message> + <message> + <source>Qt Linguist</source> + <translation>Qt Linguist</translation> + </message> + <message> + <source>Cannot save phrase book '%1'.</source> + <translation>Неможливо зберегти глосарій '%1'.</translation> + </message> +</context> +<context> + <name>PhraseModel</name> + <message> + <source>Source phrase</source> + <translation>Оригінальна фраза</translation> + </message> + <message> + <source>Translation</source> + <translation>Переклад</translation> + </message> + <message> + <source>Definition</source> + <translation>Визначення</translation> + </message> +</context> +<context> + <name>PhraseView</name> + <message> + <source>Insert</source> + <translation>Вставити</translation> + </message> + <message> + <source>Edit</source> + <translation>Редагувати</translation> + </message> + <message> + <source>Guess (%1)</source> + <translation>Підказка (%1)</translation> + </message> + <message> + <source>Guess</source> + <translation>Підказка</translation> + </message> +</context> +<context> + <name>QObject</name> + <message> + <source>Translation files (%1);;</source> + <translation>Файли перекладу (%1);;</translation> + </message> + <message> + <source>All files (*)</source> + <translation>Всі файли (*)</translation> + </message> + <message> + <source>Qt Linguist</source> + <translation>Qt Linguist</translation> + </message> + <message> + <source>GNU Gettext localization files</source> + <translation>Файли локалізації GNU Gettext</translation> + </message> + <message> + <source>GNU Gettext localization template files</source> + <translation>Файли шаблонів локалізації GNU Gettext</translation> + </message> + <message> + <source>Compiled Qt translations</source> + <translation>Скомпільовані переклади Qt</translation> + </message> + <message> + <source>Qt Linguist 'Phrase Book'</source> + <translation>'Глосарій' Qt Linguist</translation> + </message> + <message> + <source>Qt translation sources (format 1.1)</source> + <translation>Файли перекладу Qt (формат 1.1)</translation> + </message> + <message> + <source>Qt translation sources (format 2.0)</source> + <translation>Файли перекладу Qt (формат 2.0)</translation> + </message> + <message> + <source>Qt translation sources (latest format)</source> + <translation>Файли перекладу Qt (останній формат)</translation> + </message> + <message> + <source>XLIFF localization files</source> + <translation>Файли локалізації XLIFF</translation> + </message> +</context> +<context> + <name>SourceCodeView</name> + <message> + <source><i>Source code not available</i></source> + <translation><i>Код недоступний</i></translation> + </message> + <message> + <source><i>File %1 not available</i></source> + <translation><i>Файл %1 не доступний</i></translation> + </message> + <message> + <source><i>File %1 not readable</i></source> + <translation><i>Неможливо прочитати файл %1</i></translation> + </message> +</context> +<context> + <name>Statistics</name> + <message> + <source>Statistics</source> + <translation>Статистика</translation> + </message> + <message> + <source>Close</source> + <translation>Закрити</translation> + </message> + <message> + <source>Translation</source> + <translation>Переклад</translation> + </message> + <message> + <source>Source</source> + <translation>Оригінал</translation> + </message> + <message> + <source>0</source> + <translation>0</translation> + </message> + <message> + <source>Words:</source> + <translation>Слів:</translation> + </message> + <message> + <source>Characters:</source> + <translation>Символів:</translation> + </message> + <message> + <source>Characters (with spaces):</source> + <translation>Символів (з пропусками):</translation> + </message> +</context> +<context> + <name>TranslateDialog</name> + <message> + <source>This window allows you to search for some text in the translation source file.</source> + <translation>Це вікно дозволяє вам шукати текст в файлі перекладу.</translation> + </message> + <message> + <source>Type in the text to search for.</source> + <translation>Введіть текст для пошуку.</translation> + </message> + <message> + <source>Find &source text:</source> + <translation>&Знайти оригінальний текст:</translation> + </message> + <message> + <source>&Translate to:</source> + <translation>&Перекласти як:</translation> + </message> + <message> + <source>Search options</source> + <translation>Опції пошуку</translation> + </message> + <message> + <source>Texts such as 'TeX' and 'tex' are considered as different when checked.</source> + <translation>Якщо відмічено, то рядки 'приклад' та 'прИкЛад' будуть вважатись різними.</translation> + </message> + <message> + <source>Match &case</source> + <translation>Враховувати &регістр</translation> + </message> + <message> + <source>Mark new translation as &finished</source> + <translation>Позначати нові переклади &як завершені</translation> + </message> + <message> + <source>Click here to find the next occurrence of the text you typed in.</source> + <translation>Клацніть тут, щоб знайти наступне співпадіння для введеного вами тексту.</translation> + </message> + <message> + <source>Find Next</source> + <translation>Знайти наступний</translation> + </message> + <message> + <source>Translate</source> + <translation>Перекласти</translation> + </message> + <message> + <source>Translate All</source> + <translation>Перекласти усе</translation> + </message> + <message> + <source>Click here to close this window.</source> + <translation>Клацніть тут щоб закрити вікно.</translation> + </message> + <message> + <source>Cancel</source> + <translation>Скасувати</translation> + </message> +</context> +<context> + <name>TranslationSettingsDialog</name> + <message> + <source>Source language</source> + <translation>Мова оригіналу</translation> + </message> + <message> + <source>Language</source> + <translation>Мова</translation> + </message> + <message> + <source>Country/Region</source> + <translation>Країна/регіон</translation> + </message> + <message> + <source>Target language</source> + <translation>Мова перекладу</translation> + </message> + <message> + <source>Settings for '%1' - Qt Linguist</source> + <translation>Налаштування для '%1' - Qt Linguist</translation> + </message> + <message> + <source>Any Country</source> + <translation>Будь-яка країна</translation> + </message> +</context> +</TS> diff --git a/translations/qt_help_uk.ts b/translations/qt_help_uk.ts new file mode 100644 index 0000000..1687959 --- /dev/null +++ b/translations/qt_help_uk.ts @@ -0,0 +1,320 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.0" language="uk_UA"> +<context> + <name>QCLuceneResultWidget</name> + <message> + <source>Search Results</source> + <translation>Результати пошуку</translation> + </message> + <message> + <source>Note:</source> + <translation>Примітка:</translation> + </message> + <message> + <source>The search results may not be complete since the documentation is still being indexed!</source> + <translation>Результати пошуку можуть бути не повні, оскільки документація досі індексується!</translation> + </message> + <message> + <source>Your search did not match any documents.</source> + <translation>Ваш пошук не повернув результатів.</translation> + </message> + <message> + <source>(The reason for this might be that the documentation is still being indexed.)</source> + <translation>(Причиною цього може бути те, що документація досі індексується.)</translation> + </message> +</context> +<context> + <name>QHelp</name> + <message> + <source>Untitled</source> + <translation>Без назви</translation> + </message> +</context> +<context> + <name>QHelpCollectionHandler</name> + <message> + <source>The collection file '%1' is not set up yet!</source> + <translation>Файл колекції '%1' ще не встановлено!</translation> + </message> + <message> + <source>Cannot load sqlite database driver!</source> + <translation>Неможливо завантажити драйвер бази даних sqlite!</translation> + </message> + <message> + <source>Cannot open collection file: %1</source> + <translation>Неможливо відкрити файл колекції: %1</translation> + </message> + <message> + <source>Cannot create tables in file %1!</source> + <translation>Неможливо створити таблиці в файлі %1!</translation> + </message> + <message> + <source>The collection file '%1' already exists!</source> + <translation>Файл колекції '%1' вже існує!</translation> + </message> + <message> + <source>Cannot create directory: %1</source> + <translation>Неможливо створити теку: %1</translation> + </message> + <message> + <source>Cannot copy collection file: %1</source> + <translation>Неможливо скопіювати файл колекції: %1</translation> + </message> + <message> + <source>Unknown filter '%1'!</source> + <translation>Невідомий фільтр '%1'!</translation> + </message> + <message> + <source>Cannot register filter %1!</source> + <translation>Неможливо зареєструвати фільтр %1!</translation> + </message> + <message> + <source>Cannot open documentation file %1!</source> + <translation>Неможливо відкрити файл документації %1!</translation> + </message> + <message> + <source>Invalid documentation file '%1'!</source> + <translation>Неправильний файл документації '%1'!</translation> + </message> + <message> + <source>The namespace %1 was not registered!</source> + <translation>Простір імен %1 не зареєстровано!</translation> + </message> + <message> + <source>Namespace %1 already exists!</source> + <translation>Простір імен %1 вже існує!</translation> + </message> + <message> + <source>Cannot register namespace '%1'!</source> + <translation>Неможливо зареєструвати простір імен '%1'!</translation> + </message> + <message> + <source>Cannot open database '%1' to optimize!</source> + <translation>Неможливо відкрити базу даних '%1' для оптимізації!</translation> + </message> +</context> +<context> + <name>QHelpDBReader</name> + <message> + <source>Cannot open database '%1' '%2': %3</source> + <extracomment>The placeholders are: %1 - The name of the database which cannot be opened %2 - The unique id for the connection %3 - The actual error string</extracomment> + <translation>Не можу відкрити базу даних '%1' '%2': %3</translation> + </message> +</context> +<context> + <name>QHelpEngineCore</name> + <message> + <source>Cannot open documentation file %1: %2!</source> + <translation>Не можу відкрити файл документації %1: %2!</translation> + </message> + <message> + <source>The specified namespace does not exist!</source> + <translation>Вказаний простір імен не існує!</translation> + </message> +</context> +<context> + <name>QHelpGenerator</name> + <message> + <source>Invalid help data!</source> + <translation>Неправильні дані довідки!</translation> + </message> + <message> + <source>No output file name specified!</source> + <translation>Не вказане ім'я вихідного файлу!</translation> + </message> + <message> + <source>The file %1 cannot be overwritten!</source> + <translation>Неможливо перезаписати файл %1!</translation> + </message> + <message> + <source>Building up file structure...</source> + <translation>Побудова структури файлу....</translation> + </message> + <message> + <source>Cannot open data base file %1!</source> + <translation>Неможливо відкрити файл бази даних %1!</translation> + </message> + <message> + <source>Cannot register namespace %1!</source> + <translation>Неможливо зареєструвати простір імен %1!</translation> + </message> + <message> + <source>Insert custom filters...</source> + <translation>Вставка фільтрів користувача...</translation> + </message> + <message> + <source>Insert help data for filter section (%1 of %2)...</source> + <translation>Вставка даних довідки для розділу фільтра (%1 з %2)...</translation> + </message> + <message> + <source>Documentation successfully generated.</source> + <translation>Документацію успішно згенеровано.</translation> + </message> + <message> + <source>Some tables already exist!</source> + <translation>Деякі таблиці вже існують!</translation> + </message> + <message> + <source>Cannot create tables!</source> + <translation>Неможливо створити таблиці!</translation> + </message> + <message> + <source>Cannot register virtual folder!</source> + <translation>Неможливо зареєструвати віртуальну теку!</translation> + </message> + <message> + <source>Insert files...</source> + <translation>Вставка файлів...</translation> + </message> + <message> + <source>The referenced file %1 must be inside or within a subdirectory of (%2). Skipping it.</source> + <translation>Файл %1 має бути всередині підтеки (%2). Пропускаємо його.</translation> + </message> + <message> + <source>The file %1 does not exist! Skipping it.</source> + <translation>Файл %1 не існує! Пропускаємо його.</translation> + </message> + <message> + <source>Cannot open file %1! Skipping it.</source> + <translation>Неможливо відкрити файл %1! Пропускаємо його.</translation> + </message> + <message> + <source>The filter %1 is already registered!</source> + <translation>Фільтр %1 вже зареєстровано!</translation> + </message> + <message> + <source>Cannot register filter %1!</source> + <translation>Неможливо зареєструвати фільтр %1!</translation> + </message> + <message> + <source>Insert indices...</source> + <translation>Вставка індексів...</translation> + </message> + <message> + <source>Insert contents...</source> + <translation>Вставка змісту...</translation> + </message> + <message> + <source>Cannot insert contents!</source> + <translation>Неможливо вставити зміст!</translation> + </message> + <message> + <source>Cannot register contents!</source> + <translation>Неможливо зареєструвати зміст!</translation> + </message> + <message> + <source>File '%1' does not exist.</source> + <translation>Файл '%1' не існує.</translation> + </message> + <message> + <source>File '%1' cannot be opened.</source> + <translation>Неможливо відкрити файл '%1'.</translation> + </message> + <message> + <source>File '%1' contains an invalid link to file '%2'</source> + <translation>Файл '%1' містить неправильне посилання до файлу '%2'</translation> + </message> + <message> + <source>Invalid links in HTML files.</source> + <translation>Неправильні посилання в файлах HTML.</translation> + </message> +</context> +<context> + <name>QHelpProject</name> + <message> + <source>Unknown token.</source> + <translation>Невідомий токен.</translation> + </message> + <message> + <source>Unknown token. Expected "QtHelpProject"!</source> + <translation>Невідомий токен. Очікувався "QtHelpProject"!</translation> + </message> + <message> + <source>Error in line %1: %2</source> + <translation>Помилка в рядку %1: %2</translation> + </message> + <message> + <source>Virtual folder has invalid syntax.</source> + <translation>Віртуальна тека має неправильний синтаксис.</translation> + </message> + <message> + <source>Namespace has invalid syntax.</source> + <translation>Простір імен має неправильний синтаксис.</translation> + </message> + <message> + <source>Missing namespace in QtHelpProject.</source> + <translation>Відсутній простір імен в QtHelpProject.</translation> + </message> + <message> + <source>Missing virtual folder in QtHelpProject</source> + <translation>Відсутня віртуальна тека в QtHelpProject</translation> + </message> + <message> + <source>Missing attribute in keyword at line %1.</source> + <translation>Відсутній атрибут в ключовому слові на рядку %1.</translation> + </message> + <message> + <source>The input file %1 could not be opened!</source> + <translation>Неможливо відкрити вхідний файл %1!</translation> + </message> +</context> +<context> + <name>QHelpSearchQueryWidget</name> + <message> + <source>Search for:</source> + <translation>Шукати:</translation> + </message> + <message> + <source>Previous search</source> + <translation>Попередній пошук</translation> + </message> + <message> + <source>Next search</source> + <translation>Наступний пошук</translation> + </message> + <message> + <source>Search</source> + <translation>Шукати</translation> + </message> + <message> + <source>Advanced search</source> + <translation>Розширений пошук</translation> + </message> + <message> + <source>words <B>similar</B> to:</source> + <translation>слова <B>схожі</B> на:</translation> + </message> + <message> + <source><B>without</B> the words:</source> + <translation><B>без</B> слів:</translation> + </message> + <message> + <source>with <B>exact phrase</B>:</source> + <translation>з <B>точною фразою</B>:</translation> + </message> + <message> + <source>with <B>all</B> of the words:</source> + <translation>з <B>усіма</B> словами:</translation> + </message> + <message> + <source>with <B>at least one</B> of the words:</source> + <translation>з <B>щонайменше одним</B> зі слів:</translation> + </message> +</context> +<context> + <name>QHelpSearchResultWidget</name> + <message numerus="yes"> + <source>%1 - %2 of %n Hits</source> + <translation> + <numerusform>%1 - %2 з %n співпадіння</numerusform> + <numerusform>%1 - %2 з %n співпадінь</numerusform> + <numerusform>%1 - %2 з %n співпадінь</numerusform> + </translation> + </message> + <message> + <source>0 - 0 of 0 Hits</source> + <translation>0 - 0 з 0 співпадінь</translation> + </message> +</context> +</TS> diff --git a/translations/qtconfig_uk.ts b/translations/qtconfig_uk.ts new file mode 100644 index 0000000..9d5b0a7 --- /dev/null +++ b/translations/qtconfig_uk.ts @@ -0,0 +1,717 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.0" language="uk_UA"> +<context> + <name>MainWindow</name> + <message> + <source>Desktop Settings (Default)</source> + <translation>Налаштування стільниці (Типово)</translation> + </message> + <message> + <source>Choose style and palette based on your desktop settings.</source> + <translation>Оберіть стиль та палітру відповідно до ваших налаштувань стільниці.</translation> + </message> + <message> + <source>On The Spot</source> + <translation>У вікні документу</translation> + </message> + <message> + <source>Auto (default)</source> + <translation>Автоматично (типово)</translation> + </message> + <message> + <source>Choose audio output automatically.</source> + <translation>Вибрати аудіо вихід автоматично.</translation> + </message> + <message> + <source>aRts</source> + <translation>aRts</translation> + </message> + <message> + <source>Experimental aRts support for GStreamer.</source> + <translation>Експериментальна підтримка aRts для GStreamer.</translation> + </message> + <message> + <source>Phonon GStreamer backend not available.</source> + <translation>Підтримка GStreamer для Phonon не доступна.</translation> + </message> + <message> + <source>Choose render method automatically</source> + <translation>Обрати метод вімальовки автоматично</translation> + </message> + <message> + <source>X11</source> + <translation>X11</translation> + </message> + <message> + <source>Use X11 Overlays</source> + <translation>Використовувати оверлеї X11</translation> + </message> + <message> + <source>OpenGL</source> + <translation>OpenGL</translation> + </message> + <message> + <source>Use OpenGL if available</source> + <translation>Використовувати OpenGL, якщо доступно</translation> + </message> + <message> + <source>Software</source> + <translation>Програмно</translation> + </message> + <message> + <source>Use simple software rendering</source> + <translation>Використовувати простий програмний рендеринг</translation> + </message> + <message> + <source>No changes to be saved.</source> + <translation>Немає змін для збереження.</translation> + </message> + <message> + <source>Saving changes...</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>Select a Directory</source> + <translation>Оберіть теку</translation> + </message> + <message> + <source><h3>%1</h3><br/>Version %2<br/><br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</source> + <translation><h3>%1</h3><br/>Version %2<br/><br/>Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).</translation> + </message> + <message> + <source>Qt Configuration</source> + <translation>Конфігурація Qt</translation> + </message> + <message> + <source>Save Changes</source> + <translation>Зберегти зміни</translation> + </message> + <message> + <source>Save changes to settings?</source> + <translation>Зберегти зміни до налаштувань?</translation> + </message> + <message> + <source>&Yes</source> + <translation>&Так</translation> + </message> + <message> + <source>&No</source> + <translation>&Ні</translation> + </message> + <message> + <source>&Cancel</source> + <translation>&Скасувати</translation> + </message> +</context> +<context> + <name>MainWindowBase</name> + <message> + <source>Qt Configuration</source> + <translation>Конфігурація Qt</translation> + </message> + <message> + <source>Appearance</source> + <translation>Вигляд</translation> + </message> + <message> + <source>GUI Style</source> + <translation>Стиль GUI</translation> + </message> + <message> + <source>Select GUI &Style:</source> + <translation>Оберіть &стиль GUI:</translation> + </message> + <message> + <source>Preview</source> + <translation>Попередній перегляд</translation> + </message> + <message> + <source>Select &Palette:</source> + <translation>Виберіть &палітру:</translation> + </message> + <message> + <source>Active Palette</source> + <translation>Активна палітра</translation> + </message> + <message> + <source>Inactive Palette</source> + <translation>Неактивна палітра</translation> + </message> + <message> + <source>Disabled Palette</source> + <translation>Вимкнена палітра</translation> + </message> + <message> + <source>Build Palette</source> + <translation>Створити палітру</translation> + </message> + <message> + <source>&3-D Effects:</source> + <translation>&3-D ефекти:</translation> + </message> + <message> + <source>Window Back&ground:</source> + <translation>Фон &вікна:</translation> + </message> + <message> + <source>&Tune Palette...</source> + <translation>&Налаштувати палітру...</translation> + </message> + <message> + <source>Please use the KDE Control Center to set the palette.</source> + <translation>Будь-ласка, використовуйте Системні параметри KDE, щоб встановити палітру.</translation> + </message> + <message> + <source>Fonts</source> + <translation>Шрифти</translation> + </message> + <message> + <source>Default Font</source> + <translation>Типовий шрифт</translation> + </message> + <message> + <source>&Style:</source> + <translation>&Стиль:</translation> + </message> + <message> + <source>&Point Size:</source> + <translation>&Розмір:</translation> + </message> + <message> + <source>F&amily:</source> + <translation>&Шрифт:</translation> + </message> + <message> + <source>Sample Text</source> + <translation>Зразок тексту</translation> + </message> + <message> + <source>Font Substitution</source> + <translation>Заміна шрифтів</translation> + </message> + <message> + <source>S&elect or Enter a Family:</source> + <translation>&Виберіть чи введіть шрифт:</translation> + </message> + <message> + <source>Current Substitutions:</source> + <translation>Поточні заміни:</translation> + </message> + <message> + <source>Up</source> + <translation>Вгору</translation> + </message> + <message> + <source>Down</source> + <translation>Вниз</translation> + </message> + <message> + <source>Remove</source> + <translation>Видалити</translation> + </message> + <message> + <source>Select s&ubstitute Family:</source> + <translation>&Оберіть шрифт, яким заміняти:</translation> + </message> + <message> + <source>Add</source> + <translation>Додати</translation> + </message> + <message> + <source>Interface</source> + <translation>Інтерфейс</translation> + </message> + <message> + <source>Feel Settings</source> + <translation>Поведінка миші</translation> + </message> + <message> + <source> ms</source> + <translation> мс</translation> + </message> + <message> + <source>&Double Click Interval:</source> + <translation>&Інтервал подвійного клацання:</translation> + </message> + <message> + <source>No blinking</source> + <translation>Без блимання</translation> + </message> + <message> + <source>&Cursor Flash Time:</source> + <translation>&Час блимання курсору:</translation> + </message> + <message> + <source> lines</source> + <translation> рядків</translation> + </message> + <message> + <source>Wheel &Scroll Lines:</source> + <translation>&Коліщатко прокручує:</translation> + </message> + <message> + <source>Resolve symlinks in URLs</source> + <translation>Вирішувати символьні посилання в URL</translation> + </message> + <message> + <source>GUI Effects</source> + <translation>Ефекти GUI</translation> + </message> + <message> + <source>&Enable</source> + <translation>&Увімкнути</translation> + </message> + <message> + <source>Alt+E</source> + <translation></translation> + </message> + <message> + <source>&Menu Effect:</source> + <translation>Ефект &меню:</translation> + </message> + <message> + <source>C&omboBox Effect:</source> + <translation>Ефект випадаючого &списку:</translation> + </message> + <message> + <source>&ToolTip Effect:</source> + <translation>Ефект &підказки:</translation> + </message> + <message> + <source>Tool&Box Effect:</source> + <translation>Ефект панелі &інструментів:</translation> + </message> + <message> + <source>Disable</source> + <translation>Вимкнуто</translation> + </message> + <message> + <source>Animate</source> + <translation>Анімація</translation> + </message> + <message> + <source>Fade</source> + <translation>Згасання</translation> + </message> + <message> + <source>Global Strut</source> + <translation>Мінімальний розмір віджетів</translation> + </message> + <message> + <source>Minimum &Width:</source> + <translation>Мінімальна &ширина:</translation> + </message> + <message> + <source>Minimum Hei&ght:</source> + <translation>Мінімальна &висота:</translation> + </message> + <message> + <source> pixels</source> + <translation> пікселів</translation> + </message> + <message> + <source>Enhanced support for languages written right-to-left</source> + <translation>Розширена підтримка для, що пишуться справа наліво</translation> + </message> + <message> + <source>XIM Input Style:</source> + <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> + <message> + <source>Printer</source> + <translation>Принтер</translation> + </message> + <message> + <source>Enable Font embedding</source> + <translation>Увімкнути вживлення шрифтів</translation> + </message> + <message> + <source>Font Paths</source> + <translation>Шляхи до шрифтів</translation> + </message> + <message> + <source>Browse...</source> + <translation>Огляд...</translation> + </message> + <message> + <source>Press the <b>Browse</b> button or enter a directory and press Enter to add them to the list.</source> + <translation>Натисніть кнопку <b>Огляд</b> чи введіть теку та натисніть Enter, щоб додати її до списку.</translation> + </message> + <message> + <source>Phonon</source> + <translation>Phonon</translation> + </message> + <message> + <source>About Phonon</source> + <translation>Про Phonon</translation> + </message> + <message> + <source>Current Version:</source> + <translation>Поточна версія:</translation> + </message> + <message> + <source>Not available</source> + <translation>Не доступна</translation> + </message> + <message> + <source>Website:</source> + <translation>Веб-сайт:</translation> + </message> + <message> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://phonon.kde.org"><span style=" text-decoration: underline; color:#0000ff;">http://phonon.kde.org</span></a></p></body></html></source> + <translation></translation> + </message> + <message> + <source>About GStreamer</source> + <translation>Про GStreamer</translation> + </message> + <message> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://gstreamer.freedesktop.org/"><span style=" text-decoration: underline; color:#0000ff;">http://gstreamer.freedesktop.org/</span></a></p></body></html></source> + <translation></translation> + </message> + <message> + <source>GStreamer backend settings</source> + <translation>Налаштування модуля GStreamer</translation> + </message> + <message> + <source>Preferred audio sink:</source> + <translation>Бажаний аудіо вихід:</translation> + </message> + <message> + <source>Preferred render method:</source> + <translation>Бажаний метод рендерингу:</translation> + </message> + <message> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-style:italic;">Note: changes to these settings may prevent applications from starting up correctly.</span></p></body></html></source> + <translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-style:italic;">Примітка: зміни до цих налаштувань можуть заважати правильному запуску програм.</span></p></body></html></translation> + </message> + <message> + <source>&File</source> + <translation>&Файл</translation> + </message> + <message> + <source>&Help</source> + <translation>&Довідка</translation> + </message> + <message> + <source>&Save</source> + <translation>&Зберегти</translation> + </message> + <message> + <source>Save</source> + <translation>Зберегти</translation> + </message> + <message> + <source>Ctrl+S</source> + <translation>Ctrl+S</translation> + </message> + <message> + <source>E&xit</source> + <translation>Ви&йти</translation> + </message> + <message> + <source>Exit</source> + <translation>Вийти</translation> + </message> + <message> + <source>&About</source> + <translation>&Про</translation> + </message> + <message> + <source>About</source> + <translation>Про</translation> + </message> + <message> + <source>About &Qt</source> + <translation>Про &Qt</translation> + </message> + <message> + <source>About Qt</source> + <translation>Про Qt</translation> + </message> +</context> +<context> + <name>PaletteEditorAdvancedBase</name> + <message> + <source>Tune Palette</source> + <translation>Налаштувати палітру</translation> + </message> + <message> + <source><b>Edit Palette</b><p>Change the palette of the current widget or form.</p><p>Use a generated palette or select colors for each color group and each color role.</p><p>The palette can be tested with different widget layouts in the preview section.</p></source> + <translation><b>Редагування палітри</b><p>Змінити палітру поточного віджета чи форми.</p><p>Використовуйте згенеровану палітру чи оберіть кольори для кожної групи кольорів та кожної кольорової ролі.</p><p>Палітру можна протестувати з різними розміщеннями віджетів в секції попереднього перегляду.</p></translation> + </message> + <message> + <source>Select &Palette:</source> + <translation>Виберіть &палітру:</translation> + </message> + <message> + <source>Active Palette</source> + <translation>Активна палітра</translation> + </message> + <message> + <source>Inactive Palette</source> + <translation>Неактивна палітра</translation> + </message> + <message> + <source>Disabled Palette</source> + <translation>Вимкнена палітра</translation> + </message> + <message> + <source>Auto</source> + <translation>Автоматично</translation> + </message> + <message> + <source>Build inactive palette from active</source> + <translation>Будувати неактивну палітру з активної</translation> + </message> + <message> + <source>Build disabled palette from active</source> + <translation>Будувати вимкнену палітру з активної</translation> + </message> + <message> + <source>Central color &roles</source> + <translation>Головні кольорові &ролі</translation> + </message> + <message> + <source>Choose central color role</source> + <translation>Оберіть головну кольорову роль</translation> + </message> + <message> + <source><b>Select a color role.</b><p>Available central roles are: <ul> <li>Window - general background color.</li> <li>WindowText - general foreground color. </li> <li>Base - used as background color for e.g. text entry widgets, usually white or another light color. </li> <li>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. </li> <li>Button - general button background color, where buttons need a background different from Window, as in the Macintosh style. </li> <li>ButtonText - a foreground color used with the Button color. </li> <li>Highlight - a color to indicate a selected or highlighted item. </li> <li>HighlightedText - a text color that contrasts to Highlight. </li> <li>BrightText - a text color that is very different from WindowText and contrasts well with e.g. black. </li> </ul> </p></source> + <translation><b>Вибір кольорової ролі.</b><p>Доступні наступні головні ролі: <ul> <li>Вікно - загальний колір фону.</li> <li>Текст вікна - загальний колір переднього плану. </li> <li>Базовий - використовується як колір фону, наприклад, для віджетів для введення тексту, зазвичай білий або інший світлий колір. </li> <li>Текст - колір переднього плану, що використовується разом з базовим. Зазвичай співпадає з "Текст вікна", і в цьому випадку має забезпечувати гарний контраст і з "Вікном", і з "Базовим". </li> <li>Кнопка - загальний колір фону кнопки, там де кнопки потребуються інший від "Вікна" фон, як в стилі Macintosh. </li> <li>Текст кнопки - колір переднього плану, що застосовується разом з кольором "Кнопки". </li> <li>Підсвічений - колір для індикації виділеного чи підсвіченого елементу. </li> <li>Підсвічений текст - колір тексту, що контрастує з "Підсвіченим". </li> <li>Яскравий текст - колір тексту, що суттєво відрізняється від "Тексту вікна" та добре контрастує з чорним, наприклад. </li> </ul> </p></translation> + </message> + <message> + <source>Window</source> + <translation>Вікно</translation> + </message> + <message> + <source>WindowText</source> + <translation>Текст вікна</translation> + </message> + <message> + <source>Button</source> + <translation>Кнопка</translation> + </message> + <message> + <source>Base</source> + <translation>Базовий</translation> + </message> + <message> + <source>Text</source> + <translation>Текст</translation> + </message> + <message> + <source>BrightText</source> + <translation>Яскравий текст</translation> + </message> + <message> + <source>ButtonText</source> + <translation>Текст кнопки</translation> + </message> + <message> + <source>Highlight</source> + <translation>Підсвічений</translation> + </message> + <message> + <source>HighlightedText</source> + <translation>Підсвічений текст</translation> + </message> + <message> + <source>&Select Color:</source> + <translation>&Оберіть колір:</translation> + </message> + <message> + <source>Choose a color</source> + <translation>Оберіть колір</translation> + </message> + <message> + <source>Choose a color for the selected central color role.</source> + <translation>Виберіть колір для вказаної головної кольорової ролі.</translation> + </message> + <message> + <source>3-D shadow &effects</source> + <translation>3-D &ефекти тіні</translation> + </message> + <message> + <source>Build &from button color</source> + <translation>Будувати &з кольору кнопки</translation> + </message> + <message> + <source>Generate shadings</source> + <translation>Генерувати тіні</translation> + </message> + <message> + <source>Check to let 3D-effect colors be calculated from button-color.</source> + <translation>Увімкніть, щоб кольори 3D-ефектів розраховувались з кольору кнопки.</translation> + </message> + <message> + <source>Choose 3D-effect color role</source> + <translation>Оберіть роль для 3D-ефектів</translation> + </message> + <message> + <source><b>Select a color role.</b><p>Available effect roles are: <ul> <li>Light - lighter than Button color. </li> <li>Midlight - between Button and Light. </li> <li>Mid - between Button and Dark. </li> <li>Dark - darker than Button. </li> <li>Shadow - a very dark color. </li> </ul></source> + <translation><b>Оберіть кольорову роль.</b><p>Доступні наступні ролі ефектів: <ul> <li>Світлий - світліше ніж колір кнопки. </li> <li>Напівсвітлий - між "Кнопкою" та "Світлим". </li> <li>Напівтемний - між "Кнопкою" та "Темним". </li> <li>Темний - темніший ніж "Кнопка". </li> <li>Тінь - дуже темний колір. </li> </ul></translation> + </message> + <message> + <source>Light</source> + <translation>Світлий</translation> + </message> + <message> + <source>Midlight</source> + <translation>Напівсвітлий</translation> + </message> + <message> + <source>Mid</source> + <translation>Напівтемний</translation> + </message> + <message> + <source>Dark</source> + <translation>Темний</translation> + </message> + <message> + <source>Shadow</source> + <translation>Тінь</translation> + </message> + <message> + <source>Select Co&lor:</source> + <translation>Оберіть &колір:</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> + </message> + <message> + <source>Cancel</source> + <translation>Скасувати</translation> + </message> + <message> + <source>Close dialog and discard all changes.</source> + <translation>Закрити діалог та відкинути усі зміни.</translation> + </message> +</context> +<context> + <name>PreviewFrame</name> + <message> + <source>Desktop settings will only take effect after an application restart.</source> + <translation>Налаштування стільниці будуть застосовані лише після перезапуску програми.</translation> + </message> +</context> +<context> + <name>PreviewWidgetBase</name> + <message> + <source>Preview Window</source> + <translation>Вікно попереднього перегляду</translation> + </message> + <message> + <source>ButtonGroup</source> + <translation>Група кнопок</translation> + </message> + <message> + <source>RadioButton1</source> + <translation>Перемикач 1</translation> + </message> + <message> + <source>RadioButton2</source> + <translation>Перемикач 2</translation> + </message> + <message> + <source>RadioButton3</source> + <translation>Перемикач 3</translation> + </message> + <message> + <source>ButtonGroup2</source> + <translation>Група кнопок 2</translation> + </message> + <message> + <source>CheckBox1</source> + <translation>Прапорець 1</translation> + </message> + <message> + <source>CheckBox2</source> + <translation>Прапорець 2</translation> + </message> + <message> + <source>LineEdit</source> + <translation>Поле введення</translation> + </message> + <message> + <source>ComboBox</source> + <translation>Випадаючий список</translation> + </message> + <message> + <source>PushButton</source> + <translation>Кнопка</translation> + </message> + <message> + <source><p> +<a href="http://qt.nokia.com">http://qt.nokia.com</a> +</p> +<p> +<a href="http://www.kde.org">http://www.kde.org</a> +</p></source> + <translation><p> +<a href="http://qt.nokia.com">http://qt.nokia.com</a> +</p> +<p> +<a href="http://www.kde.org">http://www.kde.org</a> +</p></translation> + </message> +</context> +</TS> diff --git a/translations/qvfb_uk.ts b/translations/qvfb_uk.ts new file mode 100644 index 0000000..142863b --- /dev/null +++ b/translations/qvfb_uk.ts @@ -0,0 +1,276 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.0" language="uk_UA"> +<context> + <name>AnimationSaveWidget</name> + <message> + <source>Record</source> + <translation>Записати</translation> + </message> + <message> + <source>Reset</source> + <translation>Відновити</translation> + </message> + <message> + <source>Save</source> + <translation>Зберегти</translation> + </message> + <message> + <source>Save in MPEG format (requires netpbm package installed)</source> + <translation>Зберегти в форматі MPEG (необхідний встановлений пакунок netpbm)</translation> + </message> + <message> + <source>Click record to begin recording.</source> + <translation>Клацніть "Записати", щоб розпочати запис.</translation> + </message> + <message> + <source>Finished saving.</source> + <translation>Збереження завершено.</translation> + </message> + <message> + <source>Paused. Click record to resume, or save if done.</source> + <translation>Зупинено. Клацніть "Записати", щоб продовжити, або "Зберегти" якщо готово.</translation> + </message> + <message> + <source>Pause</source> + <translation>Пауза</translation> + </message> + <message> + <source>Recording...</source> + <translation>Записую...</translation> + </message> + <message> + <source>Saving... </source> + <translation>Зберігаю...</translation> + </message> + <message> + <source>Save animation...</source> + <translation>Зберегти анімацію...</translation> + </message> + <message> + <source>Save canceled.</source> + <translation>Збереження скасовано.</translation> + </message> + <message> + <source>Save failed!</source> + <translation>Збереження провалилось!</translation> + </message> +</context> +<context> + <name>Config</name> + <message> + <source>Configure</source> + <translation>Конфігурування</translation> + </message> + <message> + <source>Size</source> + <translation>Розмір</translation> + </message> + <message> + <source>176x220 "SmartPhone"</source> + <translation>176x220 "Смартфон"</translation> + </message> + <message> + <source>240x320 "PDA"</source> + <translation>240x320 "PDA"</translation> + </message> + <message> + <source>320x240 "TV" / "QVGA"</source> + <translation>320x240 "TV" / "QVGA"</translation> + </message> + <message> + <source>640x480 "VGA"</source> + <translation>640x480 "VGA"</translation> + </message> + <message> + <source>800x480</source> + <translation>800x480</translation> + </message> + <message> + <source>800x600</source> + <translation>800x600</translation> + </message> + <message> + <source>1024x768</source> + <translation>1024x768</translation> + </message> + <message> + <source>Custom</source> + <translation>Користувацький</translation> + </message> + <message> + <source>Depth</source> + <translation>Глибина кольору</translation> + </message> + <message> + <source>1 bit monochrome</source> + <translation>1 біт монохромний</translation> + </message> + <message> + <source>2 bit grayscale</source> + <translation>2 біти сірий</translation> + </message> + <message> + <source>4 bit grayscale</source> + <translation>4 біти сірий</translation> + </message> + <message> + <source>8 bit</source> + <translation>8 біт</translation> + </message> + <message> + <source>12 (16) bit</source> + <translation>12 (16) біт</translation> + </message> + <message> + <source>15 bit</source> + <translation>15 біт</translation> + </message> + <message> + <source>16 bit</source> + <translation>16 біт</translation> + </message> + <message> + <source>18 bit</source> + <translation>18 біт</translation> + </message> + <message> + <source>24 bit</source> + <translation>24 біти</translation> + </message> + <message> + <source>32 bit</source> + <translation>32 біти</translation> + </message> + <message> + <source>32 bit ARGB</source> + <translation>32 біти ARGB</translation> + </message> + <message> + <source>Swap red and blue channels</source> + <translation>Поміняти червоний та блакитний канали</translation> + </message> + <message> + <source>BGR format</source> + <translation>Формат BGR</translation> + </message> + <message> + <source>Skin</source> + <translation>Обкладинка</translation> + </message> + <message> + <source>None</source> + <translation>Немає</translation> + </message> + <message> + <source>Emulate touch screen (no mouse move)</source> + <translation>Емулювати тачскрін (без пересувань миші)</translation> + </message> + <message> + <source>Emulate LCD screen (Only with fixed zoom of 3.0 times magnification)</source> + <translation>Емулювати LCD-екран (Лише фіксований масштаб з 3x збільшенням)</translation> + </message> + <message> + <source><p>Note that any applications using the virtual framebuffer will be terminated if you change the Size or Depth <i>above</i>. You may freely modify the Gamma <i>below</i>.</source> + <translation><p>Зверніть увагу, що будь-який додаток, який використовує віртуальний фреймбуфер буде закрито, якщо ви зміните розмір чи глибину кольору <i>зверху</i>. Ви можете довільно змінювати гамму <i>знизу</i>.</translation> + </message> + <message> + <source>Gamma</source> + <translation>Гамма</translation> + </message> + <message> + <source>Blue</source> + <translation>Блакитний</translation> + </message> + <message> + <source>1.0</source> + <translation>1,0</translation> + </message> + <message> + <source>Green</source> + <translation>Зелений</translation> + </message> + <message> + <source>All</source> + <translation>Усі</translation> + </message> + <message> + <source>Red</source> + <translation>Червоний</translation> + </message> + <message> + <source>Set all to 1.0</source> + <translation>Встановити усі в 1.0</translation> + </message> + <message> + <source>&OK</source> + <translation>&OK</translation> + </message> + <message> + <source>&Cancel</source> + <translation>&Скасувати</translation> + </message> +</context> +<context> + <name>DeviceSkin</name> + <message> + <source>The image file '%1' could not be loaded.</source> + <translation>Неможливо завантажити файл зображення '%1'.</translation> + </message> + <message> + <source>The skin directory '%1' does not contain a configuration file.</source> + <translation>Тека обкладинки '%1' не містить конфігураційного файлу.</translation> + </message> + <message> + <source>The skin configuration file '%1' could not be opened.</source> + <translation>Неможливо відкрити конфігураційний файл '%1'.</translation> + </message> + <message> + <source>The skin configuration file '%1' could not be read: %2</source> + <translation>Неможливо прочитати конфігураційний файл '%1': %2</translation> + </message> + <message> + <source>Syntax error: %1</source> + <translation>Синтаксична помилка: %1</translation> + </message> + <message> + <source>The skin "up" image file '%1' does not exist.</source> + <translation>Зображення обкладинки "вгору" '%1' не існує.</translation> + </message> + <message> + <source>The skin "down" image file '%1' does not exist.</source> + <translation>Зображення обкладинки "вниз" '%1' не існує.</translation> + </message> + <message> + <source>The skin "closed" image file '%1' does not exist.</source> + <translation>Зображення обкладинки "закрито" '%1' не існує.</translation> + </message> + <message> + <source>The skin cursor image file '%1' does not exist.</source> + <translation>Зображення обкладинки для курсору '%1' не існує.</translation> + </message> + <message> + <source>Syntax error in area definition: %1</source> + <translation>Синтаксична помилка в описі області: %1</translation> + </message> + <message> + <source>Mismatch in number of areas, expected %1, got %2.</source> + <translation>Не співпадає кількість областей, очікувалось %1, отримано %2.</translation> + </message> +</context> +<context> + <name>QVFb</name> + <message> + <source>Browse...</source> + <translation>Оглянути...</translation> + </message> + <message> + <source>Load Custom Skin...</source> + <translation>Завантажити обкладинку користувача...</translation> + </message> + <message> + <source>All QVFB Skins (*.skin)</source> + <translation>Усі обкладинки QVFB (*.skin)</translation> + </message> +</context> +</TS> -- cgit v0.12 From 23e5a48e77f1b30905fbc6d4fa8d91b88d152c0d Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 12:59:14 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/index.qdoc | 3 ++- doc/src/overviews.qdoc | 1 - doc/src/windows-and-dialogs/dialogs.qdoc | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index ded57f5..1032e30 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -66,7 +66,8 @@ <div class="sectionlist tricol"> <ul> <!-- <li><a href="qt-basic-concepts.html">Programming with Qt</a></li> --> - <li><a href="qt-basic-concepts.html">Basic Qt Architecture</a></li> + <li><a href="qt-basic-concepts.html">Qt Basic Concepts</a></li> + <li><a href="qt-gui-concepts.html">Qt GUI Concepts</a></li> <li><a href="developing-with-qt.html">Cross-platform & Platform-specific Development</a></li> <li><a href="technology-apis.html">Qt & standard technologies </a></li> <li><a href="best-practices.html">Qt How-to's & best practices</a></li> diff --git a/doc/src/overviews.qdoc b/doc/src/overviews.qdoc index b72df98..a1773a3 100644 --- a/doc/src/overviews.qdoc +++ b/doc/src/overviews.qdoc @@ -29,7 +29,6 @@ \page overviews.html \title All Overviews and HOWTOs - \ingroup qt-basic-concepts \generatelist overviews */ diff --git a/doc/src/windows-and-dialogs/dialogs.qdoc b/doc/src/windows-and-dialogs/dialogs.qdoc index f6649fd..960d7be 100644 --- a/doc/src/windows-and-dialogs/dialogs.qdoc +++ b/doc/src/windows-and-dialogs/dialogs.qdoc @@ -28,12 +28,12 @@ /*! \group standard-dialogs \ingroup qt-basic-concepts - \title Standard Dialog Classes + \title Standard Dialogs + \brief A list of Qt classes for implementing standard dialogs. */ /*! \group dialog-classes - \ingroup qt-basic-concepts \title Classes for Building Dialogs */ -- cgit v0.12 From d3ab1fccea2b1e011e7518269a29045a53f0a30b Mon Sep 17 00:00:00 2001 From: Jani Hautakangas <ext-jani.hautakangas@nokia.com> Date: Mon, 9 Aug 2010 09:47:31 +0300 Subject: Pending surface might not get destroyed if no flush() happens in between graphics system change. This patch ensures that all old surfaces are destroyed before new graphics system is activated. Reviewed-by: Jason Barron --- src/gui/kernel/qapplication_s60.cpp | 2 +- src/gui/painting/qgraphicssystem_runtime.cpp | 19 ++++++------------- src/gui/painting/qgraphicssystem_runtime_p.h | 4 ++-- 3 files changed, 9 insertions(+), 16 deletions(-) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index a14b1a7..c3824f9 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1067,7 +1067,7 @@ void QSymbianControl::Draw(const TRect& controlRect) const if (QApplicationPrivate::runtime_graphics_system) { QRuntimeWindowSurface *rtSurface = static_cast<QRuntimeWindowSurface*>(qwidget->windowSurface()); - s60Surface = static_cast<QS60WindowSurface *>(rtSurface->m_windowSurface); + s60Surface = static_cast<QS60WindowSurface *>(rtSurface->m_windowSurface.data()); } else #endif s60Surface = static_cast<QS60WindowSurface *>(qwidget->windowSurface()); diff --git a/src/gui/painting/qgraphicssystem_runtime.cpp b/src/gui/painting/qgraphicssystem_runtime.cpp index be04df6..e1e0ad0 100644 --- a/src/gui/painting/qgraphicssystem_runtime.cpp +++ b/src/gui/painting/qgraphicssystem_runtime.cpp @@ -251,7 +251,7 @@ QPixmapData* QRuntimePixmapData::runtimeData() const } QRuntimeWindowSurface::QRuntimeWindowSurface(const QRuntimeGraphicsSystem *gs, QWidget *window) - : QWindowSurface(window), m_windowSurface(0), m_pendingWindowSurface(0), m_graphicsSystem(gs) + : QWindowSurface(window), m_graphicsSystem(gs) { } @@ -259,7 +259,6 @@ QRuntimeWindowSurface::QRuntimeWindowSurface(const QRuntimeGraphicsSystem *gs, Q QRuntimeWindowSurface::~QRuntimeWindowSurface() { m_graphicsSystem->removeWindowSurface(this); - delete m_windowSurface; } QPaintDevice *QRuntimeWindowSurface::paintDevice() @@ -278,8 +277,7 @@ void QRuntimeWindowSurface::flush(QWidget *widget, const QRegion ®ion, #ifdef QT_DEBUG qDebug() << "QRuntimeWindowSurface::flush() - destroy pending window surface"; #endif - delete m_pendingWindowSurface; - m_pendingWindowSurface = 0; + m_pendingWindowSurface.reset(); } } @@ -355,7 +353,7 @@ QWindowSurface *QRuntimeGraphicsSystem::createWindowSurface(QWidget *widget) con { Q_ASSERT(m_graphicsSystem); QRuntimeWindowSurface *rtSurface = new QRuntimeWindowSurface(this, widget); - rtSurface->m_windowSurface = m_graphicsSystem->createWindowSurface(widget); + rtSurface->m_windowSurface.reset(m_graphicsSystem->createWindowSurface(widget)); widget->setWindowSurface(rtSurface); m_windowSurfaces << rtSurface; return rtSurface; @@ -379,7 +377,6 @@ void QRuntimeGraphicsSystem::setGraphicsSystem(const QString &name) for (int i = 0; i < m_pixmapDatas.size(); ++i) { QRuntimePixmapData *proxy = m_pixmapDatas.at(i); QPixmapData *newData = m_graphicsSystem->createPixmapData(proxy->m_data); - // ### TODO Optimize. Openvg and s60raster graphics systems could switch internal ARGB32_PRE QImage buffers. newData->fromImage(proxy->m_data->toImage(), Qt::NoOpaqueDetection); delete proxy->m_data; proxy->m_data = newData; @@ -390,14 +387,10 @@ void QRuntimeGraphicsSystem::setGraphicsSystem(const QString &name) QRuntimeWindowSurface *proxy = m_windowSurfaces.at(i); QWidget *widget = proxy->m_windowSurface->window(); - if(m_windowSurfaceDestroyPolicy == DestroyImmediately) { - delete proxy->m_windowSurface; - proxy->m_pendingWindowSurface = 0; - } else { - proxy->m_pendingWindowSurface = proxy->m_windowSurface; - } + if(m_windowSurfaceDestroyPolicy == DestroyAfterFirstFlush) + proxy->m_pendingWindowSurface.reset(proxy->m_windowSurface.take()); - proxy->m_windowSurface = m_graphicsSystem->createWindowSurface(widget); + proxy->m_windowSurface.reset(m_graphicsSystem->createWindowSurface(widget)); qt_widget_private(widget)->invalidateBuffer(widget->rect()); } } diff --git a/src/gui/painting/qgraphicssystem_runtime_p.h b/src/gui/painting/qgraphicssystem_runtime_p.h index d4c9152..0232241 100644 --- a/src/gui/painting/qgraphicssystem_runtime_p.h +++ b/src/gui/painting/qgraphicssystem_runtime_p.h @@ -129,8 +129,8 @@ public: virtual QPoint offset(const QWidget *widget) const; - QWindowSurface *m_windowSurface; - QWindowSurface *m_pendingWindowSurface; + QScopedPointer<QWindowSurface> m_windowSurface; + QScopedPointer<QWindowSurface> m_pendingWindowSurface; private: const QRuntimeGraphicsSystem *m_graphicsSystem; -- cgit v0.12 From 24742e54332a71db0bc5ae7b1632924ae592aea7 Mon Sep 17 00:00:00 2001 From: Christian Kamm <christian.d.kamm@nokia.com> Date: Mon, 9 Aug 2010 13:39:51 +0200 Subject: OpenGL: Fix multisample renderbuffer creation when MAX_SAMPLES is 0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previously, we would try to create one with samples = 1 anyway, potentially resulting in an INVALID_VALUE error. Task-number: QTBUG-12757 Reviewed-by: Samuel Rødal --- src/opengl/qglframebufferobject.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/opengl/qglframebufferobject.cpp b/src/opengl/qglframebufferobject.cpp index deffc20..9b8a3d1 100644 --- a/src/opengl/qglframebufferobject.cpp +++ b/src/opengl/qglframebufferobject.cpp @@ -445,11 +445,11 @@ void QGLFramebufferObjectPrivate::init(QGLFramebufferObject *q, const QSize &sz, GLint maxSamples; glGetIntegerv(GL_MAX_SAMPLES_EXT, &maxSamples); - samples = qBound(1, int(samples), int(maxSamples)); + samples = qBound(0, int(samples), int(maxSamples)); glGenRenderbuffers(1, &color_buffer); glBindRenderbuffer(GL_RENDERBUFFER_EXT, color_buffer); - if (glRenderbufferStorageMultisampleEXT) { + if (glRenderbufferStorageMultisampleEXT && samples > 0) { glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, samples, internal_format, size.width(), size.height()); } else { -- cgit v0.12 From 7d39a66fe88c039876285b21b592de20cf2e78ed Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 13:40:48 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/widgets-and-layouts/widgets.qdoc | 1 - doc/src/windows-and-dialogs/dialogs.qdoc | 7 +------ 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/doc/src/widgets-and-layouts/widgets.qdoc b/doc/src/widgets-and-layouts/widgets.qdoc index baf3dce..fbce744 100644 --- a/doc/src/widgets-and-layouts/widgets.qdoc +++ b/doc/src/widgets-and-layouts/widgets.qdoc @@ -29,7 +29,6 @@ \page widgets-and-layouts.html \title Widgets and Layouts \ingroup qt-gui-concepts - \ingroup qt-basic-concepts \brief The primary elements for designing user interfaces in Qt. \section1 Widgets diff --git a/doc/src/windows-and-dialogs/dialogs.qdoc b/doc/src/windows-and-dialogs/dialogs.qdoc index 960d7be..bcf9c0e 100644 --- a/doc/src/windows-and-dialogs/dialogs.qdoc +++ b/doc/src/windows-and-dialogs/dialogs.qdoc @@ -27,17 +27,12 @@ /*! \group standard-dialogs - \ingroup qt-basic-concepts + \ingroup qt-gui-concepts \title Standard Dialogs \brief A list of Qt classes for implementing standard dialogs. */ /*! - \group dialog-classes - \title Classes for Building Dialogs -*/ - -/*! \page dialogs.html \title Dialog Windows \ingroup qt-gui-concepts -- cgit v0.12 From 631b56c7e8e628c3399faeab3932338195073a38 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 13:45:12 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/index.qdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index 1032e30..c1c63da 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -68,7 +68,7 @@ <!-- <li><a href="qt-basic-concepts.html">Programming with Qt</a></li> --> <li><a href="qt-basic-concepts.html">Qt Basic Concepts</a></li> <li><a href="qt-gui-concepts.html">Qt GUI Concepts</a></li> - <li><a href="developing-with-qt.html">Cross-platform & Platform-specific Development</a></li> + <li><a href="developing-with-qt.html">Cross-platform & Platform-specific dev</a></li> <li><a href="technology-apis.html">Qt & standard technologies </a></li> <li><a href="best-practices.html">Qt How-to's & best practices</a></li> </ul> -- cgit v0.12 From 75bd4d9b1f14b1aea085af3f6714c06ab6ae1cd2 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Mon, 9 Aug 2010 16:11:30 +1000 Subject: PathView required some diagonal movement before a drag was initiated. Any movement beyond the threshold is sufficient. Task-number: 12747 Reviewed-by: Joona Petrell --- src/declarative/graphicsitems/qdeclarativepathview.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp index 06ac275..5771f84 100644 --- a/src/declarative/graphicsitems/qdeclarativepathview.cpp +++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp @@ -1061,7 +1061,7 @@ void QDeclarativePathView::mouseMoveEvent(QGraphicsSceneMouseEvent *event) if (!d->stealMouse) { QPointF delta = event->pos() - d->startPoint; - if (qAbs(delta.x()) > QApplication::startDragDistance() && qAbs(delta.y()) > QApplication::startDragDistance()) + if (qAbs(delta.x()) > QApplication::startDragDistance() || qAbs(delta.y()) > QApplication::startDragDistance()) d->stealMouse = true; } -- cgit v0.12 From 5f611f5a68a0994b46dbe696e5275c4fb40b7470 Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 10:58:23 +1000 Subject: Explain Flipable example further --- src/declarative/graphicsitems/qdeclarativeflipable.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativeflipable.cpp b/src/declarative/graphicsitems/qdeclarativeflipable.cpp index 8c9d2dd..b266273 100644 --- a/src/declarative/graphicsitems/qdeclarativeflipable.cpp +++ b/src/declarative/graphicsitems/qdeclarativeflipable.cpp @@ -83,10 +83,16 @@ public: \image flipable.gif - The \l Rotation element is used to specify the angle and axis of the flip, - and the \l State defines the changes in angle which produce the flipping - effect. Finally, the \l Transition creates the animation that changes the - angle over one second. + The \l Rotation element is used to specify the angle and axis of the flip. + When \c flipped is \c true, the item changes to the "back" state, where + the angle is changed to 180 degrees to produce the flipping effect. + Finally, the \l Transition creates the animation that changes the + angle over one second: when the item changes between its "back" and + default states, the NumberAnimation animates the angle between + its old and new values. + + See the \l {QML States} and \l {QML Animation} documentation for more + details on state changes and how animations work within transitions. \sa {declarative/ui-components/flipable}{Flipable example} */ -- cgit v0.12 From 7c05fdc74c6ad04c549bf367f68e3f9d8d2c438d Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 10:58:43 +1000 Subject: Merge sections about when property and default state --- doc/src/declarative/qdeclarativestates.qdoc | 95 ++++++++++++++++++----------- 1 file changed, 59 insertions(+), 36 deletions(-) diff --git a/doc/src/declarative/qdeclarativestates.qdoc b/doc/src/declarative/qdeclarativestates.qdoc index 0b91756..274040a 100644 --- a/doc/src/declarative/qdeclarativestates.qdoc +++ b/doc/src/declarative/qdeclarativestates.qdoc @@ -84,18 +84,34 @@ Rectangle. \snippet doc/src/snippets/declarative/states.qml 0 -A \l State item defines all the changes to be made in the new state. You +The \l State item defines all the changes to be made in the new state. It could specify additional properties to be changed, or create additional -PropertyChanges for other objects. (Note that a \l State can modify the -properties of other objects, not just the object that owns the state.) +PropertyChanges for other objects. It can also modify the properties of other +objects, not just the object that owns the state. For example: -For example: +\qml +Rectangle { + ... + states: [ + State { + name: "moved" + PropertyChanges { target: myRect; x: 50; y: 50; color: "blue" } + PropertyChanges { target: someOtherItem; width: 1000 } + } + ] +} +\endqml + +As a convenience, if an item only has one state, its \l {Item::}{states} +property can be defined as a single \l State, without the square-brace list +syntax: \qml -State { - name: "moved" - PropertyChanges { target: myRect; x: 50; y: 50; color: "blue" } - PropertyChanges { target: someOtherItem; width: 1000 } +Item { + ... + states: State { + ... + } } \endqml @@ -118,54 +134,61 @@ transitions between them. Of course, the \l Rectangle in the example above could have simply been moved by setting its position to (50, 50) in the mouse area's \c onClicked handler. -However, aside from enabling batched property changes, the use of states allows -an item to revert to its \e {default state}, which contains all of the items' -initial property values before they were modified in a state change. +However, aside from enabling batched property changes, one of the features of +QML states is the ability of an item to revert to its \e {default state}. +The default state contains all of an item's initial property values before +they were modified in a state change. -The default state is specified by an empty string. If the MouseArea in the -above example was changed to this: +For example, suppose the \l Rectangle should move to (50,50) when the mouse is +pressed, and then move back to its original position when the mouse is +released. This can be achieved by using the \l {State::}{when} property, +like this: -\qml -MouseArea { - anchors.fill: parent - onClicked: myRect.state == 'moved' ? myRect.state = "" : myRect.state = 'moved'; -} -\endqml - -This would toggle the \l Rectangle's state between the \e moved and \e default -states when clicked. The properties can be reverted to their initial -values without requiring the definition of another \l State that defines these -value changes. +\qml +Rectangle { + ... + MouseArea { + id: mouseArea + anchors.fill: parent + } + states: State { + name: "moved"; when: mouseArea.pressed + ... + } +} +\endqml -\section1 The "when" property +The \l {State::}{when} property is set to an expression that evaluates to +\c true when the item should be set to that state. When the mouse is pressed, +the state is changed to \e moved. When it is released, the item reverts to its +\e default state, which defines all of the item's original property values. -The \l {State::}{when} property is useful for specifying when a state should be -applied. This can be set to an expression that evaluates to \c true when an -item should change to a particular state. +Alternatively, an item can be explicitly set to its default state by setting its +\l {Item::}{state} property to an empty string (""). For example, instead of +using the \l {State::}{when} property, the above code could be changed to: -If the above example was changed to this: - \qml Rectangle { ... MouseArea { - id: mouseArea anchors.fill: parent + onPressed: myRect.state = 'moved'; + onReleased: myRect.state = ''; } states: State { - name: "moved"; when: mouseArea.pressed + name: "moved" ... } +} \endqml -The \l Rectangle would automatically change to the \e moved state when the -mouse is pressed, and revert to the default state when it is released. This is -simpler (and a better, more declarative method) than creating \c onPressed -and \c onReleased handlers in the MouseArea to set the current state. +Obviously it makes sense to use the \l {State::}{when} property when possible +as it provides a simpler (and a better, more declarative) solution than +assigning the state from signal handlers. \section1 Animating state changes -- cgit v0.12 From 380335c8b8afd302f2f3f783163b2563ee9a122a Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 11:10:22 +1000 Subject: Mention QML_IMPORT_TRACE in Modules docs --- doc/src/declarative/modules.qdoc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/doc/src/declarative/modules.qdoc b/doc/src/declarative/modules.qdoc index 9e51a40..467b7d0 100644 --- a/doc/src/declarative/modules.qdoc +++ b/doc/src/declarative/modules.qdoc @@ -302,5 +302,13 @@ For examples of \c qmldir files for plugins, see the \l {declarative/cppextensions/plugins}{Plugins} example and \l {Tutorial: Writing QML extensions with C++}. + +\section1 Debugging + +The \c QML_IMPORT_TRACE environment variable can be useful for debugging +when there are problems with finding and loading modules. See +\l{Debugging module imports} for more information. + + */ / -- cgit v0.12 From 45f6c749ff5f1773a5a52f1b40278ad390f3ae59 Mon Sep 17 00:00:00 2001 From: Bea Lam <bea.lam@nokia.com> Date: Mon, 9 Aug 2010 17:08:23 +1000 Subject: XmlListModel doc fixes Task-number: QTBUG-12749 --- src/declarative/util/qdeclarativexmllistmodel.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/declarative/util/qdeclarativexmllistmodel.cpp b/src/declarative/util/qdeclarativexmllistmodel.cpp index 7c1e1fd..8bd829e 100644 --- a/src/declarative/util/qdeclarativexmllistmodel.cpp +++ b/src/declarative/util/qdeclarativexmllistmodel.cpp @@ -560,7 +560,7 @@ void QDeclarativeXmlListModelPrivate::clear_role(QDeclarativeListProperty<QDecla ListView { width: 180; height: 300 model: xmlModel - delegate: Text { text: title + " (" + pubDate + ")" } + delegate: Text { text: title + ": " + pubDate } } \endqml @@ -855,6 +855,12 @@ qreal QDeclarativeXmlListModel::progress() const return d->progress; } +/*! + \qmlmethod void XmlListModel::errorString() + + Returns a string description of the last error that occurred + if \l status is XmlListModel::Error. +*/ QString QDeclarativeXmlListModel::errorString() const { Q_D(const QDeclarativeXmlListModel); -- cgit v0.12 From 7829343dc9e12befd6c471cc72d00139bad5d42b Mon Sep 17 00:00:00 2001 From: Carlos Manuel Duclos Vergara <carlos.duclos@nokia.com> Date: Mon, 9 Aug 2010 13:42:26 +0200 Subject: CreateFileMapping returns NULL on error , only tested with INVALID_HANDLE_VALUE. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit That code is deprecated for the most part, however under certain circumstances could be run. The fix is to check the value when using the deprecated code and change the return value to follow the logic of the new code. Task-number: QTBUG-12732 Reviewed-by: João Abecasis --- src/corelib/io/qfsfileengine_win.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/corelib/io/qfsfileengine_win.cpp b/src/corelib/io/qfsfileengine_win.cpp index 21930e1..35fa04b 100644 --- a/src/corelib/io/qfsfileengine_win.cpp +++ b/src/corelib/io/qfsfileengine_win.cpp @@ -1958,6 +1958,10 @@ uchar *QFSFileEnginePrivate::map(qint64 offset, qint64 size, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); + // Since this is a special case, we check if the return value was NULL and if so + // we change it to INVALID_HANDLE_VALUE to follow the logic inside this function. + if(0 == handle) + handle = INVALID_HANDLE_VALUE; #endif if (handle == INVALID_HANDLE_VALUE) { -- cgit v0.12 From eea84818e98af917d3cf2bf04ea17a416ef9d55e Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Mon, 9 Aug 2010 13:55:23 +0200 Subject: Correcting spelling mistakes in documentation. Part of fix for QTBUG-11938. Reviewer: David Boddie Task number: QTBUG-11938 --- demos/books/bookwindow.cpp | 2 +- demos/browser/browsermainwindow.cpp | 2 +- demos/browser/webview.cpp | 2 +- demos/qtdemo/menumanager.cpp | 2 +- src/corelib/concurrent/qtconcurrentfilter.cpp | 2 +- src/corelib/concurrent/qtconcurrentmap.cpp | 2 +- src/corelib/concurrent/qtconcurrentresultstore.cpp | 2 +- src/corelib/io/qfileinfo.cpp | 4 ++-- src/corelib/thread/qmutexpool.cpp | 2 +- src/corelib/tools/qbytearraymatcher.h | 2 +- src/corelib/tools/qstringmatcher.h | 2 +- src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp | 2 +- src/declarative/qml/qdeclarativecompiledbindings.cpp | 2 +- src/declarative/qml/qdeclarativecomponent.cpp | 4 ++-- src/declarative/qml/qdeclarativeimageprovider.cpp | 2 +- src/declarative/qml/qdeclarativeinstruction.cpp | 2 +- src/declarative/qml/qdeclarativeproperty.cpp | 2 +- src/declarative/qml/qdeclarativescriptparser.cpp | 2 +- src/gui/embedded/qkbdlinuxinput_qws.cpp | 2 +- src/gui/embedded/qkbdqnx_qws.cpp | 2 +- src/gui/itemviews/qsortfilterproxymodel.cpp | 2 +- src/gui/kernel/qapplication_s60.cpp | 4 ++-- src/gui/kernel/qwidget_win.cpp | 4 ++-- src/gui/widgets/qcommandlinkbutton.cpp | 2 +- src/gui/widgets/qmainwindowlayout.cpp | 2 +- src/gui/widgets/qmenu.cpp | 4 ++-- src/gui/widgets/qmenubar.cpp | 2 +- src/gui/widgets/qprintpreviewwidget.cpp | 2 +- src/gui/widgets/qtoolbarextension.cpp | 2 +- src/network/kernel/qhostinfo.cpp | 2 +- src/network/socket/qabstractsocket.cpp | 2 +- src/network/socket/qlocalsocket_win.cpp | 2 +- src/network/socket/qnativesocketengine_unix.cpp | 2 +- src/network/ssl/qsslsocket.cpp | 2 +- src/opengl/qgl.cpp | 2 +- src/qt3support/widgets/q3gridview.cpp | 2 +- src/script/api/qscriptcontext.cpp | 2 +- src/tools/moc/moc.cpp | 2 +- tools/qdoc3/htmlgenerator.cpp | 4 ++-- 39 files changed, 45 insertions(+), 45 deletions(-) diff --git a/demos/books/bookwindow.cpp b/demos/books/bookwindow.cpp index 089d5e0..c801283 100644 --- a/demos/books/bookwindow.cpp +++ b/demos/books/bookwindow.cpp @@ -64,7 +64,7 @@ BookWindow::BookWindow() model->setEditStrategy(QSqlTableModel::OnManualSubmit); model->setTable("books"); - // Remeber the indexes of the columns + // Remember the indexes of the columns authorIdx = model->fieldIndex("author"); genreIdx = model->fieldIndex("genre"); diff --git a/demos/browser/browsermainwindow.cpp b/demos/browser/browsermainwindow.cpp index 8c2ed89..50c2cf8 100644 --- a/demos/browser/browsermainwindow.cpp +++ b/demos/browser/browsermainwindow.cpp @@ -670,7 +670,7 @@ void BrowserMainWindow::slotPrivateBrowsing() " items are automatically removed from the Downloads window," \ " new cookies are not stored, current cookies can't be accessed," \ " site icons wont be stored, session wont be saved, " \ - " and searches are not addded to the pop-up menu in the Google search box." \ + " and searches are not added to the pop-up menu in the Google search box." \ " Until you close the window, you can still click the Back and Forward buttons" \ " to return to the webpages you have opened.").arg(title); diff --git a/demos/browser/webview.cpp b/demos/browser/webview.cpp index 2f9b3e6..2cbd2f1 100644 --- a/demos/browser/webview.cpp +++ b/demos/browser/webview.cpp @@ -260,7 +260,7 @@ void WebView::setProgress(int progress) void WebView::loadFinished() { if (100 != m_progress) { - qWarning() << "Recieved finished signal while progress is still:" << progress() + qWarning() << "Received finished signal while progress is still:" << progress() << "Url:" << url(); } m_progress = 0; diff --git a/demos/qtdemo/menumanager.cpp b/demos/qtdemo/menumanager.cpp index c9ffecb..5b851b4 100644 --- a/demos/qtdemo/menumanager.cpp +++ b/demos/qtdemo/menumanager.cpp @@ -449,7 +449,7 @@ void MenuManager::init(MainWindow *window) window->scene->setStickyFocus(true); window->setFocus(); }else{ - qDebug() << "Error intializing QML subsystem, Declarative examples will not work"; + qDebug() << "Error initializing QML subsystem, Declarative examples will not work"; } } diff --git a/src/corelib/concurrent/qtconcurrentfilter.cpp b/src/corelib/concurrent/qtconcurrentfilter.cpp index 36febe7..29c3edb 100644 --- a/src/corelib/concurrent/qtconcurrentfilter.cpp +++ b/src/corelib/concurrent/qtconcurrentfilter.cpp @@ -117,7 +117,7 @@ function, and should merge the \e{intermediate} into the \e{result} variable. QtConcurrent::filteredReduced() guarantees that only one thread will call reduce at a time, so using a mutex to lock the result variable - is not neccesary. The QtConcurrent::ReduceOptions enum provides a way to + is not necessary. The QtConcurrent::ReduceOptions enum provides a way to control the order in which the reduction is done. \section1 Additional API Features diff --git a/src/corelib/concurrent/qtconcurrentmap.cpp b/src/corelib/concurrent/qtconcurrentmap.cpp index e74d69c..4303ff6 100644 --- a/src/corelib/concurrent/qtconcurrentmap.cpp +++ b/src/corelib/concurrent/qtconcurrentmap.cpp @@ -161,7 +161,7 @@ function, and should merge the \e{intermediate} into the \e{result} variable. QtConcurrent::mappedReduced() guarantees that only one thread will call reduce at a time, so using a mutex to lock the result variable - is not neccesary. The QtConcurrent::ReduceOptions enum provides a way to + is not necessary. The QtConcurrent::ReduceOptions enum provides a way to control the order in which the reduction is done. If QtConcurrent::UnorderedReduce is used (the default), the order is undefined, while QtConcurrent::OrderedReduce ensures that the reduction diff --git a/src/corelib/concurrent/qtconcurrentresultstore.cpp b/src/corelib/concurrent/qtconcurrentresultstore.cpp index ad4b2cf..65f3afa 100644 --- a/src/corelib/concurrent/qtconcurrentresultstore.cpp +++ b/src/corelib/concurrent/qtconcurrentresultstore.cpp @@ -236,7 +236,7 @@ int ResultStoreBase::count() const return resultCount; } -// returns the insert index, calling this funciton with +// returns the insert index, calling this function with // index equal to -1 returns the next available index. int ResultStoreBase::updateInsertIndex(int index, int _count) { diff --git a/src/corelib/io/qfileinfo.cpp b/src/corelib/io/qfileinfo.cpp index 37591c5..61f7180 100644 --- a/src/corelib/io/qfileinfo.cpp +++ b/src/corelib/io/qfileinfo.cpp @@ -797,12 +797,12 @@ QString QFileInfo::suffix() const \bold{Note:} The QDir returned always corresponds to the object's parent directory, even if the QFileInfo represents a directory. - For each of the follwing, dir() returns a QDir for + For each of the following, dir() returns a QDir for \c{"~/examples/191697"}. \snippet doc/src/snippets/fileinfo/main.cpp 0 - For each of the follwing, dir() returns a QDir for + For each of the following, dir() returns a QDir for \c{"."}. \snippet doc/src/snippets/fileinfo/main.cpp 1 diff --git a/src/corelib/thread/qmutexpool.cpp b/src/corelib/thread/qmutexpool.cpp index d9abdc5..59211fb 100644 --- a/src/corelib/thread/qmutexpool.cpp +++ b/src/corelib/thread/qmutexpool.cpp @@ -46,7 +46,7 @@ QT_BEGIN_NAMESPACE -// qt_global_mutexpool is here for backwards compatability only, +// qt_global_mutexpool is here for backwards compatibility only, // use QMutexpool::instance() in new clode. Q_CORE_EXPORT QMutexPool *qt_global_mutexpool = 0; Q_GLOBAL_STATIC_WITH_ARGS(QMutexPool, globalMutexPool, (QMutex::Recursive)) diff --git a/src/corelib/tools/qbytearraymatcher.h b/src/corelib/tools/qbytearraymatcher.h index 8e7bc21..d3db4e9 100644 --- a/src/corelib/tools/qbytearraymatcher.h +++ b/src/corelib/tools/qbytearraymatcher.h @@ -78,7 +78,7 @@ private: QByteArrayMatcherPrivate *d; QByteArray q_pattern; #ifdef Q_CC_RVCT -// explicitely allow anonymous unions for RVCT to prevent compiler warnings +// explicitly allow anonymous unions for RVCT to prevent compiler warnings # pragma push # pragma anon_unions #endif diff --git a/src/corelib/tools/qstringmatcher.h b/src/corelib/tools/qstringmatcher.h index 1aafcb8..451aeb6 100644 --- a/src/corelib/tools/qstringmatcher.h +++ b/src/corelib/tools/qstringmatcher.h @@ -78,7 +78,7 @@ private: QString q_pattern; Qt::CaseSensitivity q_cs; #ifdef Q_CC_RVCT -// explicitely allow anonymous unions for RVCT to prevent compiler warnings +// explicitly allow anonymous unions for RVCT to prevent compiler warnings # pragma push # pragma anon_unions #endif diff --git a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp index ceb1961..a489b5a 100644 --- a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp +++ b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp @@ -525,7 +525,7 @@ QVariant QDeclarativeVisualDataModelDataMetaObject::initialValue(int propId) QVariant value = model->m_listModelInterface->data(data->m_index, *it); return value; } else if (model->m_roles.count() == 1 && propName == "modelData") { - //for compatability with other lists, assign modelData if there is only a single role + //for compatibility with other lists, assign modelData if there is only a single role QVariant value = model->m_listModelInterface->data(data->m_index, model->m_roles.first()); return value; } diff --git a/src/declarative/qml/qdeclarativecompiledbindings.cpp b/src/declarative/qml/qdeclarativecompiledbindings.cpp index 507e47b..723da94 100644 --- a/src/declarative/qml/qdeclarativecompiledbindings.cpp +++ b/src/declarative/qml/qdeclarativecompiledbindings.cpp @@ -1628,7 +1628,7 @@ void QDeclarativeBindingCompiler::dump(const QByteArray &programData) /*! Clear the state associated with attempting to compile a specific binding. -This does not clear the global "commited binding" states. +This does not clear the global "committed binding" states. */ void QDeclarativeBindingCompilerPrivate::resetInstanceState() { diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp index 1d48b1a..5f4a063 100644 --- a/src/declarative/qml/qdeclarativecomponent.cpp +++ b/src/declarative/qml/qdeclarativecomponent.cpp @@ -192,7 +192,7 @@ class QByteArray; \value Null This QDeclarativeComponent has no data. Call loadUrl() or setData() to add QML content. \value Ready This QDeclarativeComponent is ready and create() may be called. \value Loading This QDeclarativeComponent is loading network data. - \value Error An error has occured. Call errors() to retrieve a list of \{QDeclarativeError}{errors}. + \value Error An error has occurred. Call errors() to retrieve a list of \{QDeclarativeError}{errors}. */ void QDeclarativeComponentPrivate::typeDataReady() @@ -518,7 +518,7 @@ void QDeclarativeComponent::loadUrl(const QUrl &url) } /*! - Return the list of errors that occured during the last compile or create + Return the list of errors that occurred during the last compile or create operation. An empty list is returned if isError() is not set. */ QList<QDeclarativeError> QDeclarativeComponent::errors() const diff --git a/src/declarative/qml/qdeclarativeimageprovider.cpp b/src/declarative/qml/qdeclarativeimageprovider.cpp index 241df87..27269b7 100644 --- a/src/declarative/qml/qdeclarativeimageprovider.cpp +++ b/src/declarative/qml/qdeclarativeimageprovider.cpp @@ -112,7 +112,7 @@ public: } \endcode - Now the images can be succesfully loaded in QML: + Now the images can be successfully loaded in QML: \image imageprovider.png diff --git a/src/declarative/qml/qdeclarativeinstruction.cpp b/src/declarative/qml/qdeclarativeinstruction.cpp index 0f7b09d..1767d2f 100644 --- a/src/declarative/qml/qdeclarativeinstruction.cpp +++ b/src/declarative/qml/qdeclarativeinstruction.cpp @@ -218,7 +218,7 @@ void QDeclarativeCompiledData::dump(QDeclarativeInstruction *instr, int idx) qWarning().nospace() << idx << "\t\t" << line << "\t" << "DEFER" << "\t\t\t" << instr->defer.deferCount; break; default: - qWarning().nospace() << idx << "\t\t" << line << "\t" << "XXX UNKOWN INSTRUCTION" << "\t" << instr->type; + qWarning().nospace() << idx << "\t\t" << line << "\t" << "XXX UNKNOWN INSTRUCTION" << "\t" << instr->type; break; } #endif // QT_NO_DEBUG_STREAM diff --git a/src/declarative/qml/qdeclarativeproperty.cpp b/src/declarative/qml/qdeclarativeproperty.cpp index 071dd07..515c4d6 100644 --- a/src/declarative/qml/qdeclarativeproperty.cpp +++ b/src/declarative/qml/qdeclarativeproperty.cpp @@ -640,7 +640,7 @@ QDeclarativePropertyPrivate::binding(const QDeclarativeProperty &that) is assumed by the caller. \a flags is passed through to the binding and is used for the initial update (when - the binding sets the intial value, it will use these flags for the write). + the binding sets the initial value, it will use these flags for the write). */ QDeclarativeAbstractBinding * QDeclarativePropertyPrivate::setBinding(const QDeclarativeProperty &that, diff --git a/src/declarative/qml/qdeclarativescriptparser.cpp b/src/declarative/qml/qdeclarativescriptparser.cpp index f703cf5..0657f49 100644 --- a/src/declarative/qml/qdeclarativescriptparser.cpp +++ b/src/declarative/qml/qdeclarativescriptparser.cpp @@ -760,7 +760,7 @@ bool ProcessAST::visit(AST::UiArrayBinding *node) prop->listValueRange.offset = node->lbracketToken.offset; prop->listValueRange.length = node->rbracketToken.offset + node->rbracketToken.length - node->lbracketToken.offset; - // Store the positions of the comma token too, again for the DOM to be able to retreive it. + // Store the positions of the comma token too, again for the DOM to be able to retrieve it. prop->listCommaPositions = collectCommas(node->members); while (propertyCount--) diff --git a/src/gui/embedded/qkbdlinuxinput_qws.cpp b/src/gui/embedded/qkbdlinuxinput_qws.cpp index 6c91a08..f53c444 100644 --- a/src/gui/embedded/qkbdlinuxinput_qws.cpp +++ b/src/gui/embedded/qkbdlinuxinput_qws.cpp @@ -138,7 +138,7 @@ QWSLinuxInputKbPrivate::QWSLinuxInputKbPrivate(QWSLinuxInputKeyboardHandler *h, // record the original mode so we can restore it again in the destructor. ::ioctl(m_tty_fd, KDGKBMODE, &m_orig_kbmode); - // setting this tranlation mode is even needed in INPUT mode to prevent + // setting this translation mode is even needed in INPUT mode to prevent // the shell from also interpreting codes, if the process has a tty // attached: e.g. Ctrl+C wouldn't copy, but kill the application. ::ioctl(m_tty_fd, KDSKBMODE, K_MEDIUMRAW); diff --git a/src/gui/embedded/qkbdqnx_qws.cpp b/src/gui/embedded/qkbdqnx_qws.cpp index fbc683e..72d1cb5 100644 --- a/src/gui/embedded/qkbdqnx_qws.cpp +++ b/src/gui/embedded/qkbdqnx_qws.cpp @@ -150,7 +150,7 @@ void QWSQnxKeyboardHandler::socketActivated() // figure out whether it's a press bool isPress = packet.data.key_cap & KEY_DOWN; - // figure out wheter the key is still pressed and the key event is repeated + // figure out whether the key is still pressed and the key event is repeated bool isRepeat = packet.data.key_cap & KEY_REPEAT; Qt::Key key = Qt::Key_unknown; diff --git a/src/gui/itemviews/qsortfilterproxymodel.cpp b/src/gui/itemviews/qsortfilterproxymodel.cpp index f9b6b94..953a7f1 100644 --- a/src/gui/itemviews/qsortfilterproxymodel.cpp +++ b/src/gui/itemviews/qsortfilterproxymodel.cpp @@ -774,7 +774,7 @@ void QSortFilterProxyModelPrivate::source_items_inserted( if (model->rowCount(source_parent) == delta_item_count) { // Items were inserted where there were none before. // If it was new rows make sure to create mappings for columns so that a - // valid mapping can be retreived later and vice-versa. + // valid mapping can be retrieved later and vice-versa. QVector<int> &orthogonal_proxy_to_source = (orient == Qt::Horizontal) ? m->source_rows : m->source_columns; QVector<int> &orthogonal_source_to_proxy = (orient == Qt::Horizontal) ? m->proxy_rows : m->proxy_columns; diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index 1f6a4ae..e36ebb9 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1328,7 +1328,7 @@ void qt_init(QApplicationPrivate * /* priv */, int) // framework destruction. TTrapHandler *origTrapHandler = User::TrapHandler(); - // The S60 framework has not been initalized. We need to do it. + // The S60 framework has not been initialized. We need to do it. TApaApplicationFactory factory(S60->s60ApplicationFactory ? S60->s60ApplicationFactory : newS60Application); CApaCommandLine* commandLine = 0; @@ -1506,7 +1506,7 @@ void qt_init(QApplicationPrivate * /* priv */, int) */ // Register WId with the metatype system. This is to enable - // QWidgetPrivate::create_sys to used delayed slot invokation in order + // QWidgetPrivate::create_sys to used delayed slot invocation in order // to destroy WId objects during reparenting. qRegisterMetaType<WId>("WId"); } diff --git a/src/gui/kernel/qwidget_win.cpp b/src/gui/kernel/qwidget_win.cpp index 23f57da..59035b1 100644 --- a/src/gui/kernel/qwidget_win.cpp +++ b/src/gui/kernel/qwidget_win.cpp @@ -166,7 +166,7 @@ static void qt_tablet_init() qt_tablet_widget = new QWidget(0); qt_tablet_widget->createWinId(); qt_tablet_widget->setObjectName(QLatin1String("Qt internal tablet widget")); - // We dont need this internal widget to appear in QApplication::topLevelWidgets() + // We don't need this internal widget to appear in QApplication::topLevelWidgets() if (QWidgetPrivate::allWidgets) QWidgetPrivate::allWidgets->remove(qt_tablet_widget); LOGCONTEXT lcMine; @@ -1547,7 +1547,7 @@ bool QWidgetPrivate::shouldShowMaximizeButton() { if (data.window_flags & Qt::MSWindowsFixedSizeDialogHint) return false; - // if the user explicitely asked for the maximize button, we try to add + // if the user explicitly asked for the maximize button, we try to add // it even if the window has fixed size. if (data.window_flags & Qt::CustomizeWindowHint && data.window_flags & Qt::WindowMaximizeButtonHint) diff --git a/src/gui/widgets/qcommandlinkbutton.cpp b/src/gui/widgets/qcommandlinkbutton.cpp index d3b5869..a6f5f7d 100644 --- a/src/gui/widgets/qcommandlinkbutton.cpp +++ b/src/gui/widgets/qcommandlinkbutton.cpp @@ -349,7 +349,7 @@ void QCommandLinkButton::paintEvent(QPaintEvent *) QStyleOptionButton option; initStyleOption(&option); - //Enable command link appearence on Vista + //Enable command link appearance on Vista option.features |= QStyleOptionButton::CommandLinkButton; option.text = QString(); option.icon = QIcon(); //we draw this ourselves diff --git a/src/gui/widgets/qmainwindowlayout.cpp b/src/gui/widgets/qmainwindowlayout.cpp index 593e391..62ee398 100644 --- a/src/gui/widgets/qmainwindowlayout.cpp +++ b/src/gui/widgets/qmainwindowlayout.cpp @@ -943,7 +943,7 @@ void QMainWindowLayout::toggleToolBarsVisible() #ifdef Q_WS_MAC if (layoutState.mainWindow->unifiedTitleAndToolBarOnMac()) { // If we hit this case, someone has pressed the "toolbar button" which will - // toggle the unified toolbar visiblity, because that's what the user wants. + // toggle the unified toolbar visibility, because that's what the user wants. // We might be in a situation where someone has hidden all the toolbars // beforehand (maybe in construction), but now they've hit this button and // and are expecting the items to show. What do we do? diff --git a/src/gui/widgets/qmenu.cpp b/src/gui/widgets/qmenu.cpp index 7941c4e..4bea6de 100644 --- a/src/gui/widgets/qmenu.cpp +++ b/src/gui/widgets/qmenu.cpp @@ -262,7 +262,7 @@ void QMenuPrivate::updateActionRects() const const int deskFw = style->pixelMetric(QStyle::PM_MenuDesktopFrameWidth, &opt, q); const int tearoffHeight = tearoff ? style->pixelMetric(QStyle::PM_MenuTearoffHeight, &opt, q) : 0; - //for compatability now - will have to refactor this away.. + //for compatibility now - will have to refactor this away tabWidth = 0; maxIconWidth = 0; hasCheckableItems = false; @@ -1154,7 +1154,7 @@ void QMenuPrivate::_q_actionHovered() bool QMenuPrivate::hasMouseMoved(const QPoint &globalPos) { - //determines if the mouse has moved (ie its intial position has + //determines if the mouse has moved (ie its initial position has //changed by more than QApplication::startDragDistance() //or if there were at least 6 mouse motions) return motions > 6 || diff --git a/src/gui/widgets/qmenubar.cpp b/src/gui/widgets/qmenubar.cpp index e8e80b7..df16f7f 100644 --- a/src/gui/widgets/qmenubar.cpp +++ b/src/gui/widgets/qmenubar.cpp @@ -102,7 +102,7 @@ void QMenuBarExtension::paintEvent(QPaintEvent *) QStylePainter p(this); QStyleOptionToolButton opt; initStyleOption(&opt); - // We do not need to draw both extention arrows + // We do not need to draw both extension arrows opt.features &= ~QStyleOptionToolButton::HasMenu; p.drawComplexControl(QStyle::CC_ToolButton, opt); } diff --git a/src/gui/widgets/qprintpreviewwidget.cpp b/src/gui/widgets/qprintpreviewwidget.cpp index 45b15ef..ea311d3 100644 --- a/src/gui/widgets/qprintpreviewwidget.cpp +++ b/src/gui/widgets/qprintpreviewwidget.cpp @@ -469,7 +469,7 @@ void QPrintPreviewWidgetPrivate::setZoomFactor(qreal _zoomFactor) \o Create the QPrintPreviewWidget Construct the QPrintPreviewWidget either by passing in an - exisiting QPrinter object, or have QPrintPreviewWidget create a + existing QPrinter object, or have QPrintPreviewWidget create a default constructed QPrinter object for you. \o Connect the paintRequested() signal to a slot. diff --git a/src/gui/widgets/qtoolbarextension.cpp b/src/gui/widgets/qtoolbarextension.cpp index 032c6f0..574a775 100644 --- a/src/gui/widgets/qtoolbarextension.cpp +++ b/src/gui/widgets/qtoolbarextension.cpp @@ -75,7 +75,7 @@ void QToolBarExtension::paintEvent(QPaintEvent *) QStylePainter p(this); QStyleOptionToolButton opt; initStyleOption(&opt); - // We do not need to draw both extention arrows + // We do not need to draw both extension arrows opt.features &= ~QStyleOptionToolButton::HasMenu; p.drawComplexControl(QStyle::CC_ToolButton, opt); } diff --git a/src/network/kernel/qhostinfo.cpp b/src/network/kernel/qhostinfo.cpp index 8ae1305..348b0d2 100644 --- a/src/network/kernel/qhostinfo.cpp +++ b/src/network/kernel/qhostinfo.cpp @@ -647,7 +647,7 @@ void QHostInfoLookupManager::lookupFinished(QHostInfoRunnable *r) work(); } -// This function returns immediatly when we had a result in the cache, else it will later emit a signal +// This function returns immediately when we had a result in the cache, else it will later emit a signal QHostInfo qt_qhostinfo_lookup(const QString &name, QObject *receiver, const char *member, bool *valid, int *id) { *valid = false; diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index b604e89..505db71 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -1380,7 +1380,7 @@ void QAbstractSocket::connectToHostImplementation(const QString &hostName, quint #endif } else { if (d->threadData->eventDispatcher) { - // this internal API for QHostInfo either immediatly gives us the desired + // this internal API for QHostInfo either immediately gives us the desired // QHostInfo from cache or later calls the _q_startConnecting slot. bool immediateResultValid = false; QHostInfo hostInfo = qt_qhostinfo_lookup(hostName, diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index 4907f2c..1e0bced 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -306,7 +306,7 @@ void QLocalSocketPrivate::startAsyncRead() /*! \internal Sets the correct size of the read buffer after a read operation. - Returns false, if an error occured or the connection dropped. + Returns false, if an error occurred or the connection dropped. */ bool QLocalSocketPrivate::completeAsyncRead() { diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp index f91ce5f..fe28863 100644 --- a/src/network/socket/qnativesocketengine_unix.cpp +++ b/src/network/socket/qnativesocketengine_unix.cpp @@ -562,7 +562,7 @@ int QNativeSocketEnginePrivate::nativeAccept() #else int acceptedDescriptor = qt_safe_accept(socketDescriptor, 0, 0); #endif - //check if we have vaild descriptor at all + //check if we have valid descriptor at all if(acceptedDescriptor > 0) { // Ensure that the socket is closed on exec*() ::fcntl(acceptedDescriptor, F_SETFD, FD_CLOEXEC); diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp index f73068e..91265f3 100644 --- a/src/network/ssl/qsslsocket.cpp +++ b/src/network/ssl/qsslsocket.cpp @@ -210,7 +210,7 @@ valid. On failure, QSslSocket will emit the QSslSocket::sslErrors() signal. This mode is the default for clients. - \value AutoVerifyPeer QSslSocket will automaticaly use QueryPeer for + \value AutoVerifyPeer QSslSocket will automatically use QueryPeer for server sockets and VerifyPeer for client sockets. \sa QSslSocket::peerVerifyMode() diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index 6120a85..4daa866 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -1991,7 +1991,7 @@ struct DDSFormat { option helps preserve this default behavior. \omitvalue CanFlipNativePixmapBindOption Used by x11 from pixmap to choose - wether or not it can bind the pixmap upside down or not. + whether or not it can bind the pixmap upside down or not. \omitvalue MemoryManagedBindOption Used by paint engines to indicate that the pixmap should be memory managed along side with diff --git a/src/qt3support/widgets/q3gridview.cpp b/src/qt3support/widgets/q3gridview.cpp index 343b49f..b270a38 100644 --- a/src/qt3support/widgets/q3gridview.cpp +++ b/src/qt3support/widgets/q3gridview.cpp @@ -84,7 +84,7 @@ using namespace Qt; size in a potentially scrollable canvas. If you need rows and columns with different sizes, use a Q3Table instead. If you need a simple list of items, use a Q3ListBox. If you need to present - hierachical data use a Q3ListView, and if you need random objects + hierarichal data use a Q3ListView, and if you need random objects at random positions, consider using either a Q3IconView or a Q3Canvas. */ diff --git a/src/script/api/qscriptcontext.cpp b/src/script/api/qscriptcontext.cpp index 1a11100..abaf5f9 100644 --- a/src/script/api/qscriptcontext.cpp +++ b/src/script/api/qscriptcontext.cpp @@ -324,7 +324,7 @@ QScriptValue QScriptContext::argumentsObject() const When a function is called as constructor, the thisObject() contains the newly constructed object to be initialized. - \note This function is only guarenteed to work for a context + \note This function is only guaranteed to work for a context corresponding to native functions. */ bool QScriptContext::isCalledAsConstructor() const diff --git a/src/tools/moc/moc.cpp b/src/tools/moc/moc.cpp index 84d1567..ac49d65 100644 --- a/src/tools/moc/moc.cpp +++ b/src/tools/moc/moc.cpp @@ -1211,7 +1211,7 @@ bool Moc::until(Token target) { //when searching commas within the default argument, we should take care of template depth (anglecount) // unfortunatelly, we do not have enough semantic information to know if '<' is the operator< or - // the begining of a template type. so we just use heuristics. + // the beginning of a template type. so we just use heuristics. int possible = -1; while (index < symbols.size()) { diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp index d23b41e..eb33ce9 100644 --- a/tools/qdoc3/htmlgenerator.cpp +++ b/tools/qdoc3/htmlgenerator.cpp @@ -2027,7 +2027,7 @@ void HtmlGenerator::generateIncludes(const InnerNode *inner, CodeMarker *marker) } /*! - Generates a table of contents begining at \a node. + Generates a table of contents beginning at \a node. */ void HtmlGenerator::generateTableOfContents(const Node *node, CodeMarker *marker, @@ -2113,7 +2113,7 @@ void HtmlGenerator::generateTableOfContents(const Node *node, /*! Revised for the new doc format. - Generates a table of contents begining at \a node. + Generates a table of contents beginning at \a node. */ void HtmlGenerator::generateTableOfContents(const Node *node, CodeMarker *marker, -- cgit v0.12 From 6648d81c880012bad52380bd73bbe92d68260f7e Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Mon, 9 Aug 2010 14:27:50 +0200 Subject: doc: Fixed some qdoc errors. --- doc/src/frameworks-technologies/dnd.qdoc | 1 - doc/src/index.qdoc | 14 +++++++------- doc/src/overviews.qdoc | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/doc/src/frameworks-technologies/dnd.qdoc b/doc/src/frameworks-technologies/dnd.qdoc index c5dd27c..ebfa39e 100644 --- a/doc/src/frameworks-technologies/dnd.qdoc +++ b/doc/src/frameworks-technologies/dnd.qdoc @@ -30,7 +30,6 @@ \title Drag and Drop \brief An overview of the drag and drop system provided by Qt. - \ingroup technology-apis \ingroup qt-gui-concepts Drag and drop provides a simple visual mechanism which users can use diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc index c1c63da..0609eb8 100644 --- a/doc/src/index.qdoc +++ b/doc/src/index.qdoc @@ -65,11 +65,10 @@ </div> <div class="sectionlist tricol"> <ul> - <!-- <li><a href="qt-basic-concepts.html">Programming with Qt</a></li> --> - <li><a href="qt-basic-concepts.html">Qt Basic Concepts</a></li> - <li><a href="qt-gui-concepts.html">Qt GUI Concepts</a></li> - <li><a href="developing-with-qt.html">Cross-platform & Platform-specific dev</a></li> - <li><a href="technology-apis.html">Qt & standard technologies </a></li> + <li><a href="qt-basic-concepts.html">Basic Concepts</a></li> + <li><a href="qt-gui-concepts.html">UI Components</a></li> + <li><a href="developing-with-qt.html">Cross-platform & Platform-specific</a></li> + <li><a href="technology-apis.html">Qt API's for standard technologies </a></li> <li><a href="best-practices.html">Qt How-to's & best practices</a></li> </ul> </div> @@ -78,8 +77,9 @@ <li><a href="declarativeui.html">Qt Quick</a></li> <li><a href="qdeclarativeintroduction.html">Introduction to QML</a></li> <li><a href="qdeclarativeelements.html">QML Elements</a></li> - <li><a href="qt-gui-concepts.html">UI components</a></li> - <!-- <li><a href="declarativeui.html">Qt & GUI design</a></li> --> + <li><a href="model-view-programming.html">Model/View Programming</a></li> + <li><a href="qt-network.html">Network Programming</a></li> + <li><a href="qt-graphics.html">Graphics and Printing</a></li> </ul> </div> </div> diff --git a/doc/src/overviews.qdoc b/doc/src/overviews.qdoc index a1773a3..3c02705 100644 --- a/doc/src/overviews.qdoc +++ b/doc/src/overviews.qdoc @@ -63,7 +63,7 @@ /*! \group qt-graphics - \title Qt Graphics and Painting + \title Qt Graphics and Printing \brief The Qt components for doing graphics. -- cgit v0.12 From 720f4ca0ec3b42a101ac24b2cf74cdc87d29eac9 Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Mon, 9 Aug 2010 14:11:46 +0200 Subject: Fix QString::arg: When specifying %L1, the group separator would be added even if the local specify QLocale::OmitGroupSeparator Task-number: QTBUG-9281 Reviewed-by: Denis --- src/corelib/tools/qstring.cpp | 13 ++++++++----- tests/auto/qstring/tst_qstring.cpp | 12 ++++++++++++ 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index d6ab5da..2fd9a0b 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -6645,8 +6645,9 @@ QString QString::arg(qlonglong a, int fieldWidth, int base, const QChar &fillCha QString locale_arg; if (d.locale_occurrences > 0) { QLocale locale; - locale_arg = locale.d()->longLongToString(a, -1, base, fieldWidth, - flags | QLocalePrivate::ThousandsGroup); + if (!locale.numberOptions() & QLocale::OmitGroupSeparator) + flags |= QLocalePrivate::ThousandsGroup; + locale_arg = locale.d()->longLongToString(a, -1, base, fieldWidth, flags); } return replaceArgEscapes(*this, d, fieldWidth, arg, locale_arg, fillChar); @@ -6688,8 +6689,9 @@ QString QString::arg(qulonglong a, int fieldWidth, int base, const QChar &fillCh QString locale_arg; if (d.locale_occurrences > 0) { QLocale locale; - locale_arg = locale.d()->unsLongLongToString(a, -1, base, fieldWidth, - flags | QLocalePrivate::ThousandsGroup); + if (!locale.numberOptions() & QLocale::OmitGroupSeparator) + flags |= QLocalePrivate::ThousandsGroup; + locale_arg = locale.d()->unsLongLongToString(a, -1, base, fieldWidth, flags); } return replaceArgEscapes(*this, d, fieldWidth, arg, locale_arg, fillChar); @@ -6822,7 +6824,8 @@ QString QString::arg(double a, int fieldWidth, char fmt, int prec, const QChar & if (d.locale_occurrences > 0) { QLocale locale; - flags |= QLocalePrivate::ThousandsGroup; + if (!locale.numberOptions() & QLocale::OmitGroupSeparator) + flags |= QLocalePrivate::ThousandsGroup; locale_arg = locale.d()->doubleToString(a, prec, form, fieldWidth, flags); } diff --git a/tests/auto/qstring/tst_qstring.cpp b/tests/auto/qstring/tst_qstring.cpp index c887936..ef82769 100644 --- a/tests/auto/qstring/tst_qstring.cpp +++ b/tests/auto/qstring/tst_qstring.cpp @@ -208,6 +208,7 @@ private slots: void repeated_data() const; void task262677remove(); void QTBUG10404_compareRef(); + void QTBUG9281_arg_locale(); }; typedef QList<int> IntList; @@ -4860,6 +4861,17 @@ void tst_QString::QTBUG10404_compareRef() QVERIFY(QStringRef(&a2, 1, 2).compare(QStringRef(&a, 1, 3), Qt::CaseInsensitive) < 0); } +void tst_QString::QTBUG9281_arg_locale() +{ + QLocale l(QLocale::English, QLocale::UnitedKingdom); + l.setNumberOptions(QLocale::OmitGroupSeparator); + QLocale::setDefault(l); + QString str("*%L1*%L2*"); + str = str.arg(123456).arg(1234.56); + QCOMPARE(str, QString::fromLatin1("*123456*1234.56*")); + QLocale::setDefault(QLocale::C); +} + QTEST_APPLESS_MAIN(tst_QString) -- cgit v0.12 From 163458f6363d32be453a186e02216f574f62dda3 Mon Sep 17 00:00:00 2001 From: Jerome Pasion <jerome.pasion@nokia.com> Date: Mon, 9 Aug 2010 14:48:47 +0200 Subject: Added comment about calendarPopup in setCalendarWidget function documentation. Reviewer: David Boddie Task: QTBUG-12300 --- src/gui/widgets/qdatetimeedit.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gui/widgets/qdatetimeedit.cpp b/src/gui/widgets/qdatetimeedit.cpp index 50fa9c9..7a61dc7 100644 --- a/src/gui/widgets/qdatetimeedit.cpp +++ b/src/gui/widgets/qdatetimeedit.cpp @@ -754,6 +754,7 @@ QCalendarWidget *QDateTimeEdit::calendarWidget() const Sets the given \a calendarWidget as the widget to be used for the calendar pop-up. The editor does not automatically take ownership of the calendar widget. + \note calendarPopup must be set to true before setting the calendar widget. \sa calendarPopup */ void QDateTimeEdit::setCalendarWidget(QCalendarWidget *calendarWidget) -- cgit v0.12 From 3b9c811a658d45f6e84a98ac26a5d122b34254fc Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" <bradley.hughes@nokia.com> Date: Mon, 9 Aug 2010 13:27:31 +0200 Subject: Fix invalid memory write during recursive timer activation The handler for one timer recurses the event loop, and the handler for another timer removes the first timer, returning from the recursion and the handler for the first timer causes an invalid write (since the timer info for the first timer has been deleted). Fix this by keeping an active reference in QTimerInfo (instead of just a bool inTimerEvent). If this is non-zero, the timer is currently being delivered, so we prevent more delivery. When a timer is removed and it's activateRef is set, we clear it so that the delivery code knows now to write to memory that's already been freed. A side effect of this change is that we no longer need to track the currentTimerInfo "globally" anymore, it can be a normal local variable in the QTimerInfoList::activateTimers() function. Task-number: QT-3553 Reviewed-by: olivier Reviewed-by: joao --- src/corelib/kernel/qeventdispatcher_unix.cpp | 31 ++++++++------------ src/corelib/kernel/qeventdispatcher_unix_p.h | 4 +-- tests/auto/qtimer/tst_qtimer.cpp | 44 ++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 20 deletions(-) diff --git a/src/corelib/kernel/qeventdispatcher_unix.cpp b/src/corelib/kernel/qeventdispatcher_unix.cpp index f7d45ac..9dadd82 100644 --- a/src/corelib/kernel/qeventdispatcher_unix.cpp +++ b/src/corelib/kernel/qeventdispatcher_unix.cpp @@ -331,7 +331,7 @@ QTimerInfoList::QTimerInfoList() } #endif - firstTimerInfo = currentTimerInfo = 0; + firstTimerInfo = 0; } timeval QTimerInfoList::updateCurrentTime() @@ -445,7 +445,7 @@ bool QTimerInfoList::timerWait(timeval &tm) // Find first waiting timer not already active QTimerInfo *t = 0; for (QTimerInfoList::const_iterator it = constBegin(); it != constEnd(); ++it) { - if (!(*it)->inTimerEvent) { + if (!(*it)->activateRef) { t = *it; break; } @@ -474,7 +474,7 @@ void QTimerInfoList::registerTimer(int timerId, int interval, QObject *object) t->interval.tv_usec = (interval % 1000) * 1000; t->timeout = updateCurrentTime() + t->interval; t->obj = object; - t->inTimerEvent = false; + t->activateRef = 0; timerInsert(t); } @@ -489,8 +489,8 @@ bool QTimerInfoList::unregisterTimer(int timerId) removeAt(i); if (t == firstTimerInfo) firstTimerInfo = 0; - if (t == currentTimerInfo) - currentTimerInfo = 0; + if (t->activateRef) + *(t->activateRef) = 0; // release the timer id if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) @@ -515,8 +515,8 @@ bool QTimerInfoList::unregisterTimers(QObject *object) removeAt(i); if (t == firstTimerInfo) firstTimerInfo = 0; - if (t == currentTimerInfo) - currentTimerInfo = 0; + if (t->activateRef) + *(t->activateRef) = 0; // release the timer id if (!QObjectPrivate::get(t->obj)->inThreadChangeEvent) @@ -552,10 +552,7 @@ int QTimerInfoList::activateTimers() bool firstTime = true; timeval currentTime; int n_act = 0, maxCount = count(); - - QTimerInfo *saveFirstTimerInfo = firstTimerInfo; - QTimerInfo *saveCurrentTimerInfo = currentTimerInfo; - firstTimerInfo = currentTimerInfo = 0; + firstTimerInfo = 0; while (maxCount--) { currentTime = updateCurrentTime(); @@ -567,7 +564,7 @@ int QTimerInfoList::activateTimers() if (isEmpty()) break; - currentTimerInfo = first(); + QTimerInfo *currentTimerInfo = first(); if (currentTime < currentTimerInfo->timeout) break; // no timer has expired @@ -594,21 +591,19 @@ int QTimerInfoList::activateTimers() if (currentTimerInfo->interval.tv_usec > 0 || currentTimerInfo->interval.tv_sec > 0) n_act++; - if (!currentTimerInfo->inTimerEvent) { + if (!currentTimerInfo->activateRef) { // send event, but don't allow it to recurse - currentTimerInfo->inTimerEvent = true; + currentTimerInfo->activateRef = ¤tTimerInfo; QTimerEvent e(currentTimerInfo->id); QCoreApplication::sendEvent(currentTimerInfo->obj, &e); if (currentTimerInfo) - currentTimerInfo->inTimerEvent = false; + currentTimerInfo->activateRef = 0; } } - firstTimerInfo = saveFirstTimerInfo; - currentTimerInfo = saveCurrentTimerInfo; - + firstTimerInfo = 0; return n_act; } diff --git a/src/corelib/kernel/qeventdispatcher_unix_p.h b/src/corelib/kernel/qeventdispatcher_unix_p.h index cbe58de..060a163 100644 --- a/src/corelib/kernel/qeventdispatcher_unix_p.h +++ b/src/corelib/kernel/qeventdispatcher_unix_p.h @@ -77,7 +77,7 @@ struct QTimerInfo { timeval interval; // - timer interval timeval timeout; // - when to sent event QObject *obj; // - object to receive event - bool inTimerEvent; + QTimerInfo **activateRef; // - ref from activateTimers }; class QTimerInfoList : public QList<QTimerInfo*> @@ -92,7 +92,7 @@ class QTimerInfoList : public QList<QTimerInfo*> #endif // state variables used by activateTimers() - QTimerInfo *firstTimerInfo, *currentTimerInfo; + QTimerInfo *firstTimerInfo; public: QTimerInfoList(); diff --git a/tests/auto/qtimer/tst_qtimer.cpp b/tests/auto/qtimer/tst_qtimer.cpp index a0408ef..8d213ed 100644 --- a/tests/auto/qtimer/tst_qtimer.cpp +++ b/tests/auto/qtimer/tst_qtimer.cpp @@ -86,6 +86,7 @@ private slots: void timerIdPersistsAfterThreadExit(); void cancelLongTimer(); void singleShotStaticFunctionZeroTimeout(); + void recurseOnTimeoutAndStopTimer(); }; class TimerHelper : public QObject @@ -623,5 +624,48 @@ void tst_QTimer::singleShotStaticFunctionZeroTimeout() QCOMPARE(helper.count, 1); } +class RecursOnTimeoutAndStopTimerTimer : public QObject +{ + Q_OBJECT + +public: + QTimer *one; + QTimer *two; + +public slots: + void onetrigger() + { + QCoreApplication::processEvents(); + } + + void twotrigger() + { + one->stop(); + } +}; + +void tst_QTimer::recurseOnTimeoutAndStopTimer() +{ + QEventLoop eventLoop; + QTimer::singleShot(1000, &eventLoop, SLOT(quit())); + + RecursOnTimeoutAndStopTimerTimer t; + t.one = new QTimer(&t); + t.two = new QTimer(&t); + + QObject::connect(t.one, SIGNAL(timeout()), &t, SLOT(onetrigger())); + QObject::connect(t.two, SIGNAL(timeout()), &t, SLOT(twotrigger())); + + t.two->setSingleShot(true); + + t.one->start(); + t.two->start(); + + (void) eventLoop.exec(); + + QVERIFY(!t.one->isActive()); + QVERIFY(!t.two->isActive()); +} + QTEST_MAIN(tst_QTimer) #include "tst_qtimer.moc" -- cgit v0.12 From af3a204b8b3e780438c39425ba74338cc6a46a80 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann <joerg.bornemann@nokia.com> Date: Mon, 9 Aug 2010 17:38:05 +0200 Subject: configure: fix error message when calling config.status Calling configure in a shadow build directory led to error messages when trying to delete the content of $$QT_BUILD_TREE/mkspecs. Task-number: QTBUG-12764 Reviewed-by: ossi --- configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure b/configure index 74f5505..25f1ef5 100755 --- a/configure +++ b/configure @@ -2407,7 +2407,7 @@ if [ "$OPT_SHADOW" = "yes" ]; then # symlink the mkspecs directory mkdir -p "$outpath/mkspecs" - rm -f "$outpath"/mkspecs/* + rm -rf "$outpath"/mkspecs/* ln -s "$relpath"/mkspecs/* "$outpath/mkspecs" rm -f "$outpath/mkspecs/default" -- cgit v0.12 From 48cd20335f838db5aa31031c10352ca7058d84e8 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Tue, 10 Aug 2010 10:20:14 +1000 Subject: Associate qmlInfo() documentation with QDeclarativeEngine Task-number: QTBUG-12755 --- src/declarative/qml/qdeclarativeinfo.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/declarative/qml/qdeclarativeinfo.cpp b/src/declarative/qml/qdeclarativeinfo.cpp index c980a2a..c6560dd 100644 --- a/src/declarative/qml/qdeclarativeinfo.cpp +++ b/src/declarative/qml/qdeclarativeinfo.cpp @@ -53,6 +53,7 @@ QT_BEGIN_NAMESPACE /*! \fn QDeclarativeInfo qmlInfo(const QObject *object) + \relates QDeclarativeEngine \brief Prints warnings messages that include the file and line number for QML types. -- cgit v0.12 From bacf934f35c51baf49d0b73cf4fb79e860e24303 Mon Sep 17 00:00:00 2001 From: Arvid Ephraim Picciani <arvid.picciani@nokia.com> Date: Mon, 9 Aug 2010 15:28:59 -0700 Subject: add performance comparisons to qregexp benchmark Reviewed-by: hjk --- tests/benchmarks/corelib/tools/qregexp/main.cpp | 304 +++++++++++++++++++++ tests/benchmarks/corelib/tools/qregexp/qregexp.pro | 11 +- tests/benchmarks/corelib/tools/qregexp/qregexp.qrc | 6 + 3 files changed, 320 insertions(+), 1 deletion(-) create mode 100644 tests/benchmarks/corelib/tools/qregexp/qregexp.qrc diff --git a/tests/benchmarks/corelib/tools/qregexp/main.cpp b/tests/benchmarks/corelib/tools/qregexp/main.cpp index ab9ed71..51cde95 100644 --- a/tests/benchmarks/corelib/tools/qregexp/main.cpp +++ b/tests/benchmarks/corelib/tools/qregexp/main.cpp @@ -38,16 +38,27 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ + #include <QDebug> #include <QRegExp> #include <QString> +#include <QFile> #include <qtest.h> +#ifdef HAVE_BOOST +#include <boost/regex.hpp> +#endif + +#include <QtScript> +#include "pcre/pcre.h" +#define ZLIB_VERSION "1.2.3.4" class tst_qregexp : public QObject { Q_OBJECT +public: + tst_qregexp(); private slots: void escape_old(); void escape_old_data() { escape_data(); } @@ -59,10 +70,56 @@ private slots: void escape_new3_data() { escape_data(); } void escape_new4(); void escape_new4_data() { escape_data(); } +/* + JSC outperforms everything. + Boost is less impressive then expected. + */ + void simpleFind1(); + void rangeReplace1(); + void matchReplace1(); + + void simpleFind2(); + void rangeReplace2(); + void matchReplace2(); + + void simpleFindJSC(); + void rangeReplaceJSC(); + void matchReplaceJSC(); + +#ifdef HAVE_BOOST + void simpleFindBoost(); + void rangeReplaceBoost(); + void matchReplaceBoost(); +#endif + +/* those apply an (incorrect) regexp on entire source + (this main.cpp). JSC appears to handle this + (ab)use case best. QRegExp performs extremly bad. + */ + void horribleWrongReplace1(); + void horribleReplace1(); + void horribleReplace2(); + void horribleWrongReplace2(); + void horribleWrongReplaceJSC(); + void horribleReplaceJSC(); +#ifdef HAVE_BOOST + void horribleWrongReplaceBoost(); + void horribleReplaceBoost(); +#endif private: + QString str1; + QString str2; void escape_data(); }; +tst_qregexp::tst_qregexp() + :QObject() + ,str1("We are all happy monkeys") +{ + QFile f(":/main.cpp"); + f.open(QFile::ReadOnly); + str2=f.readAll(); +} static void verify(const QString "ed, const QString &expected) { @@ -285,6 +342,253 @@ void tst_qregexp::escape_new4() // "return quoted" } } + + +void tst_qregexp::simpleFind1() +{ + int roff; + QRegExp rx("happy"); + rx.setPatternSyntax(QRegExp::RegExp); + QBENCHMARK{ + roff = rx.indexIn(str1); + } + QCOMPARE(roff, 11); +} + +void tst_qregexp::rangeReplace1() +{ + QString r; + QRegExp rx("[a-f]"); + rx.setPatternSyntax(QRegExp::RegExp); + QBENCHMARK{ + r = QString(str1).replace(rx, "-"); + } + QCOMPARE(r, QString("W- -r- -ll h-ppy monk-ys")); +} + +void tst_qregexp::matchReplace1() +{ + QString r; + QRegExp rx("[^a-f]*([a-f]+)[^a-f]*"); + rx.setPatternSyntax(QRegExp::RegExp); + QBENCHMARK{ + r = QString(str1).replace(rx, "\\1"); + } + QCOMPARE(r, QString("eaeaae")); +} + +void tst_qregexp::horribleWrongReplace1() +{ + QString r; + QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*"); + rx.setPatternSyntax(QRegExp::RegExp); + QBENCHMARK{ + r = QString(str2).replace(rx, "\\1.\\2.\\3"); + } + QCOMPARE(r, str2); +} + +void tst_qregexp::horribleReplace1() +{ + QString r; + QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*"); + rx.setPatternSyntax(QRegExp::RegExp); + QBENCHMARK{ + r = QString(str2).replace(rx, "\\1.\\2.\\3"); + } + QCOMPARE(r, QString("1.2.3")); +} + + +void tst_qregexp::simpleFind2() +{ + int roff; + QRegExp rx("happy"); + rx.setPatternSyntax(QRegExp::RegExp2); + QBENCHMARK{ + roff = rx.indexIn(str1); + } + QCOMPARE(roff, 11); +} + +void tst_qregexp::rangeReplace2() +{ + QString r; + QRegExp rx("[a-f]"); + rx.setPatternSyntax(QRegExp::RegExp2); + QBENCHMARK{ + r = QString(str1).replace(rx, "-"); + } + QCOMPARE(r, QString("W- -r- -ll h-ppy monk-ys")); +} + +void tst_qregexp::matchReplace2() +{ + QString r; + QRegExp rx("[^a-f]*([a-f]+)[^a-f]*"); + rx.setPatternSyntax(QRegExp::RegExp2); + QBENCHMARK{ + r = QString(str1).replace(rx, "\\1"); + } + QCOMPARE(r, QString("eaeaae")); +} + +void tst_qregexp::horribleWrongReplace2() +{ + QString r; + QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*"); + rx.setPatternSyntax(QRegExp::RegExp2); + QBENCHMARK{ + r = QString(str2).replace(rx, "\\1.\\2.\\3"); + } + QCOMPARE(r, str2); +} + +void tst_qregexp::horribleReplace2() +{ + QString r; + QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*"); + rx.setPatternSyntax(QRegExp::RegExp2); + QBENCHMARK{ + r = QString(str2).replace(rx, "\\1.\\2.\\3"); + } + QCOMPARE(r, QString("1.2.3")); +} + + +void tst_qregexp::simpleFindJSC() +{ + int numr; + const char * errmsg=" "; + QString rxs("happy"); + JSRegExp *rx = jsRegExpCompile(rxs.utf16(), rxs.length(), JSRegExpDoNotIgnoreCase, JSRegExpSingleLine, 0, &errmsg); + QVERIFY(rx != 0); + QString s(str1); + int offsetVector[3]; + QBENCHMARK{ + numr = jsRegExpExecute(rx, s.utf16(), s.length(), 0, offsetVector, 3); + } + jsRegExpFree(rx); + QCOMPARE(numr, 1); + QCOMPARE(offsetVector[0], 11); +} + +void tst_qregexp::rangeReplaceJSC() +{ + QScriptValue r; + QScriptEngine engine; + engine.globalObject().setProperty("s", str1); + QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/[a-f]/g, '-') } )"); + QVERIFY(replaceFunc.isFunction()); + QBENCHMARK{ + r = replaceFunc.call(QScriptValue()); + } + QCOMPARE(r.toString(), QString("W- -r- -ll h-ppy monk-ys")); +} + +void tst_qregexp::matchReplaceJSC() +{ + QScriptValue r; + QScriptEngine engine; + engine.globalObject().setProperty("s", str1); + QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/[^a-f]*([a-f]+)[^a-f]*/g, '$1') } )"); + QVERIFY(replaceFunc.isFunction()); + QBENCHMARK{ + r = replaceFunc.call(QScriptValue()); + } + QCOMPARE(r.toString(), QString("eaeaae")); +} + +void tst_qregexp::horribleWrongReplaceJSC() +{ + QScriptValue r; + QScriptEngine engine; + engine.globalObject().setProperty("s", str2); + QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/.*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*/gm, '$1.$2.$3') } )"); + QVERIFY(replaceFunc.isFunction()); + QBENCHMARK{ + r = replaceFunc.call(QScriptValue()); + } + QCOMPARE(r.toString(), str2); +} + +void tst_qregexp::horribleReplaceJSC() +{ + QScriptValue r; + QScriptEngine engine; + // the m flag doesnt actually work here; dunno + engine.globalObject().setProperty("s", str2.replace('\n', ' ')); + QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/.*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*/gm, '$1.$2.$3') } )"); + QVERIFY(replaceFunc.isFunction()); + QBENCHMARK{ + r = replaceFunc.call(QScriptValue()); + } + QCOMPARE(r.toString(), QString("1.2.3")); +} + + +#ifdef HAVE_BOOST +void tst_qregexp::simpleFindBoost(){ + int roff; + boost::regex rx ("happy", boost::regex_constants::perl); + std::string s = str1.toStdString(); + std::string::const_iterator start, end; + start = s.begin(); + end = s.end(); + boost::match_flag_type flags = boost::match_default; + QBENCHMARK{ + boost::match_results<std::string::const_iterator> what; + regex_search(start, end, what, rx, flags); + roff = (what[0].first)-start; + } + QCOMPARE(roff, 11); +} + +void tst_qregexp::rangeReplaceBoost() +{ + boost::regex pattern ("[a-f]", boost::regex_constants::perl); + std::string s = str1.toStdString(); + std::string r; + QBENCHMARK{ + r = boost::regex_replace (s, pattern, "-"); + } + QCOMPARE(r, std::string("W- -r- -ll h-ppy monk-ys")); +} + +void tst_qregexp::matchReplaceBoost() +{ + boost::regex pattern ("[^a-f]*([a-f]+)[^a-f]*",boost::regex_constants::perl); + std::string s = str1.toStdString(); + std::string r; + QBENCHMARK{ + r = boost::regex_replace (s, pattern, "$1"); + } + QCOMPARE(r, std::string("eaeaae")); +} + +void tst_qregexp::horribleWrongReplaceBoost() +{ + boost::regex pattern (".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*", boost::regex_constants::perl); + std::string s = str2.toStdString(); + std::string r; + QBENCHMARK{ + r = boost::regex_replace (s, pattern, "$1.$2.$3"); + } + QCOMPARE(r, s); +} + +void tst_qregexp::horribleReplaceBoost() +{ + boost::regex pattern (".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*", boost::regex_constants::perl); + std::string s = str2.toStdString(); + std::string r; + QBENCHMARK{ + r = boost::regex_replace (s, pattern, "$1.$2.$3"); + } + QCOMPARE(r, std::string("1.2.3")); +} +#endif //HAVE_BOOST + QTEST_MAIN(tst_qregexp) #include "main.moc" diff --git a/tests/benchmarks/corelib/tools/qregexp/qregexp.pro b/tests/benchmarks/corelib/tools/qregexp/qregexp.pro index e0f47c9..ffdad12 100644 --- a/tests/benchmarks/corelib/tools/qregexp/qregexp.pro +++ b/tests/benchmarks/corelib/tools/qregexp/qregexp.pro @@ -3,10 +3,19 @@ TEMPLATE = app TARGET = tst_bench_qregexp DEPENDPATH += . INCLUDEPATH += . - +RESOURCES+=qregexp.qrc QT -= gui +QT += script CONFIG += release # Input SOURCES += main.cpp + +include( $${QT_SOURCE_TREE}/src/3rdparty/webkit/JavaScriptCore/JavaScriptCore.pri ) + +exists( /usr/include/boost/regex.hpp ){ +DEFINES+=HAVE_BOOST +LIBS+=-lboost_regex +} + diff --git a/tests/benchmarks/corelib/tools/qregexp/qregexp.qrc b/tests/benchmarks/corelib/tools/qregexp/qregexp.qrc new file mode 100644 index 0000000..a7fe13c --- /dev/null +++ b/tests/benchmarks/corelib/tools/qregexp/qregexp.qrc @@ -0,0 +1,6 @@ +<!DOCTYPE RCC><RCC version="1.0"> +<qresource> + <file>main.cpp</file> +</qresource> +</RCC> + -- cgit v0.12 From 6feb5b75ce96aeeefee189af003949db8c031519 Mon Sep 17 00:00:00 2001 From: Michael Brasser <michael.brasser@nokia.com> Date: Tue, 10 Aug 2010 11:50:49 +1000 Subject: Don't double-add item change listeners. When a Repeater was used as the child of an Item binding to childrenRect, the item change listener was being added twice for the items created by the Repeater. Task-number: QTBUG-12722 --- src/declarative/graphicsitems/qdeclarativeitem.cpp | 4 ++-- .../qdeclarativeitem/data/childrenRectBug3.qml | 15 +++++++++++++++ .../declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp | 12 ++++++++++++ 3 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 tests/auto/declarative/qdeclarativeitem/data/childrenRectBug3.qml diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp index ff05997..9d782b9 100644 --- a/src/declarative/graphicsitems/qdeclarativeitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp @@ -2724,12 +2724,12 @@ QVariant QDeclarativeItem::itemChange(GraphicsItemChange change, } break; case ItemChildAddedChange: - if (d->_contents) + if (d->_contents && d->componentComplete) d->_contents->childAdded(qobject_cast<QDeclarativeItem*>( value.value<QGraphicsItem*>())); break; case ItemChildRemovedChange: - if (d->_contents) + if (d->_contents && d->componentComplete) d->_contents->childRemoved(qobject_cast<QDeclarativeItem*>( value.value<QGraphicsItem*>())); break; diff --git a/tests/auto/declarative/qdeclarativeitem/data/childrenRectBug3.qml b/tests/auto/declarative/qdeclarativeitem/data/childrenRectBug3.qml new file mode 100644 index 0000000..f19ab4f --- /dev/null +++ b/tests/auto/declarative/qdeclarativeitem/data/childrenRectBug3.qml @@ -0,0 +1,15 @@ +import Qt 4.7 + +Rectangle { + width: 300 + height: 300 + + Rectangle { + height: childrenRect.height + + Repeater { + model: 1 + Rectangle { } + } + } +} diff --git a/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp b/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp index d76d360..25ca157 100644 --- a/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp +++ b/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp @@ -75,6 +75,7 @@ private slots: void childrenRect(); void childrenRectBug(); void childrenRectBug2(); + void childrenRectBug3(); void childrenProperty(); void resourcesProperty(); @@ -780,6 +781,17 @@ void tst_QDeclarativeItem::childrenRectBug2() delete canvas; } +// QTBUG-12722 +void tst_QDeclarativeItem::childrenRectBug3() +{ + QDeclarativeView *canvas = new QDeclarativeView(0); + canvas->setSource(QUrl::fromLocalFile(SRCDIR "/data/childrenRectBug3.qml")); + canvas->show(); + + //don't crash on delete + delete canvas; +} + template<typename T> T *tst_QDeclarativeItem::findItem(QGraphicsObject *parent, const QString &objectName) { -- cgit v0.12 From f3ac9de816c0bff9961110c5a734871da2e129cf Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" <bradley.hughes@nokia.com> Date: Tue, 10 Aug 2010 07:21:10 +0200 Subject: Correct spelling (UNKOWN -> UNKNOWN) to fix recent test regression Commit eea84818e98af917d3cf2bf04ea17a416ef9d55e corrected some spelling mistakes, one of which this test was relying on. Reviewed-by: trustme --- .../declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp b/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp index d5a911a..db1f191 100644 --- a/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp +++ b/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp @@ -585,7 +585,7 @@ void tst_qdeclarativeinstruction::dump() << "45\t\t48\tDEFER\t\t\t7" << "46\t\tNA\tDEFER\t\t\t7" << "47\t\t48\tSTORE_IMPORTED_SCRIPT\t2" - << "48\t\t50\tXXX UNKOWN INSTRUCTION\t1234" + << "48\t\t50\tXXX UNKNOWN INSTRUCTION\t1234" << "49\t\t51\tSTORE_VARIANT_INTEGER\t\t32\t11" << "50\t\t52\tSTORE_VARIANT_DOUBLE\t\t19\t33.7" << "-------------------------------------------------------------------------------"; -- cgit v0.12 From a1641e27d2e2f5e29362e3737be6b9d75714d138 Mon Sep 17 00:00:00 2001 From: Jiang Jiang <jiang.jiang@nokia.com> Date: Mon, 9 Aug 2010 15:56:34 +0200 Subject: Add text decoration support to QStaticText The original code path of QStaticText does not include decoration drawing, this patch generalized the drawTextItemDecoration() function to draw decoration for drawText(), then use that to draw decoration for QStaticText. A helper function called drawDecorationForGlyphs() is made to allow easier extension for direct glyphs drawing support. Task-number: QTBUG-12121 Reviewed-by: Eskil --- src/gui/painting/qpainter.cpp | 84 +++++++++++++++++++---- tests/auto/qstatictext/tst_qstatictext.cpp | 106 +++++++++++++++++++++++++++++ 2 files changed, 177 insertions(+), 13 deletions(-) diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp index 9dadbd5..b694d9c 100644 --- a/src/gui/painting/qpainter.cpp +++ b/src/gui/painting/qpainter.cpp @@ -90,6 +90,15 @@ void qt_format_text(const QFont &font, const QRectF &_r, int tf, const QTextOption *option, const QString& str, QRectF *brect, int tabstops, int* tabarray, int tabarraylen, QPainter *painter); +static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const QFontEngine *fe, + QTextCharFormat::UnderlineStyle underlineStyle, + const QTextItem::RenderFlags flags, qreal width, + const QTextCharFormat &charFormat); +// Helper function to calculate left most position, width and flags for decoration drawing +static void drawDecorationForGlyphs(QPainter *painter, const glyph_t *glyphArray, + const QFixedPoint *positions, int glyphCount, + QFontEngine *fontEngine, const QFont &font, + const QTextCharFormat &charFormat); static inline QGradient::CoordinateMode coordinateMode(const QBrush &brush) { @@ -5923,6 +5932,10 @@ void QPainter::drawStaticText(const QPointF &topLeftPosition, const QStaticText currentColor = item->color; } d->extended->drawStaticTextItem(item); + + drawDecorationForGlyphs(this, item->glyphs, item->glyphPositions, + item->numGlyphs, item->fontEngine, staticText_d->font, + QTextCharFormat()); } if (currentColor != oldPen.color()) setPen(oldPen); @@ -6290,15 +6303,15 @@ static QPixmap generateWavyPixmap(qreal maxRadius, const QPen &pen) return pixmap; } -static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const QTextItemInt &ti) +static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const QFontEngine *fe, + QTextCharFormat::UnderlineStyle underlineStyle, + const QTextItem::RenderFlags flags, qreal width, + const QTextCharFormat &charFormat) { - QTextCharFormat::UnderlineStyle underlineStyle = ti.underlineStyle; if (underlineStyle == QTextCharFormat::NoUnderline - && !(ti.flags & (QTextItem::StrikeOut | QTextItem::Overline))) + && !(flags & (QTextItem::StrikeOut | QTextItem::Overline))) return; - QFontEngine *fe = ti.fontEngine; - const QPen oldPen = painter->pen(); const QBrush oldBrush = painter->brush(); painter->setBrush(Qt::NoBrush); @@ -6307,7 +6320,7 @@ static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const pen.setWidthF(fe->lineThickness().toReal()); pen.setCapStyle(Qt::FlatCap); - QLineF line(pos.x(), pos.y(), pos.x() + ti.width.toReal(), pos.y()); + QLineF line(pos.x(), pos.y(), pos.x() + width, pos.y()); const qreal underlineOffset = fe->underlinePosition().toReal(); // deliberately ceil the offset to avoid the underline coming too close to @@ -6322,21 +6335,21 @@ static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const painter->save(); painter->translate(0, pos.y() + 1); - QColor uc = ti.charFormat.underlineColor(); + QColor uc = charFormat.underlineColor(); if (uc.isValid()) pen.setColor(uc); // Adapt wave to underlineOffset or pen width, whatever is larger, to make it work on all platforms const QPixmap wave = generateWavyPixmap(qMax(underlineOffset, pen.widthF()), pen); - const int descent = (int) ti.descent.toReal(); + const int descent = (int) fe->descent().toReal(); painter->setBrushOrigin(painter->brushOrigin().x(), 0); - painter->fillRect(pos.x(), 0, qCeil(ti.width.toReal()), qMin(wave.height(), descent), wave); + painter->fillRect(pos.x(), 0, qCeil(width), qMin(wave.height(), descent), wave); painter->restore(); } else if (underlineStyle != QTextCharFormat::NoUnderline) { QLineF underLine(line.x1(), underlinePos, line.x2(), underlinePos); - QColor uc = ti.charFormat.underlineColor(); + QColor uc = charFormat.underlineColor(); if (uc.isValid()) pen.setColor(uc); @@ -6348,14 +6361,14 @@ static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const pen.setStyle(Qt::SolidLine); pen.setColor(oldPen.color()); - if (ti.flags & QTextItem::StrikeOut) { + if (flags & QTextItem::StrikeOut) { QLineF strikeOutLine = line; strikeOutLine.translate(0., - fe->ascent().toReal() / 3.); painter->setPen(pen); painter->drawLine(strikeOutLine); } - if (ti.flags & QTextItem::Overline) { + if (flags & QTextItem::Overline) { QLineF overLine = line; overLine.translate(0., - fe->ascent().toReal()); painter->setPen(pen); @@ -6366,6 +6379,50 @@ static void drawTextItemDecoration(QPainter *painter, const QPointF &pos, const painter->setBrush(oldBrush); } +static void drawDecorationForGlyphs(QPainter *painter, const glyph_t *glyphArray, + const QFixedPoint *positions, int glyphCount, + QFontEngine *fontEngine, const QFont &font, + const QTextCharFormat &charFormat) +{ + if (!(font.underline() || font.strikeOut() || font.overline())) + return; + + QFixed leftMost; + QFixed rightMost; + QFixed baseLine; + for (int i=0; i<glyphCount; ++i) { + glyph_metrics_t gm = fontEngine->boundingBox(glyphArray[i]); + if (i == 0 || leftMost > positions[i].x) + leftMost = positions[i].x; + + // We don't support glyphs that do not share a common baseline. If this turns out to + // be a relevant use case, then we need to find clusters of glyphs that share a baseline + // and do a drawTextItemDecorations call per cluster. + if (i == 0 || baseLine < positions[i].y) + baseLine = positions[i].y; + + // We use the advance rather than the actual bounds to match the algorithm in drawText() + if (i == 0 || rightMost < positions[i].x + gm.xoff) + rightMost = positions[i].x + gm.xoff; + } + + QFixed width = rightMost - leftMost; + QTextItem::RenderFlags flags = 0; + + if (font.underline()) + flags |= QTextItem::Underline; + if (font.overline()) + flags |= QTextItem::Overline; + if (font.strikeOut()) + flags |= QTextItem::StrikeOut; + + drawTextItemDecoration(painter, QPointF(leftMost.toReal(), baseLine.toReal()), + fontEngine, + font.underline() ? QTextCharFormat::SingleUnderline + : QTextCharFormat::NoUnderline, flags, + width.toReal(), charFormat); +} + void QPainter::drawTextItem(const QPointF &p, const QTextItem &_ti) { #ifdef QT_DEBUG_DRAW @@ -6496,7 +6553,8 @@ void QPainter::drawTextItem(const QPointF &p, const QTextItem &_ti) else d->engine->drawTextItem(p, ti); } - drawTextItemDecoration(this, p, ti); + drawTextItemDecoration(this, p, ti.fontEngine, ti.underlineStyle, ti.flags, ti.width.toReal(), + ti.charFormat); if (d->state->renderHints != oldRenderHints) { d->state->renderHints = oldRenderHints; diff --git a/tests/auto/qstatictext/tst_qstatictext.cpp b/tests/auto/qstatictext/tst_qstatictext.cpp index 1d166f4..0ae5320 100644 --- a/tests/auto/qstatictext/tst_qstatictext.cpp +++ b/tests/auto/qstatictext/tst_qstatictext.cpp @@ -85,6 +85,10 @@ private slots: void setPenPlainText(); void setPenRichText(); void richTextOverridesPen(); + + void drawStruckOutText(); + void drawOverlinedText(); + void drawUnderlinedText(); }; void tst_QStaticText::init() @@ -620,5 +624,107 @@ void tst_QStaticText::richTextOverridesPen() } } +void tst_QStaticText::drawStruckOutText() +{ + QPixmap imageDrawText(1000, 1000); + QPixmap imageDrawStaticText(1000, 1000); + + imageDrawText.fill(Qt::white); + imageDrawStaticText.fill(Qt::white); + + QString s = QString::fromLatin1("Foobar"); + + QFont font; + font.setStrikeOut(true); + + { + QPainter p(&imageDrawText); + p.setFont(font); + p.drawText(QPointF(50, 50), s); + } + + { + QPainter p(&imageDrawStaticText); + QStaticText text = QStaticText(s); + p.setFont(font); + p.drawStaticText(QPointF(50, 50 - QFontMetricsF(p.font()).ascent()), text); + } + +#if defined(DEBUG_SAVE_IMAGE) + imageDrawText.save("drawStruckOutText_imageDrawText.png"); + imageDrawStaticText.save("drawStruckOutText_imageDrawStaticText.png"); +#endif + + QCOMPARE(imageDrawText, imageDrawStaticText); +} + +void tst_QStaticText::drawOverlinedText() +{ + QPixmap imageDrawText(1000, 1000); + QPixmap imageDrawStaticText(1000, 1000); + + imageDrawText.fill(Qt::white); + imageDrawStaticText.fill(Qt::white); + + QString s = QString::fromLatin1("Foobar"); + + QFont font; + font.setOverline(true); + + { + QPainter p(&imageDrawText); + p.setFont(font); + p.drawText(QPointF(50, 50), s); + } + + { + QPainter p(&imageDrawStaticText); + QStaticText text = QStaticText(s); + p.setFont(font); + p.drawStaticText(QPointF(50, 50 - QFontMetricsF(p.font()).ascent()), text); + } + +#if defined(DEBUG_SAVE_IMAGE) + imageDrawText.save("drawOverlinedText_imageDrawText.png"); + imageDrawStaticText.save("drawOverlinedText_imageDrawStaticText.png"); +#endif + + QCOMPARE(imageDrawText, imageDrawStaticText); +} + +void tst_QStaticText::drawUnderlinedText() +{ + QPixmap imageDrawText(1000, 1000); + QPixmap imageDrawStaticText(1000, 1000); + + imageDrawText.fill(Qt::white); + imageDrawStaticText.fill(Qt::white); + + QString s = QString::fromLatin1("Foobar"); + + QFont font; + font.setUnderline(true); + + { + QPainter p(&imageDrawText); + p.setFont(font); + p.drawText(QPointF(50, 50), s); + } + + { + QPainter p(&imageDrawStaticText); + QStaticText text = QStaticText(s); + p.setFont(font); + p.drawStaticText(QPointF(50, 50 - QFontMetricsF(p.font()).ascent()), text); + } + +#if defined(DEBUG_SAVE_IMAGE) + imageDrawText.save("drawUnderlinedText_imageDrawText.png"); + imageDrawStaticText.save("drawUnderlinedText_imageDrawStaticText.png"); +#endif + + QCOMPARE(imageDrawText, imageDrawStaticText); +} + QTEST_MAIN(tst_QStaticText) #include "tst_qstatictext.moc" -- cgit v0.12 From 30b82b9440fcfc4a703d1a2b1150efd6b4147093 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan-Arve=20S=C3=A6ther?= <jan-arve.saether@nokia.com> Date: Wed, 4 Aug 2010 10:37:58 +0200 Subject: Fixed a bug in implementation of sizeHint() when there was a constraint The constraint was not adjusted with the margins before passing it on to the engine (which is unaware of the margins). Task-number: Found during QT-3570 Reviewed-by: Paul --- src/gui/graphicsview/qgraphicsgridlayout.cpp | 3 ++- src/gui/graphicsview/qgraphicslinearlayout.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gui/graphicsview/qgraphicsgridlayout.cpp b/src/gui/graphicsview/qgraphicsgridlayout.cpp index 062b5ac..3fc7f10 100644 --- a/src/gui/graphicsview/qgraphicsgridlayout.cpp +++ b/src/gui/graphicsview/qgraphicsgridlayout.cpp @@ -641,7 +641,8 @@ QSizeF QGraphicsGridLayout::sizeHint(Qt::SizeHint which, const QSizeF &constrain Q_D(const QGraphicsGridLayout); qreal left, top, right, bottom; getContentsMargins(&left, &top, &right, &bottom); - return d->engine.sizeHint(d->styleInfo(), which , constraint) + QSizeF(left + right, top + bottom); + const QSizeF extraMargins(left + right, top + bottom); + return d->engine.sizeHint(d->styleInfo(), which , constraint - extraMargins) + extraMargins; } diff --git a/src/gui/graphicsview/qgraphicslinearlayout.cpp b/src/gui/graphicsview/qgraphicslinearlayout.cpp index 37408ef..1588364 100644 --- a/src/gui/graphicsview/qgraphicslinearlayout.cpp +++ b/src/gui/graphicsview/qgraphicslinearlayout.cpp @@ -528,7 +528,8 @@ QSizeF QGraphicsLinearLayout::sizeHint(Qt::SizeHint which, const QSizeF &constra Q_D(const QGraphicsLinearLayout); qreal left, top, right, bottom; getContentsMargins(&left, &top, &right, &bottom); - return d->engine.sizeHint(d->styleInfo(), which , constraint) + QSizeF(left + right, top + bottom); + const QSizeF extraMargins(left + right, top + bottom); + return d->engine.sizeHint(d->styleInfo(), which , constraint - extraMargins) + extraMargins; } /*! -- cgit v0.12 From 62b5ef3cc1306e46a4042b14867f2f92d9a110f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan-Arve=20S=C3=A6ther?= <jan-arve.saether@nokia.com> Date: Wed, 4 Aug 2010 10:51:51 +0200 Subject: Fix (implement!) hfw/wfh in QGridLayoutEngine Note that only height-for-width works, since we cannot add QSizePolicy::hasWidthForHeight() in a patch release. Task-number: QT-3570 Reviewed-by: Paul --- src/gui/graphicsview/qgraphicslayoutitem.cpp | 51 ++- src/gui/graphicsview/qgraphicslayoutitem_p.h | 6 + src/gui/graphicsview/qgridlayoutengine.cpp | 251 +++++++++++++- src/gui/graphicsview/qgridlayoutengine_p.h | 23 +- .../tst_qgraphicsgridlayout.cpp | 364 ++++++++++++++++++++- 5 files changed, 678 insertions(+), 17 deletions(-) diff --git a/src/gui/graphicsview/qgraphicslayoutitem.cpp b/src/gui/graphicsview/qgraphicslayoutitem.cpp index 5a7f1af..3707591 100644 --- a/src/gui/graphicsview/qgraphicslayoutitem.cpp +++ b/src/gui/graphicsview/qgraphicslayoutitem.cpp @@ -48,6 +48,7 @@ #include "qgraphicslayoutitem.h" #include "qgraphicslayoutitem_p.h" #include "qwidget.h" +#include "qgraphicswidget.h" #include <QtDebug> @@ -139,9 +140,11 @@ QSizeF *QGraphicsLayoutItemPrivate::effectiveSizeHints(const QSizeF &constraint) if (!sizeHintCacheDirty && cachedConstraint == constraint) return cachedSizeHints; + const bool hasConstraint = constraint.width() >= 0 || constraint.height() >= 0; + for (int i = 0; i < Qt::NSizeHints; ++i) { cachedSizeHints[i] = constraint; - if (userSizeHints) + if (userSizeHints && !hasConstraint) combineSize(cachedSizeHints[i], userSizeHints[i]); } @@ -259,6 +262,52 @@ void QGraphicsLayoutItemPrivate::setSizeComponent( q->updateGeometry(); } + +bool QGraphicsLayoutItemPrivate::hasHeightForWidth() const +{ + Q_Q(const QGraphicsLayoutItem); + if (isLayout) { + const QGraphicsLayout *l = static_cast<const QGraphicsLayout *>(q); + for (int i = l->count() - 1; i >= 0; --i) { + if (QGraphicsLayoutItemPrivate::get(l->itemAt(i))->hasHeightForWidth()) + return true; + } + } else if (QGraphicsItem *item = q->graphicsItem()) { + if (item->isWidget()) { + QGraphicsWidget *w = static_cast<QGraphicsWidget *>(item); + if (w->layout()) { + return QGraphicsLayoutItemPrivate::get(w->layout())->hasHeightForWidth(); + } + } + } + return q->sizePolicy().hasHeightForWidth(); +} + +bool QGraphicsLayoutItemPrivate::hasWidthForHeight() const +{ + // enable this code when we add QSizePolicy::hasWidthForHeight() (For 4.8) +#if 1 + return false; +#else + Q_Q(const QGraphicsLayoutItem); + if (isLayout) { + const QGraphicsLayout *l = static_cast<const QGraphicsLayout *>(q); + for (int i = l->count() - 1; i >= 0; --i) { + if (QGraphicsLayoutItemPrivate::get(l->itemAt(i))->hasWidthForHeight()) + return true; + } + } else if (QGraphicsItem *item = q->graphicsItem()) { + if (item->isWidget()) { + QGraphicsWidget *w = static_cast<QGraphicsWidget *>(item); + if (w->layout()) { + return QGraphicsLayoutItemPrivate::get(w->layout())->hasWidthForHeight(); + } + } + } + return q->sizePolicy().hasWidthForHeight(); +#endif +} + /*! \class QGraphicsLayoutItem \brief The QGraphicsLayoutItem class can be inherited to allow your custom diff --git a/src/gui/graphicsview/qgraphicslayoutitem_p.h b/src/gui/graphicsview/qgraphicslayoutitem_p.h index 15cc7a5..b752e03 100644 --- a/src/gui/graphicsview/qgraphicslayoutitem_p.h +++ b/src/gui/graphicsview/qgraphicslayoutitem_p.h @@ -65,6 +65,9 @@ class Q_AUTOTEST_EXPORT QGraphicsLayoutItemPrivate public: virtual ~QGraphicsLayoutItemPrivate(); QGraphicsLayoutItemPrivate(QGraphicsLayoutItem *parent, bool isLayout); + static QGraphicsLayoutItemPrivate *get(QGraphicsLayoutItem *q) { return q->d_func();} + static const QGraphicsLayoutItemPrivate *get(const QGraphicsLayoutItem *q) { return q->d_func();} + void init(); QSizeF *effectiveSizeHints(const QSizeF &constraint) const; QGraphicsItem *parentItem() const; @@ -73,6 +76,9 @@ public: enum SizeComponent { Width, Height }; void setSizeComponent(Qt::SizeHint which, SizeComponent component, qreal value); + bool hasHeightForWidth() const; + bool hasWidthForHeight() const; + QSizePolicy sizePolicy; QGraphicsLayoutItem *parent; diff --git a/src/gui/graphicsview/qgridlayoutengine.cpp b/src/gui/graphicsview/qgridlayoutengine.cpp index a084647..ea54a90 100644 --- a/src/gui/graphicsview/qgridlayoutengine.cpp +++ b/src/gui/graphicsview/qgridlayoutengine.cpp @@ -545,6 +545,24 @@ QSizePolicy::Policy QGridLayoutItem::sizePolicy(Qt::Orientation orientation) con : sizePolicy.verticalPolicy(); } +/* + returns true if the size policy returns true for either hasHeightForWidth() + or hasWidthForHeight() + */ +bool QGridLayoutItem::hasDynamicConstraint() const +{ + return QGraphicsLayoutItemPrivate::get(q_layoutItem)->hasHeightForWidth() + || QGraphicsLayoutItemPrivate::get(q_layoutItem)->hasWidthForHeight(); +} + +Qt::Orientation QGridLayoutItem::dynamicConstraintOrientation() const +{ + if (QGraphicsLayoutItemPrivate::get(q_layoutItem)->hasHeightForWidth()) + return Qt::Vertical; + else //if (QGraphicsLayoutItemPrivate::get(q_layoutItem)->hasWidthForHeight()) + return Qt::Horizontal; +} + QSizePolicy::ControlTypes QGridLayoutItem::controlTypes(LayoutSide /* side */) const { return q_layoutItem->sizePolicy().controlType(); @@ -613,7 +631,14 @@ QRectF QGridLayoutItem::geometryWithin(qreal x, qreal y, qreal width, qreal heig qreal cellWidth = width; qreal cellHeight = height; - QSizeF size = effectiveMaxSize().boundedTo(QSizeF(cellWidth, cellHeight)); + QSize constraint; + if (hasDynamicConstraint()) { + if (dynamicConstraintOrientation() == Qt::Vertical) + constraint.setWidth(cellWidth); + else + constraint.setHeight(cellHeight); + } + QSizeF size = effectiveMaxSize(constraint).boundedTo(QSizeF(cellWidth, cellHeight)); width = size.width(); height = size.height(); @@ -675,13 +700,13 @@ void QGridLayoutItem::insertOrRemoveRows(int row, int delta, Qt::Orientation ori Note that effectiveSizeHint does not take sizePolicy into consideration, (since it only evaluates the hints, as the name implies) */ -QSizeF QGridLayoutItem::effectiveMaxSize() const +QSizeF QGridLayoutItem::effectiveMaxSize(const QSizeF &constraint) const { - QSizeF size; + QSizeF size = constraint; bool vGrow = (sizePolicy(Qt::Vertical) & QSizePolicy::GrowFlag) == QSizePolicy::GrowFlag; bool hGrow = (sizePolicy(Qt::Horizontal) & QSizePolicy::GrowFlag) == QSizePolicy::GrowFlag; if (!vGrow || !hGrow) { - QSizeF pref = layoutItem()->effectiveSizeHint(Qt::PreferredSize); + QSizeF pref = layoutItem()->effectiveSizeHint(Qt::PreferredSize, constraint); if (!vGrow) size.setHeight(pref.height()); if (!hGrow) @@ -689,7 +714,7 @@ QSizeF QGridLayoutItem::effectiveMaxSize() const } if (!size.isValid()) { - QSizeF maxSize = layoutItem()->effectiveSizeHint(Qt::MaximumSize); + QSizeF maxSize = layoutItem()->effectiveSizeHint(Qt::MaximumSize, constraint); if (size.width() == -1) size.setWidth(maxSize.width()); if (size.height() == -1) @@ -1010,6 +1035,7 @@ void QGridLayoutEngine::invalidate() q_cachedEffectiveLastRows[Ver] = -1; q_cachedDataForStyleInfo.invalidate(); q_cachedSize = QSizeF(); + q_cachedConstraintOrientation = UnknownConstraint; } static void visualRect(QRectF *geom, Qt::LayoutDirection dir, const QRectF &contentsRect) @@ -1074,10 +1100,13 @@ QRectF QGridLayoutEngine::cellRect(const QLayoutStyleInfo &styleInfo, } QSizeF QGridLayoutEngine::sizeHint(const QLayoutStyleInfo &styleInfo, Qt::SizeHint which, - const QSizeF & /* constraint */) const + const QSizeF &constraint) const { ensureColumnAndRowData(styleInfo); + if (hasDynamicConstraint()) + return dynamicallyConstrainedSizeHint(which, constraint); + switch (which) { case Qt::MinimumSize: return QSizeF(q_totalBoxes[Hor].q_minimumSize, q_totalBoxes[Ver].q_minimumSize); @@ -1375,7 +1404,11 @@ void QGridLayoutEngine::fillRowData(QGridLayoutRowData *rowData, const QLayoutSt box = &multiCell.q_box; multiCell.q_stretch = itemStretch; } - box->combine(item->box(orientation)); + // Items with constraints are not included in the orientation that + // they are constrained (since it depends on the hfw/constraint function). + // They must be combined at a later stage. + if (!item->hasDynamicConstraint() || orientation != item->dynamicConstraintOrientation()) + box->combine(item->box(orientation)); if (effectiveRowSpan == 1) { QSizePolicy::ControlTypes controls = item->controlTypes(top); @@ -1532,6 +1565,138 @@ void QGridLayoutEngine::ensureColumnAndRowData(const QLayoutStyleInfo &styleInfo q_cachedDataForStyleInfo = styleInfo; } +QSizeF QGridLayoutEngine::dynamicallyConstrainedSizeHint(Qt::SizeHint which, + const QSizeF &constraint) const +{ + Q_ASSERT(hasDynamicConstraint()); + if (constraint.width() < 0 && constraint.height() < 0) { + // Process the hfw / wfh items that we did not process in fillRowData() + const Qt::Orientation constraintOrient = constraintOrientation(); + + QGridLayoutRowData rowData = constraintOrient == Qt::Vertical ? q_rowData : q_columnData; + for (int i = q_items.count() - 1; i >= 0; --i) { + QGridLayoutItem *item = q_items.at(i); + if (item->hasDynamicConstraint()) { + QGridLayoutBox box = item->box(constraintOrient); + QGridLayoutBox &rowBox = rowData.boxes[item->firstRow(constraintOrient)]; + rowBox.combine(box); + } + } + + QGridLayoutBox totalBoxes[2]; + if (constraintOrient == Qt::Vertical) { + totalBoxes[Hor] = q_columnData.totalBox(0, columnCount()); + totalBoxes[Ver] = rowData.totalBox(0, rowCount()); + } else { + totalBoxes[Hor] = rowData.totalBox(0, columnCount()); + totalBoxes[Ver] = q_rowData.totalBox(0, rowCount()); + } + return QSizeF(totalBoxes[Hor].q_sizes(which), totalBoxes[Ver].q_sizes(which)); + } + + + Q_ASSERT(constraint.width() >= 0 || constraint.height() >= 0); + q_xx.resize(columnCount()); + q_yy.resize(rowCount()); + q_widths.resize(columnCount()); + q_heights.resize(rowCount()); + q_descents.resize(rowCount()); + + + const Qt::Orientation orientation = constraintOrientation(); + QGridLayoutRowData *colData; + QGridLayoutRowData constrainedRowData; + QGridLayoutBox *totalBox; + qreal *sizes; + qreal *pos; + qreal *descents; + qreal targetSize; + qreal cCount; + qreal rCount; + + if (orientation == Qt::Vertical) { + // height for width + colData = &q_columnData; + totalBox = &q_totalBoxes[Hor]; + sizes = q_widths.data(); + pos = q_xx.data(); + descents = 0; + targetSize = constraint.width(); + cCount = columnCount(); + rCount = rowCount(); + constrainedRowData = q_rowData; + } else { + // width for height + colData = &q_rowData; + totalBox = &q_totalBoxes[Ver]; + sizes = q_heights.data(); + pos = q_yy.data(); + descents = q_descents.data(); + targetSize = constraint.height(); + cCount = rowCount(); + rCount = columnCount(); + constrainedRowData = q_columnData; + } + colData->calculateGeometries(0, cCount, targetSize, pos, sizes, descents, *totalBox); + for (int i = q_items.count() - 1; i >= 0; --i) { + QGridLayoutItem *item = q_items.at(i); + + if (item->hasDynamicConstraint()) { + const qreal size = sizes[item->firstColumn(orientation)]; + QGridLayoutBox box = item->box(orientation, size); + QGridLayoutBox &rowBox = constrainedRowData.boxes[item->firstRow(orientation)]; + rowBox.combine(box); + } + } + const qreal newSize = constrainedRowData.totalBox(0, rCount).q_sizes(which); + + return (orientation == Qt::Vertical) ? QSizeF(targetSize, newSize) : QSizeF(newSize, targetSize); +} + + +/** + returns false if the layout has contradicting constraints (i.e. some items with a horizontal + constraint and other items with a vertical constraint) + */ +bool QGridLayoutEngine::ensureDynamicConstraint() const +{ + if (q_cachedConstraintOrientation == UnknownConstraint) { + for (int i = q_items.count() - 1; i >= 0; --i) { + QGridLayoutItem *item = q_items.at(i); + if (item->hasDynamicConstraint()) { + Qt::Orientation itemConstraintOrientation = item->dynamicConstraintOrientation(); + if (q_cachedConstraintOrientation == UnknownConstraint) { + q_cachedConstraintOrientation = itemConstraintOrientation; + } else if (q_cachedConstraintOrientation != itemConstraintOrientation) { + q_cachedConstraintOrientation = UnfeasibleConstraint; + qWarning("QGridLayoutEngine: Unfeasible, cannot mix horizontal and" + " vertical constraint in the same layout"); + return false; + } + } + } + if (q_cachedConstraintOrientation == UnknownConstraint) + q_cachedConstraintOrientation = NoConstraint; + } + return true; +} + +bool QGridLayoutEngine::hasDynamicConstraint() const +{ + if (!ensureDynamicConstraint()) + return false; + return q_cachedConstraintOrientation != NoConstraint; +} + +/* + * return value is only valid if hasConstraint() returns true + */ +Qt::Orientation QGridLayoutEngine::constraintOrientation() const +{ + (void)ensureDynamicConstraint(); + return (Qt::Orientation)q_cachedConstraintOrientation; +} + void QGridLayoutEngine::ensureGeometries(const QLayoutStyleInfo &styleInfo, const QSizeF &size) const { @@ -1544,10 +1709,74 @@ void QGridLayoutEngine::ensureGeometries(const QLayoutStyleInfo &styleInfo, q_widths.resize(columnCount()); q_heights.resize(rowCount()); q_descents.resize(rowCount()); - q_columnData.calculateGeometries(0, columnCount(), size.width(), q_xx.data(), q_widths.data(), - 0, q_totalBoxes[Hor]); - q_rowData.calculateGeometries(0, rowCount(), size.height(), q_yy.data(), q_heights.data(), - q_descents.data(), q_totalBoxes[Ver]); + + + Qt::Orientation orientation = Qt::Vertical; + if (hasDynamicConstraint()) + orientation = constraintOrientation(); + + /* + In order to do hfw we need to first distribute the columns, then the rows. + In order to do wfh we need to first distribute the rows, then the columns. + + If there is no constraint, the order of distributing the rows or columns first is irrelevant. + We choose horizontal just to keep the same behaviour as before (however, there shouldn't + be any behaviour difference). + */ + + QGridLayoutRowData *colData; + QGridLayoutRowData rowData; + qreal *widths; + qreal *heights; + qreal *xx; + qreal *yy; + qreal *xdescents = 0; + qreal *ydescents = 0; + qreal cCount; + qreal rCount; + QSizeF oSize = size; + if (orientation == Qt::Vertical) { + // height for width + colData = &q_columnData; + rowData = q_rowData; + widths = q_widths.data(); + heights = q_heights.data(); + xx = q_xx.data(); + yy = q_yy.data(); + cCount = columnCount(); + rCount = rowCount(); + ydescents = q_descents.data(); + } else { + // width for height + colData = &q_rowData; + rowData = q_columnData; + widths = q_heights.data(); + heights = q_widths.data(); + xx = q_yy.data(); + yy = q_xx.data(); + cCount = rowCount(); + rCount = columnCount(); + xdescents = q_descents.data(); + oSize.transpose(); + } + + colData->calculateGeometries(0, cCount, oSize.width(), xx, widths, + xdescents, q_totalBoxes[orientation == Qt::Horizontal]); + for (int i = q_items.count() - 1; i >= 0; --i) { + QGridLayoutItem *item = q_items.at(i); + const int col = item->firstColumn(orientation); + const int row = item->firstRow(orientation); + if (item->hasDynamicConstraint()) { + const qreal sz = widths[col]; + QGridLayoutBox box = item->box(orientation, sz); + rowData.boxes[row].combine(box); + } + } + + QGridLayoutBox &totalBox = q_totalBoxes[orientation == Qt::Vertical]; + totalBox = rowData.totalBox(0, rCount); + rowData.calculateGeometries(0, rCount, oSize.height(), yy, heights, + ydescents, totalBox); q_cachedSize = size; } diff --git a/src/gui/graphicsview/qgridlayoutengine_p.h b/src/gui/graphicsview/qgridlayoutengine_p.h index 9ac9a8e..580af7e 100644 --- a/src/gui/graphicsview/qgridlayoutengine_p.h +++ b/src/gui/graphicsview/qgridlayoutengine_p.h @@ -91,6 +91,14 @@ enum LayoutSide { Bottom }; +enum { + NoConstraint, + HorizontalConstraint, + VerticalConstraint, + UnknownConstraint, // need to update cache + UnfeasibleConstraint // not feasible, it be has some items with Vertical and others with Horizontal constraints +}; + template <typename T> class QLayoutParameter { @@ -270,6 +278,10 @@ public: inline void setAlignment(Qt::Alignment alignment) { q_alignment = alignment; } QSizePolicy::Policy sizePolicy(Qt::Orientation orientation) const; + + bool hasDynamicConstraint() const; + Qt::Orientation dynamicConstraintOrientation() const; + QSizePolicy::ControlTypes controlTypes(LayoutSide side) const; QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; QGridLayoutBox box(Qt::Orientation orientation, qreal constraint = -1.0) const; @@ -280,7 +292,7 @@ public: void setGeometry(const QRectF &rect); void transpose(); void insertOrRemoveRows(int row, int delta, Qt::Orientation orientation = Qt::Vertical); - QSizeF effectiveMaxSize() const; + QSizeF effectiveMaxSize(const QSizeF &constraint) const; #ifdef QT_DEBUG void dump(int indent = 0) const; @@ -372,6 +384,14 @@ public: int column, int rowSpan, int columnSpan) const; QSizeF sizeHint(const QLayoutStyleInfo &styleInfo, Qt::SizeHint which, const QSizeF &constraint) const; + + // heightForWidth / widthForHeight support + QSizeF dynamicallyConstrainedSizeHint(Qt::SizeHint which, const QSizeF &constraint) const; + bool ensureDynamicConstraint() const; + bool hasDynamicConstraint() const; + Qt::Orientation constraintOrientation() const; + + QSizePolicy::ControlTypes controlTypes(LayoutSide side) const; void transpose(); void setVisualDirection(Qt::LayoutDirection direction); @@ -405,6 +425,7 @@ private: // Lazily computed from the above user input mutable int q_cachedEffectiveFirstRows[NOrientations]; mutable int q_cachedEffectiveLastRows[NOrientations]; + mutable quint8 q_cachedConstraintOrientation : 2; // Layout item input mutable QLayoutStyleInfo q_cachedDataForStyleInfo; diff --git a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp index d1d6860..28980cb 100644 --- a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp +++ b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp @@ -107,12 +107,13 @@ private slots: void avoidRecursionInInsertItem(); void styleInfoLeak(); void task236367_maxSizeHint(); + void heightForWidth(); }; class RectWidget : public QGraphicsWidget { public: - RectWidget(QGraphicsItem *parent = 0) : QGraphicsWidget(parent){} + RectWidget(QGraphicsItem *parent = 0) : QGraphicsWidget(parent), m_fnConstraint(0) {} void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) { @@ -125,9 +126,12 @@ public: QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const { - if (m_sizeHints[which].isValid()) { + if (constraint.width() < 0 && constraint.height() < 0 && m_sizeHints[which].isValid()) { return m_sizeHints[which]; } + if (m_fnConstraint) { + return m_fnConstraint(which, constraint); + } return QGraphicsWidget::sizeHint(which, constraint); } @@ -136,7 +140,13 @@ public: updateGeometry(); } + void setConstraintFunction(QSizeF (*fnConstraint)(Qt::SizeHint, const QSizeF &)) { + m_fnConstraint = fnConstraint; + } + QSizeF m_sizeHints[Qt::NSizeHints]; + QSizeF (*m_fnConstraint)(Qt::SizeHint, const QSizeF &); + }; struct ItemDesc @@ -146,7 +156,8 @@ struct ItemDesc m_rowSpan(1), m_colSpan(1), m_sizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred)), - m_align(0) + m_align(0), + m_fnConstraint(0) { } @@ -213,8 +224,20 @@ struct ItemDesc return (*this); } + ItemDesc &heightForWidth(QSizeF (*fnConstraint)(Qt::SizeHint, const QSizeF &)) { + m_fnConstraint = fnConstraint; + m_constraintOrientation = Qt::Vertical; + return (*this); + } + void apply(QGraphicsGridLayout *layout, QGraphicsWidget *item) { - item->setSizePolicy(m_sizePolicy); + QSizePolicy sp = m_sizePolicy; + if (m_fnConstraint) { + sp.setHeightForWidth(m_constraintOrientation == Qt::Vertical); + //sp.setWidthForHeight(m_constraintOrientation == Qt::Horizontal); + } + + item->setSizePolicy(sp); for (int i = 0; i < Qt::NSizeHints; ++i) { if (!m_sizes[i].isValid()) continue; @@ -233,6 +256,7 @@ struct ItemDesc break; } } + layout->addItem(item, m_pos.first, m_pos.second, m_rowSpan, m_colSpan); layout->setAlignment(item, m_align); } @@ -240,6 +264,7 @@ struct ItemDesc void apply(QGraphicsGridLayout *layout, RectWidget *item) { for (int i = 0; i < Qt::NSizeHints; ++i) item->setSizeHint((Qt::SizeHint)i, m_sizeHints[i]); + item->setConstraintFunction(m_fnConstraint); apply(layout, static_cast<QGraphicsWidget*>(item)); } @@ -251,6 +276,9 @@ struct ItemDesc QSizeF m_sizeHints[Qt::NSizeHints]; QSizeF m_sizes[Qt::NSizeHints]; Qt::Alignment m_align; + + Qt::Orientation m_constraintOrientation; + QSizeF (*m_fnConstraint)(Qt::SizeHint, const QSizeF &); }; typedef QList<ItemDesc> ItemList; @@ -2116,6 +2144,17 @@ void tst_QGraphicsGridLayout::alignment2() delete widget; } +static QSizeF hfw1(Qt::SizeHint, const QSizeF &constraint) +{ + QSizeF result(constraint); + if (constraint.width() < 0 && constraint.height() < 0) { + return QSizeF(50, 400); + } else if (constraint.width() >= 0) { + result.setHeight(20000./constraint.width()); + } + return result; +} + void tst_QGraphicsGridLayout::geometries_data() { @@ -2145,6 +2184,186 @@ void tst_QGraphicsGridLayout::geometries_data() << QRectF(0, 0, 60,10) << QRectF(0, 10, 60,10) ); + // change layout height and verify + QTest::newRow("hfw-h401") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(0,1) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,1) + .minSize(QSizeF(40,40)) + .preferredSize(QSizeF(50,400)) + .maxSize(QSizeF(500, 500)) + .heightForWidth(hfw1) + ) + << QSizeF(100, 401) + << (RectList() + << QRectF(0, 0, 50, 1) << QRectF(50, 0, 50, 1) + << QRectF(0, 1, 50,100) << QRectF(50, 1, 50,400) + ); + + + QTest::newRow("hfw-h408") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(0,1) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,1) + .minSize(QSizeF(40,40)) + .preferredSize(QSizeF(50,400)) + .maxSize(QSizeF(500, 500)) + .heightForWidth(hfw1) + ) + << QSizeF(100, 408) + << (RectList() + << QRectF(0, 0, 50, 8) << QRectF(50, 0, 50, 8) + << QRectF(0, 8, 50,100) << QRectF(50, 8, 50,400) + ); + + QTest::newRow("hfw-h410") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(0,1) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,1) + .minSize(QSizeF(40,40)) + .preferredSize(QSizeF(50,400)) + .maxSize(QSizeF(500, 500)) + .heightForWidth(hfw1) + ) + << QSizeF(100, 410) + << (RectList() + << QRectF(0, 0, 50,10) << QRectF(50, 0, 50,10) + << QRectF(0, 10, 50,100) << QRectF(50, 10, 50,400) + ); + + QTest::newRow("hfw-h470") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(0,1) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,1) + .minSize(QSizeF(40,40)) + .preferredSize(QSizeF(50,400)) + .maxSize(QSizeF(500, 500)) + .heightForWidth(hfw1) + ) + << QSizeF(100, 470) + << (RectList() + << QRectF(0, 0, 50,70) << QRectF(50, 0, 50,70) + << QRectF(0, 70, 50,100) << QRectF(50, 70, 50,400) + ); + + + // change layout width and verify + QTest::newRow("hfw-w100") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(0,1) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,1) + .minSize(QSizeF(40,40)) + .preferredSize(QSizeF(50,400)) + .maxSize(QSizeF(5000, 5000)) + .heightForWidth(hfw1) + ) + << QSizeF(100, 401) + << (RectList() + << QRectF( 0, 0, 50, 1) << QRectF( 50, 0, 50, 1) + << QRectF( 0, 1, 50, 100) << QRectF( 50, 1, 50, 400) + ); + + QTest::newRow("hfw-w160") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(0,1) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,1) + .minSize(QSizeF(40,40)) + .preferredSize(QSizeF(50,400)) + .maxSize(QSizeF(5000, 5000)) + .heightForWidth(hfw1) + ) + << QSizeF(160, 401) + << (RectList() + << QRectF( 0, 0, 80, 100) << QRectF( 80, 0, 80, 100) + << QRectF( 0, 100, 80, 100) << QRectF( 80, 100, 80, 250) + ); + + + QTest::newRow("hfw-w500") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(0,1) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,0) + .minSize(QSizeF(1,1)) + .preferredSize(QSizeF(50,10)) + .maxSize(QSizeF(100, 100)) + << ItemDesc(1,1) + .minSize(QSizeF(40,40)) + .preferredSize(QSizeF(50,400)) + .maxSize(QSizeF(5000, 5000)) + .heightForWidth(hfw1) + ) + << QSizeF(500, 401) + << (RectList() + << QRectF( 0, 0, 100, 100) << QRectF(100, 0, 100, 100) + << QRectF( 0, 100, 100, 100) << QRectF(100, 100, 400, 50) + ); + } void tst_QGraphicsGridLayout::geometries() @@ -2215,6 +2434,143 @@ void tst_QGraphicsGridLayout::task236367_maxSizeHint() QCOMPARE(widget->size(), QSizeF(w, h)); } +/* +static qreal hfw(qreal w) +{ + if (w == 0) + return 20000; + return 20000/w; +} +*/ +static QSizeF hfw(Qt::SizeHint /*which*/, const QSizeF &constraint) +{ + QSizeF result(constraint); + const qreal cw = constraint.width(); + const qreal ch = constraint.height(); + if (cw < 0 && ch < 0) { + return QSizeF(200, 100); + } else if (cw >= 0) { + result.setHeight(20000./cw); + } else if (cw == 0) { + result.setHeight(20000); + } else if (ch >= 0) { + result.setWidth(20000./ch); + } else if (ch == 0) { + result.setWidth(20000); + } + + return result; +} + +static qreal growthFactorBelowPreferredSize(qreal desired, qreal sumAvailable, qreal sumDesired) +{ + Q_ASSERT(sumDesired != 0.0); + return desired * qPow(sumAvailable / sumDesired, desired / sumDesired); +} + +static void expectedWidth(qreal minSize1, qreal prefSize1, + qreal minSize2, qreal prefSize2, + qreal targetSize, qreal *width1, qreal *width2) +{ + qreal sumAvail,factor1,factor2; + // stretch behaviour is different below and above preferred size... + if (targetSize < prefSize1 + prefSize2) { + sumAvail = targetSize - minSize1 - minSize2; + const qreal desired1 = prefSize1 - minSize1; + const qreal desired2 = prefSize2 - minSize2; + const qreal sumDesired = desired1 + desired2; + factor1 = growthFactorBelowPreferredSize(desired1, sumAvail, sumDesired); + factor2 = growthFactorBelowPreferredSize(desired2, sumAvail, sumDesired); + const qreal sumFactors = factor1 + factor2; + *width1 = sumAvail*factor1/sumFactors + minSize1; + *width2 = sumAvail*factor2/sumFactors + minSize2; + } else { + sumAvail = targetSize - prefSize1 - prefSize2; + factor1 = prefSize1; + factor2 = prefSize2; + const qreal sumFactors = factor1 + factor2; + *width1 = sumAvail*factor1/sumFactors + prefSize1; + *width2 = sumAvail*factor2/sumFactors + prefSize2; + } +} + + +bool qFuzzyCompare(const QSizeF &a, const QSizeF &b) +{ + return qFuzzyCompare(a.width(), b.width()) && qFuzzyCompare(a.height(), b.height()); +} + +void tst_QGraphicsGridLayout::heightForWidth() +{ + QGraphicsWidget *widget = new QGraphicsWidget; + QGraphicsGridLayout *layout = new QGraphicsGridLayout; + widget->setLayout(layout); + layout->setContentsMargins(0, 0, 0, 0); + layout->setSpacing(0); + RectWidget *w00 = new RectWidget; + w00->setSizeHint(Qt::MinimumSize, QSizeF(1,1)); + w00->setSizeHint(Qt::PreferredSize, QSizeF(10,10)); + w00->setSizeHint(Qt::MaximumSize, QSizeF(100,100)); + layout->addItem(w00, 0, 0); + + RectWidget *w01 = new RectWidget; + w01->setSizeHint(Qt::MinimumSize, QSizeF(1,1)); + w01->setSizeHint(Qt::PreferredSize, QSizeF(10,10)); + w01->setSizeHint(Qt::MaximumSize, QSizeF(100,100)); + layout->addItem(w01, 0, 1); + + RectWidget *w10 = new RectWidget; + w10->setSizeHint(Qt::MinimumSize, QSizeF(1,1)); + w10->setSizeHint(Qt::PreferredSize, QSizeF(10,10)); + w10->setSizeHint(Qt::MaximumSize, QSizeF(100,100)); + layout->addItem(w10, 1, 0); + + RectWidget *w11 = new RectWidget; + w11->setSizeHint(Qt::MinimumSize, QSizeF(1,1)); + w11->setSizeHint(Qt::MaximumSize, QSizeF(30000,30000)); + w11->setConstraintFunction(hfw); + QSizePolicy sp(QSizePolicy::Preferred, QSizePolicy::Preferred); + sp.setHeightForWidth(true); + w11->setSizePolicy(sp); + layout->addItem(w11, 1, 1); + + QSizeF prefSize = layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(-1, -1)); + QCOMPARE(prefSize, QSizeF(10+200, 10+100)); + + QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(2, -1)), QSizeF(2, 20001)); + QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(2, -1)), QSizeF(2, 20010)); + QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(2, -1)), QSizeF(2, 20100)); + qreal width1; + qreal width2; + expectedWidth(1, 10, 1, 200, 20, &width1, &width2); + QSizeF expectedSize = hfw(Qt::MinimumSize, QSizeF(width2, -1)) + QSizeF(width1, 1); + QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(20, -1)), expectedSize); + expectedSize.rheight()+=9; + QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(20, -1)), expectedSize); + expectedSize.rheight()+=90; + QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(20, -1)), expectedSize); + + expectedWidth(1, 10, 1, 200, 300, &width1, &width2); + expectedSize = hfw(Qt::MinimumSize, QSizeF(width2, -1)) + QSizeF(width1, 1); + QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(300, -1)), expectedSize); + expectedSize.rheight()+=9; + QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(300, -1)), expectedSize); + // the height of the hfw widget is shorter than the one to the left, which is 100, so + // the total height of the last row is 100 (which leaves the layout height to be 200) + QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(300, -1)), QSizeF(300, 200)); + + // the hfw item is shorter than the item to the left + expectedWidth(1, 10, 1, 200, 500, &width1, &width2); + expectedSize = hfw(Qt::MinimumSize, QSizeF(width2, -1)) + QSizeF(width1, 1); + QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(500, -1)), expectedSize); + expectedSize.rheight()+=9; + QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(500, -1)), expectedSize); + // the height of the hfw widget is shorter than the one to the left, which is 100, so + // the total height of the last row is 100 (which leaves the layout height to be 200) + QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(500, -1)), QSizeF(500, 200)); + +} + QTEST_MAIN(tst_QGraphicsGridLayout) #include "tst_qgraphicsgridlayout.moc" -- cgit v0.12 From 1c959c35234838cbb69f676cd96e27dc30bd85c1 Mon Sep 17 00:00:00 2001 From: Morten Engvoldsen <morten.engvoldsen@nokia.com> Date: Tue, 10 Aug 2010 12:46:41 +0200 Subject: Doc: Adding radius support for CSS3 and webkit --- doc/src/template/style/style.css | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/doc/src/template/style/style.css b/doc/src/template/style/style.css index 9b37693..d6b0fda 100755 --- a/doc/src/template/style/style.css +++ b/doc/src/template/style/style.css @@ -114,6 +114,8 @@ { border: 1px solid #DDDDDD; -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; margin: 0 20px 10px 10px; padding: 20px 15px 20px 20px; overflow-x: auto; @@ -121,6 +123,8 @@ table, pre { -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; background-color: #F6F6F6; border: 1px solid #E6E6E6; border-collapse: separate; @@ -855,6 +859,8 @@ background-color:#F6F6F6; border:1px solid #E6E6E6; -moz-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; font-size:12pt; padding-left:10px; margin-top:10px; @@ -911,6 +917,8 @@ { display: none; -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; border: 1px solid #DDDDDD; position: fixed; top: 100px; @@ -974,6 +982,8 @@ { float: right; -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; background-color: #F6F6F6; border: 1px solid #DDDDDD; margin: 0 20px 10px 10px; @@ -1068,6 +1078,8 @@ .relpage { -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; border: 1px solid #DDDDDD; padding: 25px 25px; clear: both; @@ -1084,6 +1096,8 @@ h3.fn, span.fn { -moz-border-radius:7px 7px 7px 7px; + -webkit-border-radius:7px 7px 7px 7px; + border-radius:7px 7px 7px 7px; background-color: #F6F6F6; border-width: 1px; border-style: solid; @@ -1102,6 +1116,8 @@ border-style: solid; border-color: #E6E6E6; -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; width:100%; } -- cgit v0.12 From 2281a3a7a62a5a81de7fefaf0b84f130b16bd44f Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Tue, 10 Aug 2010 10:54:26 +0200 Subject: QMetaObject::normalizeSignature avoid reading past the string in case of invalid signature given. If passed "a(b", qNormalizeType would return a pointer to the \0 at the end of the string. We would add \0 to the result (thinking it is ',' or ')' ) And continue to process the memory after the string. Reviewed-by: Kent Hansen Task-number: QT-1591 --- src/corelib/kernel/qmetaobject.cpp | 5 ++++- tests/auto/qmetaobject/tst_qmetaobject.cpp | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 79a38cd..9854e68 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -1009,8 +1009,11 @@ QByteArray QMetaObject::normalizedSignature(const char *method) int argdepth = 0; int templdepth = 0; while (*d) { - if (argdepth == 1) + if (argdepth == 1) { d = qNormalizeType(d, templdepth, result); + if (!*d) //most likely an invalid signature. + break; + } if (*d == '(') ++argdepth; if (*d == ')') diff --git a/tests/auto/qmetaobject/tst_qmetaobject.cpp b/tests/auto/qmetaobject/tst_qmetaobject.cpp index 62416b1..bb96da1 100644 --- a/tests/auto/qmetaobject/tst_qmetaobject.cpp +++ b/tests/auto/qmetaobject/tst_qmetaobject.cpp @@ -714,6 +714,8 @@ void tst_QMetaObject::normalizedSignature_data() QTest::newRow("const12") << "void foo(Foo<Bar>const*const *const)" << "void foo(Foo<Bar>*const*const)"; QTest::newRow("const13") << "void foo(const Foo<Bar>&)" << "void foo(Foo<Bar>)"; QTest::newRow("const14") << "void foo(Foo<Bar>const&)" << "void foo(Foo<Bar>)"; + + QTest::newRow("invalid1") << "a( b" << "a(b"; } void tst_QMetaObject::normalizedSignature() @@ -721,7 +723,7 @@ void tst_QMetaObject::normalizedSignature() QFETCH(QString, signature); QFETCH(QString, result); - QCOMPARE(QString::fromLatin1(QMetaObject::normalizedSignature(signature.toLatin1())), result); + QCOMPARE(QMetaObject::normalizedSignature(signature.toLatin1()), result.toLatin1()); } void tst_QMetaObject::normalizedType_data() @@ -759,7 +761,7 @@ void tst_QMetaObject::normalizedType() QFETCH(QString, type); QFETCH(QString, result); - QCOMPARE(QString::fromLatin1(QMetaObject::normalizedType(type.toLatin1())), result); + QCOMPARE(QMetaObject::normalizedType(type.toLatin1()), result.toLatin1()); } void tst_QMetaObject::customPropertyType() -- cgit v0.12 From c21f95aab2228168452d1d7bb4e332a8c6164a02 Mon Sep 17 00:00:00 2001 From: Olivier Goffart <olivier.goffart@nokia.com> Date: Tue, 10 Aug 2010 11:35:51 +0200 Subject: Added one test for QRegExp Task-number: QT-1289 --- tests/auto/qregexp/tst_qregexp.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tests/auto/qregexp/tst_qregexp.cpp b/tests/auto/qregexp/tst_qregexp.cpp index ea07323..d0d26ee 100644 --- a/tests/auto/qregexp/tst_qregexp.cpp +++ b/tests/auto/qregexp/tst_qregexp.cpp @@ -105,6 +105,7 @@ private slots: void QTBUG_7049_data(); void QTBUG_7049(); + void interval(); }; // Testing get/set functions @@ -1426,5 +1427,22 @@ void tst_QRegExp::QTBUG_7049() QCOMPARE( re.cap(2), cap2 ); } +void tst_QRegExp::interval() +{ + { + QRegExp exp("a{0,1}"); + QVERIFY(exp.isValid()); + } + { + QRegExp exp("a{1,1}"); + QVERIFY(exp.isValid()); + } + { + QRegExp exp("a{1,0}"); + QVERIFY(!exp.isValid()); + } +} + + QTEST_APPLESS_MAIN(tst_QRegExp) #include "tst_qregexp.moc" -- cgit v0.12 From bfc32c590d797599ddfb814f023e5837c663ec23 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen <richard.gustavsen@nokia.com> Date: Tue, 10 Aug 2010 13:09:46 +0200 Subject: Mac: Fix crash when using style to draw on other things than widgets When drawing a complex control using the style, you are allowd to skip giving a widget as the last argument. But when doing so, it caused a crash in the mac style. Reviewed-by: Fabien Freling --- src/gui/styles/qmacstyle_mac.mm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gui/styles/qmacstyle_mac.mm b/src/gui/styles/qmacstyle_mac.mm index ae90d26..671a888 100644 --- a/src/gui/styles/qmacstyle_mac.mm +++ b/src/gui/styles/qmacstyle_mac.mm @@ -1440,6 +1440,9 @@ QMacStylePrivate::QMacStylePrivate(QMacStyle *style) bool QMacStylePrivate::animatable(QMacStylePrivate::Animates as, const QWidget *w) const { + if (!w) + return false; + if (as == AquaPushButton) { QPushButton *pb = const_cast<QPushButton *>(static_cast<const QPushButton *>(w)); if (w->window()->isActiveWindow() && pb && !mouseDown) { -- cgit v0.12 From bc7a42be16c5218ba5022c95bf1334a15a9151a6 Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Tue, 10 Aug 2010 13:33:38 +0200 Subject: doc: Some reorganization of top page topic hierarchy. --- doc/src/frameworks-technologies/dbus-adaptors.qdoc | 1 - doc/src/frameworks-technologies/dbus-intro.qdoc | 2 +- doc/src/frameworks-technologies/ipc.qdoc | 13 ++++++------- doc/src/modules.qdoc | 7 +++---- doc/src/xml-processing/xml-patterns.qdoc | 2 +- doc/src/xml-processing/xml-processing.qdoc | 8 +++++--- doc/src/xml-processing/xquery-introduction.qdoc | 2 +- 7 files changed, 17 insertions(+), 18 deletions(-) diff --git a/doc/src/frameworks-technologies/dbus-adaptors.qdoc b/doc/src/frameworks-technologies/dbus-adaptors.qdoc index 181a8d9..f193a67 100644 --- a/doc/src/frameworks-technologies/dbus-adaptors.qdoc +++ b/doc/src/frameworks-technologies/dbus-adaptors.qdoc @@ -30,7 +30,6 @@ \title Using QtDBus Adaptors \brief How to create and use DBus adaptors in Qt. - \ingroup technology-apis \ingroup best-practices Adaptors are special classes that are attached to any QObject-derived class diff --git a/doc/src/frameworks-technologies/dbus-intro.qdoc b/doc/src/frameworks-technologies/dbus-intro.qdoc index bccb6da..9d4cd95 100644 --- a/doc/src/frameworks-technologies/dbus-intro.qdoc +++ b/doc/src/frameworks-technologies/dbus-intro.qdoc @@ -27,7 +27,7 @@ /*! \page intro-to-dbus.html - \title Introduction to D-Bus + \title D-Bus \brief An introduction to Inter-Process Communication and Remote Procedure Calling with D-Bus. \keyword QtDBus diff --git a/doc/src/frameworks-technologies/ipc.qdoc b/doc/src/frameworks-technologies/ipc.qdoc index 23234ae..26a8cec 100644 --- a/doc/src/frameworks-technologies/ipc.qdoc +++ b/doc/src/frameworks-technologies/ipc.qdoc @@ -56,13 +56,12 @@ \section1 D-Bus - The \l{QtDBus} module is a Unix-only library - you can use to implement IPC using the D-Bus protocol. It extends - Qt's \l{signalsandslots.html} {Signals and Slots} mechanism to the - IPC level, allowing a signal emitted by one process to be - connected to a slot in another process. This \l {Introduction to - D-Bus} page has detailed information on how to use the \l{QtDBus} - module. + The \l{QtDBus} module is a Unix-only library you can use to + implement IPC using the D-Bus protocol. It extends Qt's + \l{signalsandslots.html} {Signals and Slots} mechanism to the IPC + level, allowing a signal emitted by one process to be connected to + a slot in another process. This \l {D-Bus} page has detailed + information on how to use the \l{QtDBus} module. \section1 Qt COmmunications Protocol (QCOP) diff --git a/doc/src/modules.qdoc b/doc/src/modules.qdoc index c35d71c..941459b 100644 --- a/doc/src/modules.qdoc +++ b/doc/src/modules.qdoc @@ -442,7 +442,7 @@ \section1 Further Reading General overviews of XQuery and XSchema can be found in the - \l{Using XML Technologies} document. + \l{XQuery} document. An introduction to the XQuery language can be found in \l{A Short Path to XQuery}. @@ -842,8 +842,7 @@ \target The QDBus compiler \brief The QtDBus module is a Unix-only library that you can use - to perform Inter-Process Communication using the \l{Introduction to - D-Bus}{D-Bus} protocol. + to perform Inter-Process Communication using the \l{D-Bus} protocol. Applications using the QtDBus module can provide services to other, remote applications by exporting objects, as well as use @@ -869,7 +868,7 @@ directory. When installing Qt from source, this module is built when Qt's tools are built. - See the \l {Introduction to D-Bus} page for detailed information on + See the \l {D-Bus} page for detailed information on how to use this module. This module is part of all \l{Qt editions}. diff --git a/doc/src/xml-processing/xml-patterns.qdoc b/doc/src/xml-processing/xml-patterns.qdoc index dcf92f6..d0c8709 100644 --- a/doc/src/xml-processing/xml-patterns.qdoc +++ b/doc/src/xml-processing/xml-patterns.qdoc @@ -27,7 +27,7 @@ /*! \page xmlprocessing.html - \title Using XML Technologies + \title XQuery \previouspage Working with the DOM Tree \contentspage XML Processing diff --git a/doc/src/xml-processing/xml-processing.qdoc b/doc/src/xml-processing/xml-processing.qdoc index 0d58301..dcdd8d1 100644 --- a/doc/src/xml-processing/xml-processing.qdoc +++ b/doc/src/xml-processing/xml-processing.qdoc @@ -32,13 +32,15 @@ \brief Classes that support XML, via, for example DOM and SAX. These classes are relevant to XML users. - + \generatelist{related} */ /*! \page xml-processing.html \title XML Processing + \ingroup technology-apis + \brief An Overview of the XML processing facilities in Qt. In addition to core XML support, classes for higher level querying @@ -57,7 +59,7 @@ \o \l {XML Streaming} \o \l {The SAX Interface} \o \l {Working with the DOM Tree} - \o \l {Using XML Technologies}{XQuery/XPath and XML Schema} + \o \l {XQuery}{XQuery/XPath and XML Schema} \list \o \l{A Short Path to XQuery} \endlist @@ -525,7 +527,7 @@ \previouspage The SAX Interface \contentspage XML Processing - \nextpage {Using XML Technologies}{XQuery/XPath and XML Schema} + \nextpage {XQuery}{XQuery/XPath and XML Schema} DOM Level 2 is a W3C Recommendation for XML interfaces that maps the constituents of an XML document to a tree structure. The specification diff --git a/doc/src/xml-processing/xquery-introduction.qdoc b/doc/src/xml-processing/xquery-introduction.qdoc index 09af688..b79c205 100644 --- a/doc/src/xml-processing/xquery-introduction.qdoc +++ b/doc/src/xml-processing/xquery-introduction.qdoc @@ -29,7 +29,7 @@ \page xquery-introduction.html \title A Short Path to XQuery -\startpage Using XML Technologies +\startpage XQuery \target XQuery-introduction XQuery is a language for querying XML data or non-XML data that can be -- cgit v0.12 From 846f1b44eea4bb34d080d055badb40a4a13d369e Mon Sep 17 00:00:00 2001 From: Peter Hartmann <peter.hartmann@nokia.com> Date: Tue, 10 Aug 2010 13:59:57 +0200 Subject: QSslSocket: fix security vulnerability with wildcard IP addresses This fixes Westpoint Security issue with Advisory ID#: wp-10-0001. Before, we would allow wildcards in IP addresses like *.2.3.4 ; now, IP addresses must match excatly. Patch-by: Richard J. Moore <rich@kde.org> Task-number: QT-3704 --- src/network/ssl/qsslsocket_openssl.cpp | 5 +++++ tests/auto/qsslsocket/tst_qsslsocket.cpp | 2 ++ 2 files changed, 7 insertions(+) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index b4d030c..bb6910a 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -1288,6 +1288,11 @@ bool QSslSocketBackendPrivate::isMatchingHostname(const QString &cn, const QStri if (hostname.midRef(hostname.indexOf(QLatin1Char('.'))) != cn.midRef(firstCnDot)) return false; + // Check if the hostname is an IP address, if so then wildcards are not allowed + QHostAddress addr(hostname); + if (!addr.isNull()) + return false; + // Ok, I guess this was a wildcard CN and the hostname matches. return true; } diff --git a/tests/auto/qsslsocket/tst_qsslsocket.cpp b/tests/auto/qsslsocket/tst_qsslsocket.cpp index 0c12974..6c1dd8f 100644 --- a/tests/auto/qsslsocket/tst_qsslsocket.cpp +++ b/tests/auto/qsslsocket/tst_qsslsocket.cpp @@ -1072,6 +1072,7 @@ void tst_QSslSocket::wildcardCertificateNames() QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example.com"), QString("www.example.com")), true ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("xxx*.example.com"), QString("xxxwww.example.com")), true ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("f*.example.com"), QString("foo.example.com")), true ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("192.168.0.0"), QString("192.168.0.0")), true ); // Failing CN matches QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("xxx.example.com"), QString("www.example.com")), false ); @@ -1085,6 +1086,7 @@ void tst_QSslSocket::wildcardCertificateNames() QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example."), QString("www.example")), false ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString(""), QString("www")), false ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*"), QString("www")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.168.0.0"), QString("192.168.0.0")), false ); } void tst_QSslSocket::wildcard() -- cgit v0.12 From 2b42bac65ae90f94b04ff556e5033014d37d223d Mon Sep 17 00:00:00 2001 From: Martin Smith <martin.smith@nokia.com> Date: Tue, 10 Aug 2010 14:14:25 +0200 Subject: doc: Changed some titles so lists of contents sort better. --- doc/src/deployment/deployment.qdoc | 2 +- doc/src/development/developing-with-qt.qdoc | 2 +- doc/src/frameworks-technologies/containers.qdoc | 2 +- doc/src/frameworks-technologies/model-view-programming.qdoc | 2 +- doc/src/getting-started/demos.qdoc | 2 +- doc/src/overviews.qdoc | 7 ++++--- doc/src/porting/porting4.qdoc | 4 ++-- doc/src/porting/qt4-tulip.qdoc | 2 +- doc/src/qt4-intro.qdoc | 2 +- src/3rdparty/webkit/WebKit/qt/docs/qtwebkit.qdoc | 2 +- src/corelib/global/qglobal.cpp | 5 +++-- src/corelib/tools/qpair.qdoc | 4 ++-- src/dbus/qdbusargument.cpp | 4 ++-- src/xmlpatterns/api/qxmlquery.cpp | 7 +++---- 14 files changed, 24 insertions(+), 23 deletions(-) diff --git a/doc/src/deployment/deployment.qdoc b/doc/src/deployment/deployment.qdoc index 4573f3c..020ca16 100644 --- a/doc/src/deployment/deployment.qdoc +++ b/doc/src/deployment/deployment.qdoc @@ -155,7 +155,7 @@ \row \o QtWebKit \o WebKit \o WebKit is licensed under the GNU LGPL version 2 or later. This has implications for developers of closed source applications. - Please see \l{QtWebKit Module#License Information}{the QtWebKit module + Please see \l{WebKit in Qt#License Information}{the QtWebKit module documentation} for more information. \row \o \l{Phonon Module}{Phonon} \o Phonon diff --git a/doc/src/development/developing-with-qt.qdoc b/doc/src/development/developing-with-qt.qdoc index f9b38b8..b88fe3f 100644 --- a/doc/src/development/developing-with-qt.qdoc +++ b/doc/src/development/developing-with-qt.qdoc @@ -83,7 +83,7 @@ \o \l {Known Issues} \o \l {Platform Notes} \o \l {Platform Notes - Symbian} - \o \l {Qt For ActiveX} + \o \l {ActiveX in Qt} \o \l {Qt for Embedded Linux Classes} \o \l {Qt for Embedded Platforms} \o \l {Qt for Mac OS X - Specific Issues} diff --git a/doc/src/frameworks-technologies/containers.qdoc b/doc/src/frameworks-technologies/containers.qdoc index 58061ad..797326e 100644 --- a/doc/src/frameworks-technologies/containers.qdoc +++ b/doc/src/frameworks-technologies/containers.qdoc @@ -43,7 +43,7 @@ /*! \page containers.html - \title Generic Containers + \title Container Classes \ingroup technology-apis \ingroup groups \keyword container class diff --git a/doc/src/frameworks-technologies/model-view-programming.qdoc b/doc/src/frameworks-technologies/model-view-programming.qdoc index 131f063..7167f97 100644 --- a/doc/src/frameworks-technologies/model-view-programming.qdoc +++ b/doc/src/frameworks-technologies/model-view-programming.qdoc @@ -1011,7 +1011,7 @@ \snippet doc/src/snippets/reading-selections/window.cpp 0 - The above code uses Qt's convenient \l{Generic Containers}{foreach + The above code uses Qt's convenient \l{Container Classes}{foreach keyword} to iterate over, and modify, the items corresponding to the indexes returned by the selection model. diff --git a/doc/src/getting-started/demos.qdoc b/doc/src/getting-started/demos.qdoc index ef16224..94b19c3 100644 --- a/doc/src/getting-started/demos.qdoc +++ b/doc/src/getting-started/demos.qdoc @@ -134,7 +134,7 @@ \section1 QtWebKit \list - \o \l{Web Browser} demonstrates how Qt's \l{QtWebKit Module}{WebKit module} + \o \l{Web Browser} demonstrates how Qt's \l{WebKit in Qt}{WebKit module} can be used to implement a small Web browser. \endlist diff --git a/doc/src/overviews.qdoc b/doc/src/overviews.qdoc index 3c02705..caf9404 100644 --- a/doc/src/overviews.qdoc +++ b/doc/src/overviews.qdoc @@ -91,11 +91,12 @@ /*! \group qt-activex - \title Qt For ActiveX - \brief Qt API's for using ActiveX controls, servers, and COM. + \title ActiveX in Qt \ingroup technology-apis \ingroup platform-specific + \brief Qt API's for using ActiveX controls, servers, and COM. + These pages document Qt's API's for developing with ActiveX controls, servers, and COM. @@ -104,7 +105,7 @@ /*! \group qt-sql - \title Using SQL in Qt + \title SQL in Qt \brief Qt API's for using SQL. \ingroup technology-apis \ingroup best-practices diff --git a/doc/src/porting/porting4.qdoc b/doc/src/porting/porting4.qdoc index 0bbf35f..7b80e13 100644 --- a/doc/src/porting/porting4.qdoc +++ b/doc/src/porting/porting4.qdoc @@ -2598,7 +2598,7 @@ seems feeble. \endomit - See \l{Generic Containers} for a list of Qt 4 containers. + See \l{Container Classes} for a list of Qt 4 containers. \section1 QPtrDict<T> @@ -3939,7 +3939,7 @@ check the index against QVector::size() yourself. \endlist - See \l{Generic Containers} for an overview of the Qt 4 container + See \l{Container Classes} for an overview of the Qt 4 container classes. \section1 QVariant diff --git a/doc/src/porting/qt4-tulip.qdoc b/doc/src/porting/qt4-tulip.qdoc index 08542a6..333af84 100644 --- a/doc/src/porting/qt4-tulip.qdoc +++ b/doc/src/porting/qt4-tulip.qdoc @@ -97,7 +97,7 @@ you are iterating, that won't affect the loop. For details about the new containers, see the - \l{Generic Containers} and \l{Generic Algorithms} overview documents. + \l{Container Classes} and \l{Generic Algorithms} overview documents. In addition to the new containers, considerable work has also gone into QByteArray and QString. The Qt 3 QCString class has been diff --git a/doc/src/qt4-intro.qdoc b/doc/src/qt4-intro.qdoc index 8867fd9..88ef2a8 100644 --- a/doc/src/qt4-intro.qdoc +++ b/doc/src/qt4-intro.qdoc @@ -86,7 +86,7 @@ In Qt 4.4: \list - \o \l{QtWebkit Module}{Qt WebKit integration}, making it possible for developers + \o \l{Webkit in QT}{Qt WebKit integration}, making it possible for developers to use a fully-featured Web browser to display documents and access online services. \o A multimedia API provided by the \l{Phonon Overview}{Phonon Multimedia Framework}. diff --git a/src/3rdparty/webkit/WebKit/qt/docs/qtwebkit.qdoc b/src/3rdparty/webkit/WebKit/qt/docs/qtwebkit.qdoc index d3f5502..0335d46 100644 --- a/src/3rdparty/webkit/WebKit/qt/docs/qtwebkit.qdoc +++ b/src/3rdparty/webkit/WebKit/qt/docs/qtwebkit.qdoc @@ -1,6 +1,6 @@ /*! \module QtWebKit - \title QtWebKit Module + \title WebKit in Qt \contentspage All Qt Modules \previouspage QtSvg \nextpage QtXml diff --git a/src/corelib/global/qglobal.cpp b/src/corelib/global/qglobal.cpp index 0e3a8d3..af35316 100644 --- a/src/corelib/global/qglobal.cpp +++ b/src/corelib/global/qglobal.cpp @@ -2914,8 +2914,9 @@ int qrand() \relates <QtGlobal> You can use this macro to specify information about a custom type - \a Type. With accurate type information, Qt's \l{generic - containers} can choose appropriate storage methods and algorithms. + \a Type. With accurate type information, Qt's \l{Container Classes} + {generic containers} can choose appropriate storage methods and + algorithms. \a Flags can be one of the following: diff --git a/src/corelib/tools/qpair.qdoc b/src/corelib/tools/qpair.qdoc index e60243f..d49c09e 100644 --- a/src/corelib/tools/qpair.qdoc +++ b/src/corelib/tools/qpair.qdoc @@ -35,7 +35,7 @@ pair type is not available. It stores one value of type T1 and one value of type T2. It can be used as a return value for a function that needs to return two values, or as the value type of - a \l{generic container}. + a \l{Container classes}{generic container}. Here's an example of a QPair that stores one QString and one \c double value: @@ -53,7 +53,7 @@ requirements; these requirements are documented on a per-function basis. - \sa {Generic Containers} + \sa {Container Classes} */ /*! \typedef QPair::first_type diff --git a/src/dbus/qdbusargument.cpp b/src/dbus/qdbusargument.cpp index fbbc6a2..0bde085 100644 --- a/src/dbus/qdbusargument.cpp +++ b/src/dbus/qdbusargument.cpp @@ -825,7 +825,7 @@ void QDBusArgument::endStructure() \snippet doc/src/snippets/code/src_qdbus_qdbusargument.cpp 6 If the type you want to marshall is a QList, QVector or any of the - Qt's \l {Generic Containers} that take one template parameter, + Qt's \l {Container Classes} that take one template parameter, you need not declare an \c{operator<<} function for it, since QtDBus provides generic templates to do the job of marshalling the data. The same applies for STL's sequence containers, such @@ -952,7 +952,7 @@ void QDBusArgument::endStructure() const \snippet doc/src/snippets/code/src_qdbus_qdbusargument.cpp 9 If the type you want to demarshall is a QList, QVector or any of the - Qt's \l {Generic Containers} that take one template parameter, you + Qt's \l {Container Classes} that take one template parameter, you need not declare an \c{operator>>} function for it, since QtDBus provides generic templates to do the job of demarshalling the data. The same applies for STL's sequence containers, such as \c {std::list}, diff --git a/src/xmlpatterns/api/qxmlquery.cpp b/src/xmlpatterns/api/qxmlquery.cpp index e106d74..55af49b 100644 --- a/src/xmlpatterns/api/qxmlquery.cpp +++ b/src/xmlpatterns/api/qxmlquery.cpp @@ -151,8 +151,8 @@ QT_BEGIN_NAMESPACE \endcode \note For the current release, XSLT support should be considered - experimental. See section \l{Using XML technologies#XSLT - 2.0}{XSLT conformance} for details. + experimental. See section \l{XQuery#XSLT 2.0} {XSLT conformance} for + details. Stylesheet parameters are bound using bindVariable(). @@ -291,8 +291,7 @@ QXmlQuery::QXmlQuery(const QXmlNamePool &np) : d(new QXmlQueryPrivate(np)) create instances of QXmlQuery for running XQueries. \note The XSL-T support in this release is considered experimental. - See the \l{Using XML technologies#XSLT 2.0}{XSLT conformance} for - details. + See the \l{XQuery#XSLT 2.0} {XSLT conformance} for details. \since 4.5 \sa queryLanguage() -- cgit v0.12 From ca9270722b4412d9f70efe1ef4ad51635deca75a Mon Sep 17 00:00:00 2001 From: "Richard J. Moore" <rich@kde.org> Date: Sun, 6 Jun 2010 22:10:08 +0100 Subject: Fix handling of SSL certificates with wildcard domain names Merge-request: 731 Task-number: QTBUG-4455 Reviewed-by: Peter Hartmann --- src/network/ssl/qsslsocket_openssl.cpp | 42 +++++++++++++++++++++++++++++--- src/network/ssl/qsslsocket_openssl_p.h | 1 + tests/auto/qsslsocket/tst_qsslsocket.cpp | 24 ++++++++++++++++++ 3 files changed, 63 insertions(+), 4 deletions(-) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index 6f77600..6f0ccff 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -827,17 +827,16 @@ bool QSslSocketBackendPrivate::startHandshake() QString peerName = (verificationPeerName.isEmpty () ? q->peerName() : verificationPeerName); QString commonName = configuration.peerCertificate.subjectInfo(QSslCertificate::CommonName); - QRegExp regexp(commonName, Qt::CaseInsensitive, QRegExp::Wildcard); - if (!regexp.exactMatch(peerName)) { + if (!isMatchingHostname(commonName.lower(), peerName.lower())) { bool matched = false; foreach (const QString &altName, configuration.peerCertificate .alternateSubjectNames().values(QSsl::DnsEntry)) { - regexp.setPattern(altName); - if (regexp.exactMatch(peerName)) { + if (isMatchingHostname(altName.lower(), peerName.lower())) { matched = true; break; } } + if (!matched) { // No matches in common names or alternate names. QSslError error(QSslError::HostNameMismatch, configuration.peerCertificate); @@ -962,4 +961,39 @@ QList<QSslCertificate> QSslSocketBackendPrivate::STACKOFX509_to_QSslCertificates return certificates; } +bool QSslSocketBackendPrivate::isMatchingHostname(const QString &cn, const QString &hostname) +{ + int wildcard = cn.indexOf(QLatin1Char('*')); + + // Check this is a wildcard cert, if not then just compare the strings + if (wildcard < 0) + return cn == hostname; + + int firstCnDot = cn.indexOf(QLatin1Char('.')); + int secondCnDot = cn.indexOf(QLatin1Char('.'), firstCnDot+1); + + // Check at least 3 components + if ((-1 == secondCnDot) || (secondCnDot+1 >= cn.length())) + return false; + + // Check * is last character of 1st component (ie. there's a following .) + if (wildcard+1 != firstCnDot) + return false; + + // Check only one star + if (cn.lastIndexOf(QLatin1Char('*')) != wildcard) + return false; + + // Check characters preceding * (if any) match + if (wildcard && (hostname.leftRef(wildcard) != cn.leftRef(wildcard))) + return false; + + // Check characters following first . match + if (hostname.midRef(hostname.indexOf(QLatin1Char('.'))) != cn.midRef(firstCnDot)) + return false; + + // Ok, I guess this was a wildcard CN and the hostname matches. + return true; +} + QT_END_NAMESPACE diff --git a/src/network/ssl/qsslsocket_openssl_p.h b/src/network/ssl/qsslsocket_openssl_p.h index 836f064..05eb4fa 100644 --- a/src/network/ssl/qsslsocket_openssl_p.h +++ b/src/network/ssl/qsslsocket_openssl_p.h @@ -115,6 +115,7 @@ public: static QSslCipher QSslCipher_from_SSL_CIPHER(SSL_CIPHER *cipher); static QList<QSslCertificate> STACKOFX509_to_QSslCertificates(STACK_OF(X509) *x509); + Q_AUTOTEST_EXPORT static bool isMatchingHostname(const QString &cn, const QString &hostname); }; QT_END_NAMESPACE diff --git a/tests/auto/qsslsocket/tst_qsslsocket.cpp b/tests/auto/qsslsocket/tst_qsslsocket.cpp index 5dd7c19..225e2e8 100644 --- a/tests/auto/qsslsocket/tst_qsslsocket.cpp +++ b/tests/auto/qsslsocket/tst_qsslsocket.cpp @@ -55,6 +55,7 @@ #include <QAuthenticator> #include "private/qhostinfo_p.h" +#include "private/qsslsocket_openssl_p.h" #include "../network-settings.h" @@ -163,6 +164,7 @@ private slots: void setDefaultCiphers(); void supportedCiphers(); void systemCaCertificates(); + void wildcardCertificateNames(); void wildcard(); void setEmptyKey(); void spontaneousWrite(); @@ -1048,6 +1050,28 @@ void tst_QSslSocket::systemCaCertificates() QCOMPARE(certs, QSslSocket::defaultCaCertificates()); } +void tst_QSslSocket::wildcardCertificateNames() +{ + // Passing CN matches + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("www.example.com"), QString("www.example.com")), true ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example.com"), QString("www.example.com")), true ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("xxx*.example.com"), QString("xxxwww.example.com")), true ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("f*.example.com"), QString("foo.example.com")), true ); + + // Failing CN matches + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("xxx.example.com"), QString("www.example.com")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*"), QString("www.example.com")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.*.com"), QString("www.example.com")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example.com"), QString("baa.foo.example.com")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("f*.example.com"), QString("baa.example.com")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.com"), QString("example.com")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*fail.com"), QString("example.com")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example."), QString("www.example.")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example."), QString("www.example")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString(""), QString("www")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*"), QString("www")), false ); +} + void tst_QSslSocket::wildcard() { QSKIP("TODO: solve wildcard problem", SkipAll); -- cgit v0.12 From b5f95fbf615b113e3e6d2b42f6b84309d6588b1f Mon Sep 17 00:00:00 2001 From: Peter Hartmann <peter.hartmann@nokia.com> Date: Mon, 12 Jul 2010 10:47:00 +0200 Subject: fix build for -no-qt3support QString::lower() is QT3_SUPPORT, the correct method is QString::toLower(). --- src/network/ssl/qsslsocket_openssl.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index 6f0ccff..103a7ef 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -827,11 +827,11 @@ bool QSslSocketBackendPrivate::startHandshake() QString peerName = (verificationPeerName.isEmpty () ? q->peerName() : verificationPeerName); QString commonName = configuration.peerCertificate.subjectInfo(QSslCertificate::CommonName); - if (!isMatchingHostname(commonName.lower(), peerName.lower())) { + if (!isMatchingHostname(commonName.toLower(), peerName.toLower())) { bool matched = false; foreach (const QString &altName, configuration.peerCertificate .alternateSubjectNames().values(QSsl::DnsEntry)) { - if (isMatchingHostname(altName.lower(), peerName.lower())) { + if (isMatchingHostname(altName.toLower(), peerName.toLower())) { matched = true; break; } -- cgit v0.12 From 87c62128266a4e2289c1854e35aba3fc17d44045 Mon Sep 17 00:00:00 2001 From: Peter Hartmann <peter.hartmann@nokia.com> Date: Tue, 10 Aug 2010 13:59:57 +0200 Subject: QSslSocket: fix security vulnerability with wildcard IP addresses This fixes Westpoint Security issue with Advisory ID#: wp-10-0001. Before, we would allow wildcards in IP addresses like *.2.3.4 ; now, IP addresses must match excatly. Patch-by: Richard J. Moore <rich@kde.org> Task-number: QT-3704 --- src/network/ssl/qsslsocket_openssl.cpp | 5 +++++ tests/auto/qsslsocket/tst_qsslsocket.cpp | 2 ++ 2 files changed, 7 insertions(+) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index 103a7ef..625d739 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -992,6 +992,11 @@ bool QSslSocketBackendPrivate::isMatchingHostname(const QString &cn, const QStri if (hostname.midRef(hostname.indexOf(QLatin1Char('.'))) != cn.midRef(firstCnDot)) return false; + // Check if the hostname is an IP address, if so then wildcards are not allowed + QHostAddress addr(hostname); + if (!addr.isNull()) + return false; + // Ok, I guess this was a wildcard CN and the hostname matches. return true; } diff --git a/tests/auto/qsslsocket/tst_qsslsocket.cpp b/tests/auto/qsslsocket/tst_qsslsocket.cpp index 225e2e8..8f7e0d9 100644 --- a/tests/auto/qsslsocket/tst_qsslsocket.cpp +++ b/tests/auto/qsslsocket/tst_qsslsocket.cpp @@ -1057,6 +1057,7 @@ void tst_QSslSocket::wildcardCertificateNames() QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example.com"), QString("www.example.com")), true ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("xxx*.example.com"), QString("xxxwww.example.com")), true ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("f*.example.com"), QString("foo.example.com")), true ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("192.168.0.0"), QString("192.168.0.0")), true ); // Failing CN matches QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("xxx.example.com"), QString("www.example.com")), false ); @@ -1070,6 +1071,7 @@ void tst_QSslSocket::wildcardCertificateNames() QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.example."), QString("www.example")), false ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString(""), QString("www")), false ); QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*"), QString("www")), false ); + QCOMPARE( QSslSocketBackendPrivate::isMatchingHostname(QString("*.168.0.0"), QString("192.168.0.0")), false ); } void tst_QSslSocket::wildcard() -- cgit v0.12 From 8229eded4cba85ae53c1b03ce87981ebabd2f3ae Mon Sep 17 00:00:00 2001 From: Shane Kearns <shane.kearns@accenture.com> Date: Tue, 10 Aug 2010 14:02:52 +0100 Subject: Fix regression with SSL connections failing on symbian Due to a wrong ifdef sequence, the unix code was being compiled instead of the symbian code for retrieving the system certificates. Task-number: QTBUG-12718 Reviewed-by: Peter Hartmann --- src/network/ssl/qsslsocket_openssl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp index b4d030c..aea04a3 100644 --- a/src/network/ssl/qsslsocket_openssl.cpp +++ b/src/network/ssl/qsslsocket_openssl.cpp @@ -750,7 +750,7 @@ QList<QSslCertificate> QSslSocketPrivate::systemCaCertificates() ptrCertCloseStore(hSystemStore, 0); } } -#elif defined(Q_OS_UNIX) +#elif defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN) systemCerts.append(QSslCertificate::fromPath(QLatin1String("/var/ssl/certs/*.pem"), QSsl::Pem, QRegExp::Wildcard)); // AIX systemCerts.append(QSslCertificate::fromPath(QLatin1String("/usr/local/ssl/certs/*.pem"), QSsl::Pem, QRegExp::Wildcard)); // Solaris systemCerts.append(QSslCertificate::fromPath(QLatin1String("/opt/openssl/certs/*.pem"), QSsl::Pem, QRegExp::Wildcard)); // HP-UX -- cgit v0.12 From 87b7587f25928272900900a106f360a4fbb4d6cd Mon Sep 17 00:00:00 2001 From: Simon Hausmann <simon.hausmann@nokia.com> Date: Tue, 10 Aug 2010 16:18:22 +0200 Subject: Updated WebKit to 72b1c38579ca1fdb3f242e29cd16e5bfb4925813 Integrated changes: || <https://webkit.org/b/43782> || [Qt] NPAPI plugins not drawn until page scrolled || --- src/3rdparty/webkit/.tag | 2 +- src/3rdparty/webkit/VERSION | 2 +- src/3rdparty/webkit/WebCore/ChangeLog | 10 ++++++++++ src/3rdparty/webkit/WebCore/plugins/mac/PluginViewMac.mm | 5 ++++- 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/3rdparty/webkit/.tag b/src/3rdparty/webkit/.tag index fb2703e..d31a2b4 100644 --- a/src/3rdparty/webkit/.tag +++ b/src/3rdparty/webkit/.tag @@ -1 +1 @@ -413404da27312051bb3ff2cfd0f3fca42aa4b245 +72b1c38579ca1fdb3f242e29cd16e5bfb4925813 diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION index c256434..62aa8ce 100644 --- a/src/3rdparty/webkit/VERSION +++ b/src/3rdparty/webkit/VERSION @@ -4,4 +4,4 @@ This is a snapshot of the Qt port of WebKit from and has the sha1 checksum - 413404da27312051bb3ff2cfd0f3fca42aa4b245 + 72b1c38579ca1fdb3f242e29cd16e5bfb4925813 diff --git a/src/3rdparty/webkit/WebCore/ChangeLog b/src/3rdparty/webkit/WebCore/ChangeLog index 5b78226..98d4d51 100644 --- a/src/3rdparty/webkit/WebCore/ChangeLog +++ b/src/3rdparty/webkit/WebCore/ChangeLog @@ -1,3 +1,13 @@ +2010-08-10 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Simon Hausmann. + + Make sure NPAPI plugins get an initial setNPWindow on Mac + + https://bugs.webkit.org/show_bug.cgi?id=43782 + + * plugins/mac/PluginViewMac.mm: + 2010-06-14 Andreas Kling <andreas.kling@nokia.com> Reviewed by Tor Arne Vestbø. diff --git a/src/3rdparty/webkit/WebCore/plugins/mac/PluginViewMac.mm b/src/3rdparty/webkit/WebCore/plugins/mac/PluginViewMac.mm index 57d74ab..c8781a8 100644 --- a/src/3rdparty/webkit/WebCore/plugins/mac/PluginViewMac.mm +++ b/src/3rdparty/webkit/WebCore/plugins/mac/PluginViewMac.mm @@ -227,7 +227,10 @@ bool PluginView::platformStart() #endif } - show(); + updatePluginWidget(); + + if (!m_plugin->quirks().contains(PluginQuirkDeferFirstSetWindowCall)) + setNPWindowIfNeeded(); // TODO: Implement null timer throttling depending on plugin activation m_nullEventTimer.set(new Timer<PluginView>(this, &PluginView::nullEventTimerFired)); -- cgit v0.12 From 05b9dc5a1cc649231b29807f2a87bb7164c5234a Mon Sep 17 00:00:00 2001 From: Kent Hansen <kent.hansen@nokia.com> Date: Tue, 10 Aug 2010 17:11:25 +0200 Subject: Fix memory leak in QtScript variable object The d-pointer is of type JSVariableObjectData*, but JSVariableObjectData doesn't have a virtual destructor. Hence we must cast the d-pointer to our subclass when deleting. In particular, this will ensure that the destructor of the symbolTable member is called, which will deallocate the table storage. (For QScriptActivationObject this did not cause a leak in practice, because its symbolTable is always empty, and JSC's hash table uses lazy allocation.) Task-number: QTBUG-12479 Reviewed-by: Olivier Goffart --- src/script/bridge/qscriptactivationobject.cpp | 2 +- src/script/bridge/qscriptstaticscopeobject.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/script/bridge/qscriptactivationobject.cpp b/src/script/bridge/qscriptactivationobject.cpp index 6a8ae56..85224d1 100644 --- a/src/script/bridge/qscriptactivationobject.cpp +++ b/src/script/bridge/qscriptactivationobject.cpp @@ -53,7 +53,7 @@ QScriptActivationObject::QScriptActivationObject(JSC::ExecState *callFrame, JSC: QScriptActivationObject::~QScriptActivationObject() { - delete d; + delete d_ptr(); } bool QScriptActivationObject::getOwnPropertySlot(JSC::ExecState* exec, const JSC::Identifier& propertyName, JSC::PropertySlot& slot) diff --git a/src/script/bridge/qscriptstaticscopeobject.cpp b/src/script/bridge/qscriptstaticscopeobject.cpp index 44548a4..940c859 100644 --- a/src/script/bridge/qscriptstaticscopeobject.cpp +++ b/src/script/bridge/qscriptstaticscopeobject.cpp @@ -87,7 +87,7 @@ QScriptStaticScopeObject::QScriptStaticScopeObject(WTF::NonNullPassRefPtr<JSC::S QScriptStaticScopeObject::~QScriptStaticScopeObject() { - delete d; + delete d_ptr(); } bool QScriptStaticScopeObject::getOwnPropertySlot(JSC::ExecState*, const JSC::Identifier& propertyName, JSC::PropertySlot& slot) -- cgit v0.12 From 4026b2c7bc91f8f25f73b182687d5d2bed823217 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Wed, 11 Aug 2010 10:04:53 +1000 Subject: Don't destroy ListModel child list nodes. These are owned by the root and must not be destroyed by child lists. Task-number: QTBUG-12771 Reviewed-by: Bea Lam --- src/declarative/util/qdeclarativelistmodel.cpp | 26 +++++++++++++--------- src/declarative/util/qdeclarativelistmodel_p_p.h | 13 +++++++++++ .../tst_qdeclarativelistmodel.cpp | 7 +++--- 3 files changed, 32 insertions(+), 14 deletions(-) diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp index 3ede335..b0d47a9 100644 --- a/src/declarative/util/qdeclarativelistmodel.cpp +++ b/src/declarative/util/qdeclarativelistmodel.cpp @@ -108,9 +108,9 @@ QDeclarativeListModelParser::ListInstruction *QDeclarativeListModelParser::ListM \snippet doc/src/snippets/declarative/listmodel-modify.qml delegate - When creating content dynamically, note that the set of available properties cannot be changed - except by first clearing the model. Whatever properties are first added to the model are then the - only permitted properties in the model until it is cleared. + Note that when creating content dynamically the set of available properties cannot be changed + once set. Whatever properties are first added to the model are the + only permitted properties in the model. \section2 Using threaded list models with WorkerScript @@ -283,8 +283,7 @@ int QDeclarativeListModel::count() const /*! \qmlmethod ListModel::clear() - Deletes all content from the model. The properties are cleared such that - different properties may be set on subsequent additions. + Deletes all content from the model. \sa append() remove() */ @@ -945,13 +944,14 @@ bool FlatListModel::addValue(const QScriptValue &value, QHash<int, QVariant> *ro } NestedListModel::NestedListModel(QDeclarativeListModel *base) - : _root(0), m_listModel(base), _rolesOk(false) + : _root(0), m_ownsRoot(false), m_listModel(base), _rolesOk(false) { } NestedListModel::~NestedListModel() { - delete _root; + if (m_ownsRoot) + delete _root; } QVariant NestedListModel::valueForNode(ModelNode *node, bool *hasNested) const @@ -1051,8 +1051,8 @@ void NestedListModel::clear() _rolesOk = false; roleStrings.clear(); - delete _root; - _root = 0; + if (_root) + _root->clear(); } void NestedListModel::remove(int index) @@ -1067,8 +1067,10 @@ void NestedListModel::remove(int index) bool NestedListModel::insert(int index, const QScriptValue& valuemap) { - if (!_root) + if (!_root) { _root = new ModelNode; + m_ownsRoot = true; + } ModelNode *mn = new ModelNode; mn->setObjectValue(valuemap); @@ -1099,8 +1101,10 @@ void NestedListModel::move(int from, int to, int n) bool NestedListModel::append(const QScriptValue& valuemap) { - if (!_root) + if (!_root) { _root = new ModelNode; + m_ownsRoot = true; + } ModelNode *mn = new ModelNode; mn->setObjectValue(valuemap); _root->values << qVariantFromValue(mn); diff --git a/src/declarative/util/qdeclarativelistmodel_p_p.h b/src/declarative/util/qdeclarativelistmodel_p_p.h index 532eefa..c41f016 100644 --- a/src/declarative/util/qdeclarativelistmodel_p_p.h +++ b/src/declarative/util/qdeclarativelistmodel_p_p.h @@ -130,6 +130,7 @@ public: void checkRoles() const; ModelNode *_root; + bool m_ownsRoot; QDeclarativeListModel *m_listModel; private: @@ -157,6 +158,18 @@ struct ModelNode QList<QVariant> values; QHash<QString, ModelNode *> properties; + void clear() { + ModelNode *node; + for (int ii = 0; ii < values.count(); ++ii) { + node = qvariant_cast<ModelNode *>(values.at(ii)); + if (node) { delete node; node = 0; } + } + values.clear(); + + qDeleteAll(properties.values()); + properties.clear(); + } + QDeclarativeListModel *model(const NestedListModel *model) { if (!modelCache) { modelCache = new QDeclarativeListModel; diff --git a/tests/auto/declarative/qdeclarativelistmodel/tst_qdeclarativelistmodel.cpp b/tests/auto/declarative/qdeclarativelistmodel/tst_qdeclarativelistmodel.cpp index 858c26d..10805b4 100644 --- a/tests/auto/declarative/qdeclarativelistmodel/tst_qdeclarativelistmodel.cpp +++ b/tests/auto/declarative/qdeclarativelistmodel/tst_qdeclarativelistmodel.cpp @@ -271,6 +271,9 @@ void tst_qdeclarativelistmodel::dynamic_data() QTest::newRow("nested-insert") << "{append({'foo':123});insert(0,{'bars':[{'a':1},{'b':2},{'c':3}]});get(0).bars.get(0).a}" << 1 << ""; QTest::newRow("nested-set") << "{append({'foo':123});set(0,{'foo':[{'x':123}]});get(0).foo.get(0).x}" << 123 << ""; + QTest::newRow("nested-count") << "{append({'foo':123,'bars':[{'a':1},{'a':2},{'a':3}]}); get(0).bars.count}" << 3 << ""; + QTest::newRow("nested-clear") << "{append({'foo':123,'bars':[{'a':1},{'a':2},{'a':3}]}); get(0).bars.clear(); get(0).bars.count}" << 0 << ""; + // XXX //QTest::newRow("nested-setprop") << "{append({'foo':123});setProperty(0,'foo',[{'x':123}]);get(0).foo.get(0).x}" << 123 << ""; } @@ -344,9 +347,7 @@ void tst_qdeclarativelistmodel::dynamic_worker() waitForWorker(item); QDeclarativeExpression e(eng.rootContext(), &model, operations.last().toString()); - if (QByteArray(QTest::currentDataTag()).startsWith("nested")) - QVERIFY(e.evaluate().toInt() != result); - else + if (!QByteArray(QTest::currentDataTag()).startsWith("nested")) QCOMPARE(e.evaluate().toInt(), result); } -- cgit v0.12 From e8d3e8e0b93271bb41fcdc264fc10ec59be5aa20 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Wed, 11 Aug 2010 13:58:08 +1000 Subject: Compile on Symbian Task-number: QTBUG-12771 --- src/declarative/util/qdeclarativelistmodel.cpp | 12 +++++++++--- src/declarative/util/qdeclarativelistmodel_p_p.h | 12 +----------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp index b0d47a9..20fe3a9 100644 --- a/src/declarative/util/qdeclarativelistmodel.cpp +++ b/src/declarative/util/qdeclarativelistmodel.cpp @@ -1209,16 +1209,22 @@ ModelNode::ModelNode() ModelNode::~ModelNode() { - qDeleteAll(properties.values()); + clear(); + if (modelCache) { modelCache->m_nested->_root = 0/* ==this */; delete modelCache; modelCache = 0; } + if (objectCache) { delete objectCache; objectCache = 0; } +} +void ModelNode::clear() +{ ModelNode *node; for (int ii = 0; ii < values.count(); ++ii) { node = qvariant_cast<ModelNode *>(values.at(ii)); if (node) { delete node; node = 0; } } + values.clear(); - if (modelCache) { modelCache->m_nested->_root = 0/* ==this */; delete modelCache; modelCache = 0; } - if (objectCache) { delete objectCache; objectCache = 0; } + qDeleteAll(properties.values()); + properties.clear(); } void ModelNode::setObjectValue(const QScriptValue& valuemap) { diff --git a/src/declarative/util/qdeclarativelistmodel_p_p.h b/src/declarative/util/qdeclarativelistmodel_p_p.h index c41f016..8231414 100644 --- a/src/declarative/util/qdeclarativelistmodel_p_p.h +++ b/src/declarative/util/qdeclarativelistmodel_p_p.h @@ -158,17 +158,7 @@ struct ModelNode QList<QVariant> values; QHash<QString, ModelNode *> properties; - void clear() { - ModelNode *node; - for (int ii = 0; ii < values.count(); ++ii) { - node = qvariant_cast<ModelNode *>(values.at(ii)); - if (node) { delete node; node = 0; } - } - values.clear(); - - qDeleteAll(properties.values()); - properties.clear(); - } + void clear(); QDeclarativeListModel *model(const NestedListModel *model) { if (!modelCache) { -- cgit v0.12 From 0d4d065cc9757159c5b6fa817892f5707bc1ecae Mon Sep 17 00:00:00 2001 From: Alex <qt-info@nokia.com> Date: Wed, 11 Aug 2010 14:32:51 +1000 Subject: Don't build bearercloud example if Qt was build w/o SVG support Task-number: QTBUG-12791 Reviewed-by: David Laing --- examples/network/network.pro | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/network/network.pro b/examples/network/network.pro index 16c4087..458561a 100644 --- a/examples/network/network.pro +++ b/examples/network/network.pro @@ -16,9 +16,12 @@ SUBDIRS = \ threadedfortuneserver \ googlesuggest \ torrent \ - bearercloud \ bearermonitor + contains(QT_CONFIG, svg) { + SUBDIRS += bearercloud + } + # no QProcess !vxworks:!qnx:SUBDIRS += network-chat -- cgit v0.12 From 0c1d29300c7248ead3392bb385ceae6889dc2834 Mon Sep 17 00:00:00 2001 From: Martin Jones <martin.jones@nokia.com> Date: Wed, 11 Aug 2010 15:06:56 +1000 Subject: Fix cppextension examples. Print a useful message on error. Specify the QML url correctly. --- examples/declarative/cppextensions/referenceexamples/adding/main.cpp | 4 ++-- .../declarative/cppextensions/referenceexamples/attached/main.cpp | 4 ++-- examples/declarative/cppextensions/referenceexamples/binding/main.cpp | 4 ++-- .../declarative/cppextensions/referenceexamples/coercion/main.cpp | 4 ++-- examples/declarative/cppextensions/referenceexamples/default/main.cpp | 4 ++-- .../declarative/cppextensions/referenceexamples/extended/main.cpp | 4 ++-- examples/declarative/cppextensions/referenceexamples/grouped/main.cpp | 4 ++-- .../declarative/cppextensions/referenceexamples/properties/main.cpp | 4 ++-- examples/declarative/cppextensions/referenceexamples/signal/main.cpp | 4 ++-- .../declarative/cppextensions/referenceexamples/valuesource/main.cpp | 4 ++-- 10 files changed, 20 insertions(+), 20 deletions(-) diff --git a/examples/declarative/cppextensions/referenceexamples/adding/main.cpp b/examples/declarative/cppextensions/referenceexamples/adding/main.cpp index 391113c..19cf034 100644 --- a/examples/declarative/cppextensions/referenceexamples/adding/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/adding/main.cpp @@ -51,13 +51,13 @@ int main(int argc, char ** argv) //![0] QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); Person *person = qobject_cast<Person *>(component.create()); if (person) { qWarning() << "The person's name is" << person->name(); qWarning() << "They wear a" << person->shoeSize() << "sized shoe"; } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return 0; diff --git a/examples/declarative/cppextensions/referenceexamples/attached/main.cpp b/examples/declarative/cppextensions/referenceexamples/attached/main.cpp index 5a39a98..65cbc93 100644 --- a/examples/declarative/cppextensions/referenceexamples/attached/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/attached/main.cpp @@ -56,7 +56,7 @@ int main(int argc, char ** argv) qmlRegisterType<Girl>("People", 1,0, "Girl"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -83,7 +83,7 @@ int main(int argc, char ** argv) } } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return 0; diff --git a/examples/declarative/cppextensions/referenceexamples/binding/main.cpp b/examples/declarative/cppextensions/referenceexamples/binding/main.cpp index fe1bbc8..150f961 100644 --- a/examples/declarative/cppextensions/referenceexamples/binding/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/binding/main.cpp @@ -57,7 +57,7 @@ int main(int argc, char ** argv) qmlRegisterType<Girl>("People", 1,0, "Girl"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -85,7 +85,7 @@ int main(int argc, char ** argv) party->startParty(); } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return app.exec(); diff --git a/examples/declarative/cppextensions/referenceexamples/coercion/main.cpp b/examples/declarative/cppextensions/referenceexamples/coercion/main.cpp index 5c53368..5b16f99 100644 --- a/examples/declarative/cppextensions/referenceexamples/coercion/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/coercion/main.cpp @@ -56,7 +56,7 @@ int main(int argc, char ** argv) qmlRegisterType<Girl>("People", 1,0, "Girl"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -70,7 +70,7 @@ int main(int argc, char ** argv) for (int ii = 0; ii < party->guestCount(); ++ii) qWarning() << " " << party->guest(ii)->name(); } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return 0; diff --git a/examples/declarative/cppextensions/referenceexamples/default/main.cpp b/examples/declarative/cppextensions/referenceexamples/default/main.cpp index f611bc4..bfba642 100644 --- a/examples/declarative/cppextensions/referenceexamples/default/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/default/main.cpp @@ -54,7 +54,7 @@ int main(int argc, char ** argv) qmlRegisterType<Girl>("People", 1,0, "Girl"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -68,7 +68,7 @@ int main(int argc, char ** argv) for (int ii = 0; ii < party->guestCount(); ++ii) qWarning() << " " << party->guest(ii)->name(); } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return 0; diff --git a/examples/declarative/cppextensions/referenceexamples/extended/main.cpp b/examples/declarative/cppextensions/referenceexamples/extended/main.cpp index 65527c3..08c8440 100644 --- a/examples/declarative/cppextensions/referenceexamples/extended/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/extended/main.cpp @@ -51,14 +51,14 @@ int main(int argc, char ** argv) qmlRegisterExtendedType<QLineEdit, LineEditExtension>("People", 1,0, "QLineEdit"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); QLineEdit *edit = qobject_cast<QLineEdit *>(component.create()); if (edit) { edit->show(); return app.exec(); } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); return 0; } } diff --git a/examples/declarative/cppextensions/referenceexamples/grouped/main.cpp b/examples/declarative/cppextensions/referenceexamples/grouped/main.cpp index e56a14d..6f7f13f 100644 --- a/examples/declarative/cppextensions/referenceexamples/grouped/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/grouped/main.cpp @@ -55,7 +55,7 @@ int main(int argc, char ** argv) qmlRegisterType<Girl>("People", 1,0, "Girl"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -78,7 +78,7 @@ int main(int argc, char ** argv) qWarning() << bestShoe->name() << "is wearing the best shoes!"; } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return 0; diff --git a/examples/declarative/cppextensions/referenceexamples/properties/main.cpp b/examples/declarative/cppextensions/referenceexamples/properties/main.cpp index 80237ef..d974647 100644 --- a/examples/declarative/cppextensions/referenceexamples/properties/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/properties/main.cpp @@ -52,7 +52,7 @@ int main(int argc, char ** argv) qmlRegisterType<Person>("People", 1,0, "Person"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -61,7 +61,7 @@ int main(int argc, char ** argv) for (int ii = 0; ii < party->guestCount(); ++ii) qWarning() << " " << party->guest(ii)->name(); } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return 0; diff --git a/examples/declarative/cppextensions/referenceexamples/signal/main.cpp b/examples/declarative/cppextensions/referenceexamples/signal/main.cpp index 56c0809..ad87bee 100644 --- a/examples/declarative/cppextensions/referenceexamples/signal/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/signal/main.cpp @@ -56,7 +56,7 @@ int main(int argc, char ** argv) qmlRegisterType<Girl>("People", 1,0, "Girl"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -84,7 +84,7 @@ int main(int argc, char ** argv) party->startParty(); } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return 0; diff --git a/examples/declarative/cppextensions/referenceexamples/valuesource/main.cpp b/examples/declarative/cppextensions/referenceexamples/valuesource/main.cpp index 40dc3cb..aa77665 100644 --- a/examples/declarative/cppextensions/referenceexamples/valuesource/main.cpp +++ b/examples/declarative/cppextensions/referenceexamples/valuesource/main.cpp @@ -58,7 +58,7 @@ int main(int argc, char ** argv) qmlRegisterType<Girl>("People", 1,0, "Girl"); QDeclarativeEngine engine; - QDeclarativeComponent component(&engine, ":example.qml"); + QDeclarativeComponent component(&engine, QUrl("qrc:example.qml")); BirthdayParty *party = qobject_cast<BirthdayParty *>(component.create()); if (party && party->host()) { @@ -86,7 +86,7 @@ int main(int argc, char ** argv) party->startParty(); } else { - qWarning() << "An error occurred"; + qWarning() << component.errors(); } return app.exec(); -- cgit v0.12 From 83795c1348f879d6742b4ef20b2315e0055e45a6 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann <joerg.bornemann@nokia.com> Date: Tue, 10 Aug 2010 17:17:27 +0200 Subject: configure.exe: don't write the QT_NAMESPACE define to .qmake.cache Since 37fc9b6c3e10bb708d6c294ac37693b6df1d5351 we're already writing the QT_NAMESPACE variable to qconfig.pri. Feature file qt.prf adds the QT_NAMESPACE=MyNamespace define for us. Task-number: QTBUG-5221 Reviewed-by: ossi --- tools/configure/configureapp.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index e27e16d..a0ca33a 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -988,7 +988,6 @@ void Configure::parseCmdLine() ++i; if (i == argCount) break; - qmakeDefines += "QT_NAMESPACE="+configCmdLine.at(i); dictionary[ "QT_NAMESPACE" ] = configCmdLine.at(i); } else if (configCmdLine.at(i) == "-qtlibinfix") { ++i; -- cgit v0.12 From b1d5e111d8bb4dba3bd13f7af5ac2fb7c91db71e Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Date: Fri, 6 Aug 2010 18:16:18 +0200 Subject: add comment explaining why this file does magic instead of just voodoo Reviewed-by: joerg Reviewed-by: Simon Hausmann --- mkspecs/features/qt_config.prf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mkspecs/features/qt_config.prf b/mkspecs/features/qt_config.prf index 0a2d985..b6fba65 100644 --- a/mkspecs/features/qt_config.prf +++ b/mkspecs/features/qt_config.prf @@ -1,3 +1,6 @@ +# This file is loaded by the mkspecs, before .qmake.cache has been loaded. +# Consequently, we have to do some stunts to get values out of the cache. + exists($$_QMAKE_CACHE_):QMAKE_QT_CONFIG = $$fromfile($$_QMAKE_CACHE_, QMAKE_QT_CONFIG) isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) { !isEmpty(QT_BUILD_TREE):QMAKE_QT_CONFIG = $$QT_BUILD_TREE/mkspecs/qconfig.pri -- cgit v0.12 From bf992abf98056151def8ff0b853fce8f1924b02a Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Date: Fri, 6 Aug 2010 12:29:39 +0200 Subject: don't load modules from qt.prf they are already loaded in qconfig.pri, which is loaded from qt_config.prf, which is explicitly loaded by every qmake spec. Reviewed-by: Simon Hausmann Reviewed-by: joerg --- mkspecs/features/qt.prf | 3 --- 1 file changed, 3 deletions(-) diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf index aa0f06e..07c89dd 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -31,9 +31,6 @@ plugin { #Qt plugins } } -#handle modules -for(mod,$$list($$files($$[QMAKE_MKSPECS]/modules/qt_*.pri))):include($$mod) - #handle includes INCLUDEPATH = $$QMAKE_INCDIR_QT $$INCLUDEPATH #prepending prevents us from picking up "stale" includes win32:INCLUDEPATH += $$QMAKE_INCDIR_QT/ActiveQt -- cgit v0.12 From 199b7ccb2a82e6a87808c3873c158ca38120dfdf Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Date: Fri, 6 Aug 2010 18:17:22 +0200 Subject: fix loading of module configs do it in qt_config.prf instead of in the autogenerated qconfig.pri files. this is waaaay more elegant, and allows us to easily use the magic in that file which avoids loading qt configuration from the qt install dir while building qt itself. Reviewed-by: joerg Reviewed-by: Simon Hausmann Task-number: QTBUG-12698 --- configure | 3 --- configure.exe | Bin 1309696 -> 1320448 bytes mkspecs/features/qt_config.prf | 1 + tools/configure/configureapp.cpp | 2 -- 4 files changed, 1 insertion(+), 5 deletions(-) diff --git a/configure b/configure index 25f1ef5..35fe2eb 100755 --- a/configure +++ b/configure @@ -7886,9 +7886,6 @@ QT_LIBINFIX = $QT_LIBINFIX QT_NAMESPACE = $QT_NAMESPACE QT_NAMESPACE_MAC_CRC = $QT_NAMESPACE_MAC_CRC -#modules -for(mod,\$\$list(\$\$files(\$\$[QMAKE_MKSPECS]/modules/qt_*.pri))):include(\$\$mod) - EOF if [ "$CFG_RPATH" = "yes" ]; then echo "QMAKE_RPATHDIR += \"$QT_INSTALL_LIBS\"" >> "$QTCONFIG.tmp" diff --git a/configure.exe b/configure.exe index 220e605..c5bff85 100755 Binary files a/configure.exe and b/configure.exe differ diff --git a/mkspecs/features/qt_config.prf b/mkspecs/features/qt_config.prf index b6fba65..19e01a1 100644 --- a/mkspecs/features/qt_config.prf +++ b/mkspecs/features/qt_config.prf @@ -11,6 +11,7 @@ isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) { debug(1, "Cannot load qconfig.pri!") } else { debug(1, "Loaded .qconfig.pri from ($$QMAKE_QT_CONFIG)") + for(mod, $$list($$files($$dirname(QMAKE_QT_CONFIG)/modules/qt_*.pri))):include($$mod) } load(qt_functions) diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index a0ca33a..0c716d1 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -2944,8 +2944,6 @@ void Configure::generateCachefile() configStream << "#namespaces" << endl << "QT_NAMESPACE = " << dictionary["QT_NAMESPACE"] << endl; } - configStream << "#modules" << endl << "for(mod,$$list($$files($$[QMAKE_MKSPECS]/modules/qt_*.pri))):include($$mod)" << endl; - configStream.flush(); configFile.close(); } -- cgit v0.12 From ebdc597eea6e44b66d6c98d252531af5d0da04f8 Mon Sep 17 00:00:00 2001 From: Henrik Hartz <henrik.hartz@nokia.com> Date: Wed, 11 Aug 2010 10:01:59 +0200 Subject: Remember to reset clipping when overriding paint in QDeclarativeItem --- src/declarative/graphicsitems/qdeclarativeitem.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp index 9d782b9..17c094c 100644 --- a/src/declarative/graphicsitems/qdeclarativeitem.cpp +++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp @@ -2500,7 +2500,9 @@ QDeclarativeListProperty<QDeclarativeTransition> QDeclarativeItemPrivate::transi This property holds whether clipping is enabled. if clipping is enabled, an item will clip its own painting, as well - as the painting of its children, to its bounding rectangle. + as the painting of its children, to its bounding rectangle. If you set + clipping during an item's paint operation, remember to re-set it to + prevent clipping the rest of your scene. Non-rectangular clipping regions are not supported for performance reasons. */ -- cgit v0.12 From bb696453f6f87cad58982af3455335478fedb8cc Mon Sep 17 00:00:00 2001 From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> Date: Wed, 11 Aug 2010 11:49:35 +0200 Subject: Disable minRightBearing optimization in QTextLayout on Mac Neither of the Mac font engines have implemented minimum right bearing, which will cause them to return 0 for the minimum value. This will cause the right bearing to never be calculated prior to breaking and thus never be a part of the breaking width. Since actually implementing the functions is too time consuming for right now, we will disable the optimization for the time being. Reviewed-by: Olivier --- src/gui/text/qtextlayout.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp index da43913..7d5fa43 100644 --- a/src/gui/text/qtextlayout.cpp +++ b/src/gui/text/qtextlayout.cpp @@ -1952,7 +1952,9 @@ void QTextLine::layout_helper(int maxGlyphs) // expand the text beyond the edge. if (sb_or_ws|breakany) { QFixed rightBearing = lbh.rightBearing; // store previous right bearing +#if !defined(Q_WS_MAC) if (lbh.calculateNewWidth(line) - lbh.minimumRightBearing > line.width) +#endif lbh.adjustRightBearing(); if (lbh.checkFullOtherwiseExtend(line)) { // we are too wide, fix right bearing -- cgit v0.12 From 98b7e8ac793d95a6a8350c7fc25faebd6f44cd21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan-Arve=20S=C3=A6ther?= <jan-arve.saether@nokia.com> Date: Wed, 11 Aug 2010 09:28:32 +0200 Subject: Layout items had the wrong size if the layout was resized to maximum. The problem was that if targetSize was the layouts maximum size, then sumAvailable could be reduced to exactly 0 in the "while (keepGoing)" loop. That would mean that we would not enter the block that actually copied the new sizes from the temporary "newSizes" array to the output "sizes" array due to the "if (sumAvailable > 0)" condition. Task-number: none, discovered while fixing QT-3570 Reviewed-by: Frederik Gladhorn --- src/gui/graphicsview/qgridlayoutengine.cpp | 15 +++++++------- .../tst_qgraphicsgridlayout.cpp | 24 +++++++++++----------- 2 files changed, 20 insertions(+), 19 deletions(-) diff --git a/src/gui/graphicsview/qgridlayoutengine.cpp b/src/gui/graphicsview/qgridlayoutengine.cpp index a084647..4fba5ff 100644 --- a/src/gui/graphicsview/qgridlayoutengine.cpp +++ b/src/gui/graphicsview/qgridlayoutengine.cpp @@ -250,6 +250,7 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz sumAvailable = targetSize - totalBox.q_preferredSize; if (sumAvailable > 0.0) { + qreal sumCurrentAvailable = sumAvailable; bool somethingHasAMaximumSize = false; qreal sumPreferredSizes = 0.0; @@ -308,12 +309,12 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz qreal ultimateFactor = (stretch * ultimateSumPreferredSizes / sumStretches) - (box.q_preferredSize); - qreal transitionalFactor = sumAvailable + qreal transitionalFactor = sumCurrentAvailable * (ultimatePreferredSize - box.q_preferredSize) / (ultimateSumPreferredSizes - sumPreferredSizes); - qreal alpha = qMin(sumAvailable, + qreal alpha = qMin(sumCurrentAvailable, ultimateSumPreferredSizes - sumPreferredSizes); qreal beta = ultimateSumPreferredSizes - sumPreferredSizes; @@ -321,7 +322,7 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz + ((beta - alpha) * transitionalFactor)) / beta; } sumFactors += factors[i]; - if (desired < sumAvailable) + if (desired < sumCurrentAvailable) somethingHasAMaximumSize = true; newSizes[i] = -1.0; @@ -337,12 +338,12 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz continue; const QGridLayoutBox &box = boxes.at(start + i); - qreal avail = sumAvailable * factors[i] / sumFactors; + qreal avail = sumCurrentAvailable * factors[i] / sumFactors; if (sizes[i] + avail >= box.q_maximumSize) { newSizes[i] = box.q_maximumSize; - sumAvailable -= box.q_maximumSize - sizes[i]; + sumCurrentAvailable -= box.q_maximumSize - sizes[i]; sumFactors -= factors[i]; - keepGoing = (sumAvailable > 0.0); + keepGoing = (sumCurrentAvailable > 0.0); if (!keepGoing) break; } @@ -352,7 +353,7 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz for (int i = 0; i < n; ++i) { if (newSizes[i] < 0.0) { qreal delta = (sumFactors == 0.0) ? 0.0 - : sumAvailable * factors[i] / sumFactors; + : sumCurrentAvailable * factors[i] / sumFactors; newSizes[i] = sizes[i] + delta; } } diff --git a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp index d1d6860..5b03767 100644 --- a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp +++ b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp @@ -485,12 +485,12 @@ void tst_QGraphicsGridLayout::alignment() widget->resize(widget->effectiveSizeHint(Qt::MaximumSize)); QApplication::processEvents(); - QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 50, 25)); - QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(0, 25, 50, 25)); - QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(125, 0, 50, 25)); - QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(125, 25, 50, 25)); - QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(250, 0, 50, 25)); - QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(250, 25, 50, 25)); + QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 50, 50)); + QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(0, 50, 50, 50)); + QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(125, 0, 50, 50)); + QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(125, 50, 50, 50)); + QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(250, 0, 50, 50)); + QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(250, 50, 50, 50)); delete widget; } @@ -544,12 +544,12 @@ void tst_QGraphicsGridLayout::columnAlignment() | HCenter | Right | Left | +---------------------------------+ */ - QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 50, 25)); - QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(25, 26, 50, 25)); // item is king - QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(126, 0, 50, 25)); - QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(151, 26, 50, 25)); // item is king - QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(252, 0, 50, 25)); - QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(202, 26, 50, 25)); // item is king + QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 50, 50)); + QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(25, 51, 50, 50)); // item is king + QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(126, 0, 50, 50)); + QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(151, 51, 50, 50)); // item is king + QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(252, 0, 50, 50)); + QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(202, 51, 50, 50)); // item is king delete widget; } -- cgit v0.12 From 0cafff970c52f982d5acec368b5b5fdab319688d Mon Sep 17 00:00:00 2001 From: Thomas Zander <t.zander@nokia.com> Date: Wed, 11 Aug 2010 13:46:38 +0200 Subject: Fix typos in docs Reviewed-by: David Boddie --- src/declarative/graphicsitems/qdeclarativerepeater.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/declarative/graphicsitems/qdeclarativerepeater.cpp b/src/declarative/graphicsitems/qdeclarativerepeater.cpp index 2b268fb..68e7e9a 100644 --- a/src/declarative/graphicsitems/qdeclarativerepeater.cpp +++ b/src/declarative/graphicsitems/qdeclarativerepeater.cpp @@ -133,13 +133,13 @@ QDeclarativeRepeaterPrivate::~QDeclarativeRepeaterPrivate() create items as they are required. Also, note that Repeater is \l {Item}-based, and can only repeat \l {Item}-derived objects. - For example, it cannot be used to repeat QtObjects: + For example, it cannot be used to repeat QObjects: \badcode Item { - //XXX does not work! Can't repeat QtObject as it doesn't derive from Item. + //XXX does not work! Can't repeat QObject as it doesn't derive from Item. Repeater { model: 10 - QtObject {} + QObject {} } } \endcode -- cgit v0.12