From 12ebf6c45428e303e0f238d59f144f3b4816ec3b Mon Sep 17 00:00:00 2001 From: David Boddie Date: Tue, 17 Aug 2010 15:15:41 +0200 Subject: Doc: Added a small note about using .pro files in SUBDIRS. Details: Found while trying to fix example .pro files. Reviewed-by: Trust Me --- doc/src/development/qmake-manual.qdoc | 109 +++++++++++++++++----------------- 1 file changed, 55 insertions(+), 54 deletions(-) diff --git a/doc/src/development/qmake-manual.qdoc b/doc/src/development/qmake-manual.qdoc index baa30fc..44658bc 100644 --- a/doc/src/development/qmake-manual.qdoc +++ b/doc/src/development/qmake-manual.qdoc @@ -1079,27 +1079,27 @@ \target BLD_INF_RULES \section1 BLD_INF_RULES - + \e {This is only used on the Symbian platform.} - + Generic \c bld.inf file content can be specified with \c BLD_INF_RULES variables. The section of \c bld.inf file where each rule goes is appended to \c BLD_INF_RULES with a dot. - + For example: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 146 - + This will add the specified statements to the \c prj_exports section of the generated \c bld.inf file. - + It is also possible to add multiple rows in a single block. Each double quoted string will be placed on a new row in the generated \c bld.inf file. - + For example: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 143 - + Any rules you define will be added after automatically generated rules in each section. @@ -1274,7 +1274,7 @@ the contents of the \l{#QMAKE_BUNDLE_DATA}{QMAKE_BUNDLE_DATA} variable. These options only have an effect on the Symbian platform: - + \table 95% \header \o Option \o Description \row \o stdbinary \o Builds an Open C binary (i.e. STDDLL, STDEXE, or STDLIB, @@ -1286,7 +1286,7 @@ Note that this only affects automatically generated bld.inf content; the content added via \c BLD_INF_RULES variable is not affected. \endtable - + These options have an effect on Linux/Unix platforms: \table 95% @@ -1353,7 +1353,7 @@ The default deployment target path for Windows CE is \c{%CSIDL_PROGRAM_FILES%\target}, which usually gets expanded to \c{\Program Files\target}. For the Symbian platform, the default target -is the application private directory on the drive it is installed to. + is the application private directory on the drive it is installed to. It is also possible to specify multiple \c sources to be deployed on target \c paths. In addition, different variables can be used for @@ -1366,7 +1366,7 @@ is the application private directory on the drive it is installed to. \note In Windows CE all linked Qt libraries will be deployed to the path specified by \c{myFiles.path}. On Symbian platform all libraries and executables will always be deployed to the \\sys\\bin of the installation drive. - + Since the Symbian platform build system automatically moves binaries to certain directories under the epoc32 directory, custom plugins, executables or dynamically loadable libraries need special handling. When deploying @@ -1389,7 +1389,7 @@ is the application private directory on the drive it is installed to. \c pkg_postrules or \c pkg_prerules are not parsed by qmake, so they should be in a format understood by Symbian package generation tools. Please consult the Symbian platform documentation for correct syntax. - + For example, to deploy DLL and add a new dependency: \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 140 @@ -1397,7 +1397,7 @@ is the application private directory on the drive it is installed to. Please note that \c pkg_prerules can also replace default statements in pkg file. If no pkg_prerules is defined, qmake makes sure that PKG file syntax is correct and it contains all mandatory statements such as: - + \list \o languages, for example \BR &EN,FR @@ -1407,7 +1407,7 @@ is the application private directory on the drive it is installed to. %{"Vendor-EN", ..., "Vendor-FR"} :"Unique vendor name" \endlist - + If you decide to override any of these statements, you need to pay attention that also other statements stay valid. For example if you override languages statement, you must override also package-header @@ -1419,7 +1419,7 @@ is the application private directory on the drive it is installed to. - e.g. if a specific device is required to run the application or more languages need to be supported by the package file. The supported \c default_deployment rules that can be disabled are: - + \list \o pkg_depends_qt \o pkg_depends_webkit @@ -1427,9 +1427,9 @@ is the application private directory on the drive it is installed to. \endlist For example: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 141 - + On the Symbian platform, you can use \c{DEPLOYMENT.installer_header} variable to generate smart installer wrapper for your application. If you specify just UID of the installer package as the value, then @@ -1454,10 +1454,10 @@ is the application private directory on the drive it is installed to. \note In Windows CE, No plugins will be deployed automatically. If the application depends on plugins, these plugins have to be specified manually. - + \note On the Symbian platform, all plugins supported by this variable -will be deployed by default with Qt libraries, so generally using this -variable is not needed. + will be deployed by default with Qt libraries, so generally using this + variable is not needed. For example: @@ -1561,14 +1561,14 @@ variable is not needed. \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 34 See also \l{#SOURCES}{SOURCES}. - + \target ICON \section1 ICON - + This variable is used only in MAC and the Symbian platform to set the application icon. Please see \l{Setting the Application Icon}{the application icon documentation} for more information. - + \target INCLUDEPATH \section1 INCLUDEPATH @@ -1657,7 +1657,7 @@ variable is not needed. file name suffix. \bold{Note:} On the Symbian platform, the build system makes a -distinction between shared and + distinction between shared and static libraries. In most cases, qmake will figure out which library you are refering to, but in some cases you may have to specify it explicitly to get the expected behavior. This typically happens if you are building a @@ -1702,28 +1702,28 @@ distinction between shared and \target MMP_RULES \section1 MMP_RULES - + \e {This is only used on the Symbian platform.} - + Generic MMP file content can be specified with this variable. - + For example: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 137 - + This will add the specified statement to the end of the generated MMP file. - + It is also possible to add multiple rows in a single block. Each double quoted string will be placed on a new row in the generated MMP file. - + For example: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 138 - + If you need to include a hash (\c{#}) character inside the \c MMP_RULES statement, it can be done with the variable \c LITERAL_HASH as follows: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 139 There is also a convenience function for adding conditional rules @@ -2031,8 +2031,8 @@ distinction between shared and respectively. \bold{Note:} On the Symbian platform, this variable can be used to pass -architecture specific options to each compiler in the Symbian build system. -For example: + architecture specific options to each compiler in the Symbian build system. + For example: \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 131 @@ -2374,10 +2374,10 @@ For example: \section1 QMAKE_LFLAGS_RPATH \e {This is used on Unix platforms only.} - + Library paths in this definition are added to the executable at link time so that the added paths will be preferentially searched at runtime. - + \section1 QMAKE_LFLAGS_QT_DLL This variable contains link flags when building programs that @@ -2716,7 +2716,7 @@ For example: \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 45 \section1 QMAKE_RPATH - + \e {This is used on Unix platforms only.} Is equivalent to \l QMAKE_LFLAGS_RPATH. @@ -2870,30 +2870,30 @@ For example: This variable contains the name of the resource file for the application. The value of this variable is typically handled by \c qmake or \l{#QMAKESPEC}{qmake.conf} and rarely needs to be modified. - + \target RSS_RULES \section1 RSS_RULES - + \e {This is only used on the Symbian platform.} - + Generic RSS file content can be specified with this variable. The syntax is similar to \c MMP_RULES and \c BLD_INF_RULES. - + For example: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 144 - + This will add the specified statement to the end of the \c APP_REGISTRATION_INFO resource struct in the generated registration resource file. As an impact of this statement, the application will not be visible in application shell. - + It is also possible to add multiple rows in a single block. Each double quoted string will be placed on a new row in the registration resource file. - + For example: - + \snippet doc/src/snippets/code/doc_src_qmake-manual.qdoc 145 - + This example will install the application to MyFolder in the Symbian platform application shell. In addition it will make the application to be launched in background. @@ -2933,7 +2933,7 @@ For example: \section1 S60_VERSION \e {This is only used on the Symbian platform.} - + Contains the version number of the underlying S60 SDK; e.g. "5.0". \target SIGNATURE_FILE @@ -2969,8 +2969,9 @@ For example: \section1 SUBDIRS This variable, when used with the \l{#TEMPLATE}{\c subdirs template} - contains the names of all subdirectories that contain parts of the project - that need be built. Each subdirectory must contain its own project file. + contains the names of all subdirectories or project files that contain + parts of the project that need be built. Each subdirectory specified + using this variable must contain its own project file. For example: -- cgit v0.12 From cd1b5d933575fb801ad3014f3d7fd7c268a362d1 Mon Sep 17 00:00:00 2001 From: David Boddie Date: Tue, 17 Aug 2010 15:49:01 +0200 Subject: Doc: Reworded a brief description for clarity. Reviewed-by: Trust Me --- src/gui/graphicsview/qgraphicsitem.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp index 0b3b164..882def7 100644 --- a/src/gui/graphicsview/qgraphicsitem.cpp +++ b/src/gui/graphicsview/qgraphicsitem.cpp @@ -10918,8 +10918,8 @@ QVariant QGraphicsSimpleTextItem::extension(const QVariant &variant) const /*! \class QGraphicsItemGroup - \brief The QGraphicsItemGroup class provides treating a group of items as - one. + \brief The QGraphicsItemGroup class provides a container that treats + a group of items as a single item. \since 4.2 \ingroup graphicsview-api -- cgit v0.12 From 5d4b7c1d3f7e8fb1ef84ffa102123ca267cb7eef Mon Sep 17 00:00:00 2001 From: Petri Kiiskinen Date: Wed, 4 Aug 2010 11:02:41 +0300 Subject: resolving method name does not work for Symbian so need to use ordinal instead Merge-request: 768 Signed-off-by: axis --- src/gui/kernel/qapplication.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gui/kernel/qapplication.cpp b/src/gui/kernel/qapplication.cpp index 3d3a749..82dd83a 100644 --- a/src/gui/kernel/qapplication.cpp +++ b/src/gui/kernel/qapplication.cpp @@ -809,6 +809,12 @@ void QApplicationPrivate::construct( if (testLib.load()) { typedef void (*TasInitialize)(void); TasInitialize initFunction = (TasInitialize)testLib.resolve("qt_testability_init"); +#ifdef Q_OS_SYMBIAN + // resolving method by name does not work on Symbian OS so need to use ordinal + if(!initFunction) { + initFunction = (TasInitialize)testLib.resolve("1"); + } +#endif if (initFunction) { initFunction(); } else { -- cgit v0.12 From 5360be909d8d5e8b3a3b6e391e80b86027d7f2a2 Mon Sep 17 00:00:00 2001 From: Thomas Zander Date: Tue, 7 Sep 2010 10:49:28 +0200 Subject: Make compile on gcce instead of friend use static to avoid gcce saying a formerly extern declaration turned into a static declaration. Reviewed-by: axis --- src/gui/image/qpixmap_s60.cpp | 11 +++++++---- src/gui/image/qpixmap_s60_p.h | 6 +++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/gui/image/qpixmap_s60.cpp b/src/gui/image/qpixmap_s60.cpp index dbdf0bc..68179d7 100644 --- a/src/gui/image/qpixmap_s60.cpp +++ b/src/gui/image/qpixmap_s60.cpp @@ -66,9 +66,10 @@ const uchar qt_pixmap_bit_mask[] = { 0x01, 0x02, 0x04, 0x08, static bool cleanup_function_registered = false; static QS60PixmapData *firstPixmap = 0; -static void qt_symbian_register_pixmap(QS60PixmapData *pd) +// static +void QS60PixmapData::qt_symbian_register_pixmap(QS60PixmapData *pd) { - if(!cleanup_function_registered) { + if (!cleanup_function_registered) { qAddPostRoutine(qt_symbian_release_pixmaps); cleanup_function_registered = true; } @@ -80,7 +81,8 @@ static void qt_symbian_register_pixmap(QS60PixmapData *pd) firstPixmap = pd; } -static void qt_symbian_unregister_pixmap(QS60PixmapData *pd) +// static +void QS60PixmapData::qt_symbian_unregister_pixmap(QS60PixmapData *pd) { if (pd->next) pd->next->prev = pd->prev; @@ -90,7 +92,8 @@ static void qt_symbian_unregister_pixmap(QS60PixmapData *pd) firstPixmap = pd->next; } -static void qt_symbian_release_pixmaps() +// static +void QS60PixmapData::qt_symbian_release_pixmaps() { // Scan all QS60PixmapData objects in the system and destroy them. QS60PixmapData *pd = firstPixmap; diff --git a/src/gui/image/qpixmap_s60_p.h b/src/gui/image/qpixmap_s60_p.h index a82f5c2..12885ec 100644 --- a/src/gui/image/qpixmap_s60_p.h +++ b/src/gui/image/qpixmap_s60_p.h @@ -128,9 +128,9 @@ private: QS60PixmapData *next; QS60PixmapData *prev; - friend void qt_symbian_register_pixmap(QS60PixmapData *pd); - friend void qt_symbian_unregister_pixmap(QS60PixmapData *pd); - friend void qt_symbian_release_pixmaps(); + static void qt_symbian_register_pixmap(QS60PixmapData *pd); + static void qt_symbian_unregister_pixmap(QS60PixmapData *pd); + static void qt_symbian_release_pixmaps(); friend class QPixmap; friend class QS60WindowSurface; -- cgit v0.12 From cd8118835421d30ef37a29df5c2286282fb2f8ed Mon Sep 17 00:00:00 2001 From: Thomas Zander Date: Tue, 7 Sep 2010 10:51:55 +0200 Subject: Remove unused variable Reviewed-by: axis --- src/gui/image/qpixmap_s60.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/gui/image/qpixmap_s60.cpp b/src/gui/image/qpixmap_s60.cpp index 68179d7..47249d9 100644 --- a/src/gui/image/qpixmap_s60.cpp +++ b/src/gui/image/qpixmap_s60.cpp @@ -831,7 +831,6 @@ void* QS60PixmapData::toNativeType(NativeType type) bool convertToArgb32 = false; bool needsCopy = false; - QSysInfo::SymbianVersion symbianVersion = QSysInfo::symbianVersion(); if (!(S60->supportsPremultipliedAlpha)) { // Convert argb32_premultiplied to argb32 since Symbian 9.2 does // not support premultipied format. -- cgit v0.12 From a93243ce81fdc71842bb133e7eadb9476e4648e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Trond=20Kjern=C3=A5sen?= Date: Tue, 7 Sep 2010 16:21:43 +0200 Subject: Always call QPainter::end() before using the object drawn to. This caused the background pixmap not to draw correctly on some systems. Reviewed-by: Samuel --- tests/arthur/common/paintcommands.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/arthur/common/paintcommands.cpp b/tests/arthur/common/paintcommands.cpp index 70d419e..c4f09a4 100644 --- a/tests/arthur/common/paintcommands.cpp +++ b/tests/arthur/common/paintcommands.cpp @@ -713,7 +713,7 @@ void PaintCommands::runCommands() QPainter pt(&pm); pt.fillRect(0, 0, 10, 10, QColor::fromRgba(0xffdfdfdf)); pt.fillRect(10, 10, 10, 10, QColor::fromRgba(0xffdfdfdf)); - + pt.end(); m_painter->drawTiledPixmap(0, 0, width, height, pm); } else { m_painter->fillRect(0, 0, width, height, Qt::white); -- cgit v0.12 From df362aff04da1e4b4305df36bd4cc5532449dee9 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 7 Sep 2010 16:29:14 +0200 Subject: uic: Improve messages. Fix some oversights in b21639304b108de0697553f062eb36ccde6a5bd5. --- src/tools/uic/cpp/cppwriteinitialization.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/tools/uic/cpp/cppwriteinitialization.cpp b/src/tools/uic/cpp/cppwriteinitialization.cpp index c62f3d9..b06eb7a 100644 --- a/src/tools/uic/cpp/cppwriteinitialization.cpp +++ b/src/tools/uic/cpp/cppwriteinitialization.cpp @@ -155,7 +155,7 @@ namespace { if (const DomResourceIcon *dri = p->elementIconSet()) { if (!isIconFormat44(dri)) { if (dri->text().isEmpty()) { - const QString msg = QString::fromUtf8("%1: An invalid icon property '%2' was encountered.").arg(fileName).arg(p->attributeName()); + const QString msg = QString::fromUtf8("%1: Warning: An invalid icon property '%2' was encountered.").arg(fileName).arg(p->attributeName()); qWarning("%s", qPrintable(msg)); return false; } @@ -165,7 +165,7 @@ namespace { case DomProperty::Pixmap: if (const DomResourcePixmap *drp = p->elementPixmap()) if (drp->text().isEmpty()) { - const QString msg = QString::fromUtf8("%1: An invalid pixmap property '%2' was encountered.").arg(fileName).arg(p->attributeName()); + const QString msg = QString::fromUtf8("%1: Warning: An invalid pixmap property '%2' was encountered.").arg(fileName).arg(p->attributeName()); qWarning("%s", qPrintable(msg)); return false; } @@ -539,12 +539,12 @@ void WriteInitialization::acceptUI(DomUI *node) const Buddy &b = m_buddies.at(i); if (!m_registeredWidgets.contains(b.objName)) { - fprintf(stderr, "%s: Warning: Buddy assignment: '%s' is not a valid widget\n", + fprintf(stderr, "%s: Warning: Buddy assignment: '%s' is not a valid widget.\n", qPrintable(m_option.messagePrefix()), b.objName.toLatin1().data()); continue; } else if (!m_registeredWidgets.contains(b.buddy)) { - fprintf(stderr, "%s: Warning: Buddy assignment: '%s' is not a valid widget\n", + fprintf(stderr, "%s: Warning: Buddy assignment: '%s' is not a valid widget.\n", qPrintable(m_option.messagePrefix()), b.buddy.toLatin1().data()); continue; @@ -871,7 +871,9 @@ void WriteInitialization::acceptWidget(DomWidget *node) const QString name = zOrder.at(i); if (!m_registeredWidgets.contains(name)) { - fprintf(stderr, "'%s' Z-order assignment: is not a valid widget\n", name.toLatin1().data()); + fprintf(stderr, "%s: Warning: Z-order assignment: '%s' is not a valid widget.\n", + qPrintable(m_option.messagePrefix()), + name.toLatin1().data()); continue; } @@ -1861,7 +1863,7 @@ void WriteInitialization::acceptTabStops(DomTabStops *tabStops) const QString name = l.at(i); if (!m_registeredWidgets.contains(name)) { - fprintf(stderr, "%s: Warning: Tab-stop assignment: '%s' is not a valid widget\n", + fprintf(stderr, "%s: Warning: Tab-stop assignment: '%s' is not a valid widget.\n", qPrintable(m_option.messagePrefix()), name.toLatin1().data()); continue; -- cgit v0.12