summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp20
-rw-r--r--examples/network/ftp/ftp.pro1
-rw-r--r--src/corelib/tools/qscopedpointer.cpp17
-rw-r--r--src/gui/inputmethod/qcoefepinputcontext_s60.cpp2
-rw-r--r--tests/auto/network-settings.h6
5 files changed, 40 insertions, 6 deletions
diff --git a/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp b/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp
index 05377dd..7de42b7 100644
--- a/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp
+++ b/doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp
@@ -3,7 +3,6 @@ void myFunction(bool useSubClass)
{
MyClass *p = useSubClass ? new MyClass() : new MySubClass;
QIODevice *device = handsOverOwnership();
- QIODevi
if (m_value > 3) {
delete p;
@@ -62,3 +61,22 @@ if (scopedPointer) {
...
}
//! [3]
+
+//! [4]
+class MyPrivateClass; // forward declare MyPrivateClass
+
+class MyClass
+{
+private:
+ QScopedPointer<MyPrivateClass> privatePtr; // QScopedPointer to forward declared class
+
+public:
+ MyClass(); // OK
+ inline ~MyClass() {} // VIOLATION - Destructor must not be inline
+
+private:
+ Q_DISABLE_COPY(MyClass) // OK - copy constructor and assignment operators
+ // are now disabled, so the compiler won't implicitely
+ // generate them.
+};
+//! [4]
diff --git a/examples/network/ftp/ftp.pro b/examples/network/ftp/ftp.pro
index 0fb9934..634c43c 100644
--- a/examples/network/ftp/ftp.pro
+++ b/examples/network/ftp/ftp.pro
@@ -13,6 +13,7 @@ INSTALLS += target sources
include($$QT_SOURCE_TREE/examples/examplebase.pri)
symbian {
+ INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE
TARGET.CAPABILITY="NetworkServices"
TARGET.UID3 = 0xA000A648
LIBS+=-lesock -lconnmon # For IAP selection
diff --git a/src/corelib/tools/qscopedpointer.cpp b/src/corelib/tools/qscopedpointer.cpp
index 6a1ffb6..912edb6 100644
--- a/src/corelib/tools/qscopedpointer.cpp
+++ b/src/corelib/tools/qscopedpointer.cpp
@@ -80,6 +80,21 @@
\note QScopedPointer does not work with arrays.
+ \section1 Forward Declared Pointers
+
+ Classes that are forward declared can be used within QScopedPointer, as
+ long as the destructor of the forward declared class is available whenever
+ a QScopedPointer needs to clean up.
+
+ Concretely, this means that all classes containing a QScopedPointer that
+ points to a forward declared class must have non-inline constructors,
+ destructors and assignment operators:
+
+ \snippet doc/src/snippets/code/src_corelib_tools_qscopedpointer.cpp 4
+
+ Otherwise, the compiler output a warning about not being able to destruct
+ \c MyPrivateClass.
+
\sa QSharedPointer
*/
@@ -142,7 +157,7 @@
/*!
- \fn bool QScopedPointer::operator!=(const QScopedPointer<T> *other) const
+ \fn bool QScopedPointer::operator!=(const QScopedPointer<T> &other) const
Inequality operator. Returns true if the scoped pointer \a other
is not pointing to the same object as this pointer, otherwise returns false.
diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
index 7d79422..9e70cff 100644
--- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
+++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
@@ -74,8 +74,6 @@ QCoeFepInputContext::QCoeFepInputContext(QObject *parent)
m_fepState->SetFlags(EAknEditorFlagDefault);
m_fepState->SetDefaultInputMode( EAknEditorTextInputMode );
m_fepState->SetPermittedInputModes( EAknEditorAllInputModes );
- m_fepState->SetLocalLanguage(ELangEnglish);
- m_fepState->SetDefaultLanguage(ELangEnglish);
m_fepState->SetDefaultCase( EAknEditorLowerCase );
m_fepState->SetPermittedCases( EAknEditorLowerCase|EAknEditorUpperCase );
m_fepState->SetSpecialCharacterTableResourceId( 0 );
diff --git a/tests/auto/network-settings.h b/tests/auto/network-settings.h
index 0924c57..01a732c 100644
--- a/tests/auto/network-settings.h
+++ b/tests/auto/network-settings.h
@@ -50,7 +50,8 @@
#include <QSharedPointer>
#include <QHash>
#endif
-#if defined(Q_OS_SYMBIAN) && defined(Q_CC_NOKIAX86)
+#if defined(Q_OS_SYMBIAN)
+#if defined(Q_CC_NOKIAX86)
// In emulator we use WINSOCK connectivity by default. Unfortunately winsock
// does not work very well with UDP sockets. This defines skips some test
// cases which have known problems.
@@ -59,6 +60,7 @@
// network tests. WINPCAP connectivity uses Symbian OS IP stack,
// correspondingly as HW does. When using WINPCAP disable this define
//#define SYMBIAN_WINSOCK_CONNECTIVITY
+#endif // Q_CC_NOKIAX86
class QtNetworkSettingsRecord {
public:
@@ -80,7 +82,7 @@ private:
QString strRecordValue;
};
-#endif
+#endif // Q_OS_SYMBIAN
class QtNetworkSettings
{