summaryrefslogtreecommitdiffstats
path: root/examples/ipc
diff options
context:
space:
mode:
authorTopi Reinio <topi.reinio@digia.com>2014-10-15 13:50:27 +0200
committerTopi Reiniƶ <topi.reinio@digia.com>2014-10-17 14:57:13 +0200
commitcf8f369f8575dcb9ca4d5116f3afc7cff4a080af (patch)
treea685f393b50786a892fcd3ad638b4c01e9002894 /examples/ipc
parent45485d9eb47d3129b8a74c2e9d854c07673161cd (diff)
Move Qt Core examples under a common subdirectory
Qt Core examples were scattered into several subdirectories under qtbase/examples. This caused an issue with the example manifest file generated by QDoc; it expects to find all examples under a common directory in order to produde correct paths to the example .pro files. Qt Creator will not find the examples without a valid manifest file. This change moves the examples and edits the documentation files accordingly. Task-number: QTBUG-41963 Change-Id: I51d86782e0ba21c5c9bae5f15401ec774abe5cf8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Diffstat (limited to 'examples/ipc')
-rw-r--r--examples/ipc/README5
-rw-r--r--examples/ipc/doc/images/localfortuneclient-example.pngbin8402 -> 0 bytes
-rw-r--r--examples/ipc/doc/images/localfortuneserver-example.pngbin5715 -> 0 bytes
-rw-r--r--examples/ipc/doc/images/sharedmemory-example_1.pngbin14926 -> 0 bytes
-rw-r--r--examples/ipc/doc/images/sharedmemory-example_2.pngbin21976 -> 0 bytes
-rw-r--r--examples/ipc/doc/src/localfortuneclient.qdoc40
-rw-r--r--examples/ipc/doc/src/localfortuneserver.qdoc39
-rw-r--r--examples/ipc/doc/src/sharedmemory.qdoc131
-rw-r--r--examples/ipc/ipc.pro6
-rw-r--r--examples/ipc/localfortuneclient/client.cpp153
-rw-r--r--examples/ipc/localfortuneclient/client.h82
-rw-r--r--examples/ipc/localfortuneclient/localfortuneclient.pro8
-rw-r--r--examples/ipc/localfortuneclient/main.cpp51
-rw-r--r--examples/ipc/localfortuneserver/localfortuneserver.pro8
-rw-r--r--examples/ipc/localfortuneserver/main.cpp55
-rw-r--r--examples/ipc/localfortuneserver/server.cpp111
-rw-r--r--examples/ipc/localfortuneserver/server.h69
-rw-r--r--examples/ipc/sharedmemory/dialog.cpp188
-rw-r--r--examples/ipc/sharedmemory/dialog.h70
-rw-r--r--examples/ipc/sharedmemory/dialog.ui47
-rw-r--r--examples/ipc/sharedmemory/image.pngbin10199 -> 0 bytes
-rw-r--r--examples/ipc/sharedmemory/main.cpp53
-rw-r--r--examples/ipc/sharedmemory/qt.pngbin2383 -> 0 bytes
-rw-r--r--examples/ipc/sharedmemory/sharedmemory.pro15
24 files changed, 0 insertions, 1131 deletions
diff --git a/examples/ipc/README b/examples/ipc/README
deleted file mode 100644
index 83a157a42e..0000000000
--- a/examples/ipc/README
+++ /dev/null
@@ -1,5 +0,0 @@
-These examples demonstrate IPC support in Qt.
-
-
-Documentation for these examples can be found via the Examples
-link in the main Qt documentation.
diff --git a/examples/ipc/doc/images/localfortuneclient-example.png b/examples/ipc/doc/images/localfortuneclient-example.png
deleted file mode 100644
index 614784bf0f..0000000000
--- a/examples/ipc/doc/images/localfortuneclient-example.png
+++ /dev/null
Binary files differ
diff --git a/examples/ipc/doc/images/localfortuneserver-example.png b/examples/ipc/doc/images/localfortuneserver-example.png
deleted file mode 100644
index 2f04c7528e..0000000000
--- a/examples/ipc/doc/images/localfortuneserver-example.png
+++ /dev/null
Binary files differ
diff --git a/examples/ipc/doc/images/sharedmemory-example_1.png b/examples/ipc/doc/images/sharedmemory-example_1.png
deleted file mode 100644
index 53244d3f52..0000000000
--- a/examples/ipc/doc/images/sharedmemory-example_1.png
+++ /dev/null
Binary files differ
diff --git a/examples/ipc/doc/images/sharedmemory-example_2.png b/examples/ipc/doc/images/sharedmemory-example_2.png
deleted file mode 100644
index fc71aed56e..0000000000
--- a/examples/ipc/doc/images/sharedmemory-example_2.png
+++ /dev/null
Binary files differ
diff --git a/examples/ipc/doc/src/localfortuneclient.qdoc b/examples/ipc/doc/src/localfortuneclient.qdoc
deleted file mode 100644
index a68f4bad0c..0000000000
--- a/examples/ipc/doc/src/localfortuneclient.qdoc
+++ /dev/null
@@ -1,40 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the documentation of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:FDL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Free Documentation License Usage
-** 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. Please review the following information to ensure
-** the GNU Free Documentation License version 1.3 requirements
-** will be met: http://www.gnu.org/copyleft/fdl.html.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-/*!
- \example localfortuneclient
- \title Local Fortune Client Example
- \ingroup examples-ipc
- \brief Demonstrates using QLocalSocket for a simple local service client.
-
- The Local Fortune Client example shows how to create a client for a simple
- local service using QLocalSocket. It is intended to be run alongside the
- \l{Local Fortune Server Example}.
-
- \image localfortuneclient-example.png Screenshot of the Local Fortune Client example
-
-*/
diff --git a/examples/ipc/doc/src/localfortuneserver.qdoc b/examples/ipc/doc/src/localfortuneserver.qdoc
deleted file mode 100644
index 13f7f3ca74..0000000000
--- a/examples/ipc/doc/src/localfortuneserver.qdoc
+++ /dev/null
@@ -1,39 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the documentation of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:FDL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Free Documentation License Usage
-** 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. Please review the following information to ensure
-** the GNU Free Documentation License version 1.3 requirements
-** will be met: http://www.gnu.org/copyleft/fdl.html.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-/*!
- \example localfortuneserver
- \title Local Fortune Server Example
- \ingroup examples-ipc
- \brief Demonstrates using QLocalServer and QLocalSocket for serving a simple local service.
-
- The Local Fortune Server example shows how to create a server for a simple
- local service. It is intended to be run alongside the
- \l{Local Fortune Client Example}
-
- \image localfortuneserver-example.png Screenshot of the Local Fortune Server example
- */
diff --git a/examples/ipc/doc/src/sharedmemory.qdoc b/examples/ipc/doc/src/sharedmemory.qdoc
deleted file mode 100644
index b9f0c86d44..0000000000
--- a/examples/ipc/doc/src/sharedmemory.qdoc
+++ /dev/null
@@ -1,131 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the documentation of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:FDL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Free Documentation License Usage
-** 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. Please review the following information to ensure
-** the GNU Free Documentation License version 1.3 requirements
-** will be met: http://www.gnu.org/copyleft/fdl.html.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-/*!
- \example sharedmemory
- \title Shared Memory Example
- \ingroup examples-ipc
- \brief Demonstrates doing inter-process communication using shared memory with
- the QSharedMemory class.
-
- The Shared Memory example shows how to use the QSharedMemory class
- to implement inter-process communication using shared memory. To
- build the example, run make. To run the example, start two instances
- of the executable. The main() function creates an \l {QApplication}
- {application} and an instance of our example's Dialog class. The
- dialog is displayed and then control is passed to the application in
- the standard way.
-
- \snippet sharedmemory/main.cpp 0
-
- Two instances of class Dialog appear.
-
- \image sharedmemory-example_1.png Screenshot of the Shared Memory example
-
- Class Dialog inherits QDialog. It encapsulates the user interface
- and an instance of QSharedMemory. It also has two public slots,
- loadFromFile() and loadFromMemory() that correspond to the two
- buttons on the dialog.
-
- \snippet sharedmemory/dialog.h 0
-
- The constructor builds the user interface widgets and connects the
- clicked() signal of each button to the corresponding slot function.
-
- \snippet sharedmemory/dialog.cpp 0
-
- Note that "QSharedMemoryExample" is passed to the \l {QSharedMemory}
- {QSharedMemory()} constructor to be used as the key. This will be
- used by the system as the identifier of the underlying shared memory
- segment.
-
- Click the \tt {Load Image From File...} button on one of the
- dialogs. The loadFromFile() slot is invoked. First, it tests whether
- a shared memory segment is already attached to the process. If so,
- that segment is detached from the process, so we can be assured of
- starting off the example correctly.
-
- \snippet sharedmemory/dialog.cpp 1
-
- The user is then asked to select an image file using
- QFileDialog::getOpenFileName(). The selected file is loaded into a
- QImage. Using a QImage lets us ensure that the selected file is a
- valid image, and it also allows us to immediately display the image
- in the dialog using setPixmap().
-
- Next the image is streamed into a QBuffer using a QDataStream. This
- gives us the size, which we then use to \l {QSharedMemory::}
- {create()} our shared memory segment. Creating a shared memory
- segment automatically \l {QSharedMemory::attach()} {attaches} the
- segment to the process. Using a QBuffer here lets us get a pointer
- to the image data, which we then use to do a memcopy() from the
- QBuffer into the shared memory segment.
-
- \snippet sharedmemory/dialog.cpp 2
-
- Note that we \l {QSharedMemory::} {lock()} the shared memory segment
- before we copy into it, and we \l {QSharedMemory::} {unlock()} it
- again immediately after the copy. This ensures we have exclusive
- access to the shared memory segment to do our memcopy(). If some
- other process has the segment lock, then our process will block
- until the lock becomes available.
-
- Note also that the function does not \l {QSharedMemory::} {detach()}
- from the shared memory segment after the memcopy() and
- unlock(). Recall that when the last process detaches from a shared
- memory segment, the segment is released by the operating
- system. Since this process only one that is attached to the shared
- memory segment at the moment, if loadFromFile() detached from the
- shared memory segment, the segment would be destroyed before we get
- to the next step.
-
- When the function returns, if the file you selected was qt.png, your
- first dialog looks like this.
-
- \image sharedmemory-example_2.png Screenshot of the Shared Memory example
-
- In the second dialog, click the \tt {Display Image From Shared
- Memory} button. The loadFromMemory() slot is invoked. It first \l
- {QSharedMemory::attach()} {attaches} the process to the same shared
- memory segment created by the first process. Then it \l
- {QSharedMemory::lock()} {locks} the segment for exclusive access and
- links a QBuffer to the image data in the shared memory segment. It
- then streams the data into a QImage and \l {QSharedMemory::unlock()}
- {unlocks} the segment.
-
- \snippet sharedmemory/dialog.cpp 3
-
- In this case, the function does \l {QSharedMemory::} {detach()} from
- the segment, because now we are effectively finished using
- it. Finally, the QImage is displayed. At this point, both dialogs
- should be showing the same image. When you close the first dialog,
- the Dialog destructor calls the QSharedMemory destructor, which
- detaches from the shared memory segment. Since this is the last
- process to be detached from the segment, the operating system will
- now release the shared memory.
-
- */
diff --git a/examples/ipc/ipc.pro b/examples/ipc/ipc.pro
deleted file mode 100644
index 4b4b3870a4..0000000000
--- a/examples/ipc/ipc.pro
+++ /dev/null
@@ -1,6 +0,0 @@
-requires(qtHaveModule(widgets))
-
-TEMPLATE = subdirs
-# no QSharedMemory
-!vxworks:!qnx:SUBDIRS = sharedmemory
-!wince*:qtHaveModule(network): SUBDIRS += localfortuneserver localfortuneclient
diff --git a/examples/ipc/localfortuneclient/client.cpp b/examples/ipc/localfortuneclient/client.cpp
deleted file mode 100644
index 267f5329c8..0000000000
--- a/examples/ipc/localfortuneclient/client.cpp
+++ /dev/null
@@ -1,153 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 <QtWidgets>
-#include <QtNetwork>
-
-#include "client.h"
-
-Client::Client(QWidget *parent)
- : QDialog(parent)
-{
- hostLabel = new QLabel(tr("&Server name:"));
- hostLineEdit = new QLineEdit("fortune");
-
- hostLabel->setBuddy(hostLineEdit);
-
- statusLabel = new QLabel(tr("This examples requires that you run the "
- "Fortune Server example as well."));
- statusLabel->setWordWrap(true);
-
- getFortuneButton = new QPushButton(tr("Get Fortune"));
- getFortuneButton->setDefault(true);
-
- quitButton = new QPushButton(tr("Quit"));
-
- buttonBox = new QDialogButtonBox;
- buttonBox->addButton(getFortuneButton, QDialogButtonBox::ActionRole);
- buttonBox->addButton(quitButton, QDialogButtonBox::RejectRole);
-
- socket = new QLocalSocket(this);
-
- connect(hostLineEdit, SIGNAL(textChanged(QString)),
- this, SLOT(enableGetFortuneButton()));
- connect(getFortuneButton, SIGNAL(clicked()),
- this, SLOT(requestNewFortune()));
- connect(quitButton, SIGNAL(clicked()), this, SLOT(close()));
- connect(socket, SIGNAL(readyRead()), this, SLOT(readFortune()));
- connect(socket, SIGNAL(error(QLocalSocket::LocalSocketError)),
- this, SLOT(displayError(QLocalSocket::LocalSocketError)));
-
- QGridLayout *mainLayout = new QGridLayout;
- mainLayout->addWidget(hostLabel, 0, 0);
- mainLayout->addWidget(hostLineEdit, 0, 1);
- mainLayout->addWidget(statusLabel, 2, 0, 1, 2);
- mainLayout->addWidget(buttonBox, 3, 0, 1, 2);
- setLayout(mainLayout);
-
- setWindowTitle(tr("Fortune Client"));
- hostLineEdit->setFocus();
-}
-
-void Client::requestNewFortune()
-{
- getFortuneButton->setEnabled(false);
- blockSize = 0;
- socket->abort();
- socket->connectToServer(hostLineEdit->text());
-}
-
-void Client::readFortune()
-{
- QDataStream in(socket);
- in.setVersion(QDataStream::Qt_4_0);
-
- if (blockSize == 0) {
- if (socket->bytesAvailable() < (int)sizeof(quint16))
- return;
- in >> blockSize;
- }
-
- if (in.atEnd())
- return;
-
- QString nextFortune;
- in >> nextFortune;
-
- if (nextFortune == currentFortune) {
- QTimer::singleShot(0, this, SLOT(requestNewFortune()));
- return;
- }
-
- currentFortune = nextFortune;
- statusLabel->setText(currentFortune);
- getFortuneButton->setEnabled(true);
-}
-
-void Client::displayError(QLocalSocket::LocalSocketError socketError)
-{
- switch (socketError) {
- case QLocalSocket::ServerNotFoundError:
- QMessageBox::information(this, tr("Fortune Client"),
- tr("The host was not found. Please check the "
- "host name and port settings."));
- break;
- case QLocalSocket::ConnectionRefusedError:
- QMessageBox::information(this, tr("Fortune Client"),
- tr("The connection was refused by the peer. "
- "Make sure the fortune server is running, "
- "and check that the host name and port "
- "settings are correct."));
- break;
- case QLocalSocket::PeerClosedError:
- break;
- default:
- QMessageBox::information(this, tr("Fortune Client"),
- tr("The following error occurred: %1.")
- .arg(socket->errorString()));
- }
-
- getFortuneButton->setEnabled(true);
-}
-
-void Client::enableGetFortuneButton()
-{
- getFortuneButton->setEnabled(!hostLineEdit->text().isEmpty());
-}
diff --git a/examples/ipc/localfortuneclient/client.h b/examples/ipc/localfortuneclient/client.h
deleted file mode 100644
index 61b1cd26a4..0000000000
--- a/examples/ipc/localfortuneclient/client.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 CLIENT_H
-#define CLIENT_H
-
-#include <QDialog>
-
-#include <qlocalsocket.h>
-
-QT_BEGIN_NAMESPACE
-class QDialogButtonBox;
-class QLabel;
-class QLineEdit;
-class QPushButton;
-class QLocalSocket;
-QT_END_NAMESPACE
-
-class Client : public QDialog
-{
- Q_OBJECT
-
-public:
- Client(QWidget *parent = 0);
-
-private slots:
- void requestNewFortune();
- void readFortune();
- void displayError(QLocalSocket::LocalSocketError socketError);
- void enableGetFortuneButton();
-
-private:
- QLabel *hostLabel;
- QLineEdit *hostLineEdit;
- QLabel *statusLabel;
- QPushButton *getFortuneButton;
- QPushButton *quitButton;
- QDialogButtonBox *buttonBox;
-
- QLocalSocket *socket;
- QString currentFortune;
- quint16 blockSize;
-};
-
-#endif
diff --git a/examples/ipc/localfortuneclient/localfortuneclient.pro b/examples/ipc/localfortuneclient/localfortuneclient.pro
deleted file mode 100644
index c52a173ed5..0000000000
--- a/examples/ipc/localfortuneclient/localfortuneclient.pro
+++ /dev/null
@@ -1,8 +0,0 @@
-HEADERS = client.h
-SOURCES = client.cpp \
- main.cpp
-QT += network widgets
-
-# install
-target.path = $$[QT_INSTALL_EXAMPLES]/ipc/localfortuneclient
-INSTALLS += target
diff --git a/examples/ipc/localfortuneclient/main.cpp b/examples/ipc/localfortuneclient/main.cpp
deleted file mode 100644
index f197d7f6cb..0000000000
--- a/examples/ipc/localfortuneclient/main.cpp
+++ /dev/null
@@ -1,51 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 <QApplication>
-
-#include "client.h"
-
-int main(int argc, char *argv[])
-{
- QApplication app(argc, argv);
- Client client;
- client.show();
- return app.exec();
-}
diff --git a/examples/ipc/localfortuneserver/localfortuneserver.pro b/examples/ipc/localfortuneserver/localfortuneserver.pro
deleted file mode 100644
index 9eed28ef74..0000000000
--- a/examples/ipc/localfortuneserver/localfortuneserver.pro
+++ /dev/null
@@ -1,8 +0,0 @@
-HEADERS = server.h
-SOURCES = server.cpp \
- main.cpp
-QT += network widgets
-
-# install
-target.path = $$[QT_INSTALL_EXAMPLES]/ipc/localfortuneserver
-INSTALLS += target
diff --git a/examples/ipc/localfortuneserver/main.cpp b/examples/ipc/localfortuneserver/main.cpp
deleted file mode 100644
index 0ae70e14ef..0000000000
--- a/examples/ipc/localfortuneserver/main.cpp
+++ /dev/null
@@ -1,55 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 <QApplication>
-#include <QtCore>
-
-#include <stdlib.h>
-
-#include "server.h"
-
-int main(int argc, char *argv[])
-{
- QApplication app(argc, argv);
- Server server;
- server.show();
- qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
- return app.exec();
-}
diff --git a/examples/ipc/localfortuneserver/server.cpp b/examples/ipc/localfortuneserver/server.cpp
deleted file mode 100644
index 6130aaa1c3..0000000000
--- a/examples/ipc/localfortuneserver/server.cpp
+++ /dev/null
@@ -1,111 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 <QtWidgets>
-#include <QtNetwork>
-
-#include <stdlib.h>
-
-#include "server.h"
-#include <qlocalserver.h>
-#include <qlocalsocket.h>
-
-Server::Server(QWidget *parent)
- : QDialog(parent)
-{
- statusLabel = new QLabel;
- statusLabel->setWordWrap(true);
- quitButton = new QPushButton(tr("Quit"));
- quitButton->setAutoDefault(false);
-
- server = new QLocalServer(this);
- if (!server->listen("fortune")) {
- QMessageBox::critical(this, tr("Fortune Server"),
- tr("Unable to start the server: %1.")
- .arg(server->errorString()));
- close();
- return;
- }
-
- statusLabel->setText(tr("The server is running.\n"
- "Run the Fortune Client example now."));
-
- fortunes << tr("You've been leading a dog's life. Stay off the furniture.")
- << tr("You've got to think about tomorrow.")
- << tr("You will be surprised by a loud noise.")
- << tr("You will feel hungry again in another hour.")
- << tr("You might have mail.")
- << tr("You cannot kill time without injuring eternity.")
- << tr("Computers are not intelligent. They only think they are.");
-
- connect(quitButton, SIGNAL(clicked()), this, SLOT(close()));
- connect(server, SIGNAL(newConnection()), this, SLOT(sendFortune()));
-
- QHBoxLayout *buttonLayout = new QHBoxLayout;
- buttonLayout->addStretch(1);
- buttonLayout->addWidget(quitButton);
- buttonLayout->addStretch(1);
-
- QVBoxLayout *mainLayout = new QVBoxLayout;
- mainLayout->addWidget(statusLabel);
- mainLayout->addLayout(buttonLayout);
- setLayout(mainLayout);
-
- setWindowTitle(tr("Fortune Server"));
-}
-
-void Server::sendFortune()
-{
- QByteArray block;
- QDataStream out(&block, QIODevice::WriteOnly);
- out.setVersion(QDataStream::Qt_4_0);
- out << (quint16)0;
- out << fortunes.at(qrand() % fortunes.size());
- out.device()->seek(0);
- out << (quint16)(block.size() - sizeof(quint16));
-
- QLocalSocket *clientConnection = server->nextPendingConnection();
- connect(clientConnection, SIGNAL(disconnected()),
- clientConnection, SLOT(deleteLater()));
-
- clientConnection->write(block);
- clientConnection->flush();
- clientConnection->disconnectFromServer();
-}
diff --git a/examples/ipc/localfortuneserver/server.h b/examples/ipc/localfortuneserver/server.h
deleted file mode 100644
index 4ec7f9b8ef..0000000000
--- a/examples/ipc/localfortuneserver/server.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 SERVER_H
-#define SERVER_H
-
-#include <QDialog>
-
-QT_BEGIN_NAMESPACE
-class QLabel;
-class QPushButton;
-class QLocalServer;
-QT_END_NAMESPACE
-
-class Server : public QDialog
-{
- Q_OBJECT
-
-public:
- Server(QWidget *parent = 0);
-
-private slots:
- void sendFortune();
-
-private:
- QLabel *statusLabel;
- QPushButton *quitButton;
- QLocalServer *server;
- QStringList fortunes;
-};
-
-#endif
diff --git a/examples/ipc/sharedmemory/dialog.cpp b/examples/ipc/sharedmemory/dialog.cpp
deleted file mode 100644
index c504f3a202..0000000000
--- a/examples/ipc/sharedmemory/dialog.cpp
+++ /dev/null
@@ -1,188 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 "dialog.h"
-#include <QFileDialog>
-#include <QBuffer>
-#include <QtCore/QDebug>
-
-/*!
- \class Dialog
-
- \brief This class is a simple example of how to use QSharedMemory.
-
- It is a simple dialog that presents a few buttons. To compile the
- example, run make in qt/examples/ipc. Then run the executable twice
- to create two processes running the dialog. In one of the processes,
- press the button to load an image into a shared memory segment, and
- then select an image file to load. Once the first process has loaded
- and displayed the image, in the second process, press the button to
- read the same image from shared memory. The second process displays
- the same image loaded from its new loaction in shared memory.
-*/
-
-/*!
- The class contains a data member \l {QSharedMemory} {sharedMemory},
- which is initialized with the key "QSharedMemoryExample" to force
- all instances of Dialog to access the same shared memory segment.
- The constructor also connects the clicked() signal from each of the
- three dialog buttons to the slot function appropriate for handling
- each button.
-*/
-//! [0]
-Dialog::Dialog(QWidget *parent)
- : QDialog(parent), sharedMemory("QSharedMemoryExample")
-{
- ui.setupUi(this);
- connect(ui.loadFromFileButton, SIGNAL(clicked()), SLOT(loadFromFile()));
- connect(ui.loadFromSharedMemoryButton,
- SIGNAL(clicked()),
- SLOT(loadFromMemory()));
- setWindowTitle(tr("SharedMemory Example"));
-}
-//! [0]
-
-/*!
- This slot function is called when the \tt {Load Image From File...}
- button is pressed on the firs Dialog process. First, it tests
- whether the process is already connected to a shared memory segment
- and, if so, detaches from that segment. This ensures that we always
- start the example from the beginning if we run it multiple times
- with the same two Dialog processes. After detaching from an existing
- shared memory segment, the user is prompted to select an image file.
- The selected file is loaded into a QImage. The QImage is displayed
- in the Dialog and streamed into a QBuffer with a QDataStream.
-
- Next, it gets a new shared memory segment from the system big enough
- to hold the image data in the QBuffer, and it locks the segment to
- prevent the second Dialog process from accessing it. Then it copies
- the image from the QBuffer into the shared memory segment. Finally,
- it unlocks the shared memory segment so the second Dialog process
- can access it.
-
- After this function runs, the user is expected to press the \tt
- {Load Image from Shared Memory} button on the second Dialog process.
-
- \sa loadFromMemory()
- */
-//! [1]
-void Dialog::loadFromFile()
-{
- if (sharedMemory.isAttached())
- detach();
-
- ui.label->setText(tr("Select an image file"));
- QString fileName = QFileDialog::getOpenFileName(0, QString(), QString(),
- tr("Images (*.png *.xpm *.jpg)"));
- QImage image;
- if (!image.load(fileName)) {
- ui.label->setText(tr("Selected file is not an image, please select another."));
- return;
- }
- ui.label->setPixmap(QPixmap::fromImage(image));
-//! [1] //! [2]
-
- // load into shared memory
- QBuffer buffer;
- buffer.open(QBuffer::ReadWrite);
- QDataStream out(&buffer);
- out << image;
- int size = buffer.size();
-
- if (!sharedMemory.create(size)) {
- ui.label->setText(tr("Unable to create shared memory segment."));
- return;
- }
- sharedMemory.lock();
- char *to = (char*)sharedMemory.data();
- const char *from = buffer.data().data();
- memcpy(to, from, qMin(sharedMemory.size(), size));
- sharedMemory.unlock();
-}
-//! [2]
-
-/*!
- This slot function is called in the second Dialog process, when the
- user presses the \tt {Load Image from Shared Memory} button. First,
- it attaches the process to the shared memory segment created by the
- first Dialog process. Then it locks the segment for exclusive
- access, copies the image data from the segment into a QBuffer, and
- streams the QBuffer into a QImage. Then it unlocks the shared memory
- segment, detaches from it, and finally displays the QImage in the
- Dialog.
-
- \sa loadFromFile()
- */
-//! [3]
-void Dialog::loadFromMemory()
-{
- if (!sharedMemory.attach()) {
- ui.label->setText(tr("Unable to attach to shared memory segment.\n" \
- "Load an image first."));
- return;
- }
-
- QBuffer buffer;
- QDataStream in(&buffer);
- QImage image;
-
- sharedMemory.lock();
- buffer.setData((char*)sharedMemory.constData(), sharedMemory.size());
- buffer.open(QBuffer::ReadOnly);
- in >> image;
- sharedMemory.unlock();
-
- sharedMemory.detach();
- ui.label->setPixmap(QPixmap::fromImage(image));
-}
-//! [3]
-
-/*!
- This private function is called by the destructor to detach the
- process from its shared memory segment. When the last process
- detaches from a shared memory segment, the system releases the
- shared memory.
- */
-void Dialog::detach()
-{
- if (!sharedMemory.detach())
- ui.label->setText(tr("Unable to detach from shared memory."));
-}
-
diff --git a/examples/ipc/sharedmemory/dialog.h b/examples/ipc/sharedmemory/dialog.h
deleted file mode 100644
index fbc39ed4c0..0000000000
--- a/examples/ipc/sharedmemory/dialog.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 DIALOG_H
-#define DIALOG_H
-
-#include <qdialog.h>
-#include <qsharedmemory.h>
-#include "ui_dialog.h"
-
-//! [0]
-class Dialog : public QDialog
-{
- Q_OBJECT
-
- public:
- Dialog(QWidget *parent = 0);
-
- public slots:
- void loadFromFile();
- void loadFromMemory();
-
- private:
- void detach();
-
- private:
- Ui::Dialog ui;
- QSharedMemory sharedMemory;
-};
-//! [0]
-
-#endif
-
diff --git a/examples/ipc/sharedmemory/dialog.ui b/examples/ipc/sharedmemory/dialog.ui
deleted file mode 100644
index e99d6fb3c4..0000000000
--- a/examples/ipc/sharedmemory/dialog.ui
+++ /dev/null
@@ -1,47 +0,0 @@
-<ui version="4.0" >
- <class>Dialog</class>
- <widget class="QDialog" name="Dialog" >
- <property name="geometry" >
- <rect>
- <x>0</x>
- <y>0</y>
- <width>451</width>
- <height>322</height>
- </rect>
- </property>
- <property name="windowTitle" >
- <string>Dialog</string>
- </property>
- <layout class="QGridLayout" >
- <item row="0" column="0" >
- <widget class="QPushButton" name="loadFromFileButton" >
- <property name="text" >
- <string>Load Image From File...</string>
- </property>
- </widget>
- </item>
- <item row="1" column="0" >
- <widget class="QLabel" name="label" >
- <property name="text" >
- <string>Launch two of these dialogs. In the first, press the top button and load an image from a file. In the second, press the bottom button and display the loaded image from shared memory.</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- <property name="wordWrap" >
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="2" column="0" >
- <widget class="QPushButton" name="loadFromSharedMemoryButton" >
- <property name="text" >
- <string>Display Image From Shared Memory</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
diff --git a/examples/ipc/sharedmemory/image.png b/examples/ipc/sharedmemory/image.png
deleted file mode 100644
index dd93453063..0000000000
--- a/examples/ipc/sharedmemory/image.png
+++ /dev/null
Binary files differ
diff --git a/examples/ipc/sharedmemory/main.cpp b/examples/ipc/sharedmemory/main.cpp
deleted file mode 100644
index 0e9f84f3e3..0000000000
--- a/examples/ipc/sharedmemory/main.cpp
+++ /dev/null
@@ -1,53 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the examples 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 Digia Plc 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 <QApplication>
-#include "dialog.h"
-
-//! [0]
-int main(int argc, char *argv[])
-{
- QApplication application(argc, argv);
- Dialog dialog;
- dialog.show();
- return application.exec();
-}
-//! [0]
-
diff --git a/examples/ipc/sharedmemory/qt.png b/examples/ipc/sharedmemory/qt.png
deleted file mode 100644
index 60ef558efe..0000000000
--- a/examples/ipc/sharedmemory/qt.png
+++ /dev/null
Binary files differ
diff --git a/examples/ipc/sharedmemory/sharedmemory.pro b/examples/ipc/sharedmemory/sharedmemory.pro
deleted file mode 100644
index a392f9542d..0000000000
--- a/examples/ipc/sharedmemory/sharedmemory.pro
+++ /dev/null
@@ -1,15 +0,0 @@
-QT += widgets
-
-SOURCES += main.cpp \
- dialog.cpp
-
-HEADERS += dialog.h
-
-# Forms and resources
-FORMS += dialog.ui
-
-EXAMPLE_FILES = *.png
-
-# install
-target.path = $$[QT_INSTALL_EXAMPLES]/ipc/sharedmemory
-INSTALLS += target