summaryrefslogtreecommitdiffstats
path: root/src/gui/embedded/qwsdisplay_qws.h
diff options
context:
space:
mode:
authorQt by Nokia <qt-info@nokia.com>2011-04-27 12:05:43 +0200
committeraxis <qt-info@nokia.com>2011-04-27 12:05:43 +0200
commit38be0d13830efd2d98281c645c3a60afe05ffece (patch)
tree6ea73f3ec77f7d153333779883e8120f82820abe /src/gui/embedded/qwsdisplay_qws.h
Initial import from the monolithic Qt.
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12
Diffstat (limited to 'src/gui/embedded/qwsdisplay_qws.h')
-rw-r--r--src/gui/embedded/qwsdisplay_qws.h185
1 files changed, 185 insertions, 0 deletions
diff --git a/src/gui/embedded/qwsdisplay_qws.h b/src/gui/embedded/qwsdisplay_qws.h
new file mode 100644
index 0000000000..81acb425c9
--- /dev/null
+++ b/src/gui/embedded/qwsdisplay_qws.h
@@ -0,0 +1,185 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the 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$
+**
+****************************************************************************/
+
+#ifndef QWSDISPLAY_QWS_H
+#define QWSDISPLAY_QWS_H
+
+#include <QtCore/qobject.h>
+#include <QtCore/qbytearray.h>
+#include <QtGui/qregion.h>
+#include <QtGui/qimage.h>
+#include <QtGui/qwindowdefs.h>
+#include <QtCore/qlist.h>
+
+QT_BEGIN_HEADER
+
+QT_BEGIN_NAMESPACE
+
+QT_MODULE(Gui)
+
+class QWSEvent;
+class QWSMouseEvent;
+class QWSQCopMessageEvent;
+class QVariant;
+class QLock;
+
+class QWSWindowInfo
+{
+
+public:
+
+ int winid;
+ unsigned int clientid;
+ QString name;
+
+};
+
+#define QT_QWS_PROPERTY_CONVERTSELECTION 999
+#define QT_QWS_PROPERTY_WINDOWNAME 998
+#define QT_QWS_PROPERTY_MARKEDTEXT 997
+
+class QWSDisplay;
+extern Q_GUI_EXPORT QWSDisplay *qt_fbdpy;
+
+class Q_GUI_EXPORT QWSDisplay
+{
+public:
+ QWSDisplay();
+ ~QWSDisplay();
+
+ static QWSDisplay* instance() { return qt_fbdpy; }
+
+ bool eventPending() const;
+ QWSEvent *getEvent();
+// QWSRegionManager *regionManager() const;
+
+ uchar* frameBuffer() const;
+ int width() const;
+ int height() const;
+ int depth() const;
+ int pixmapDepth() const;
+ bool supportsDepth(int) const;
+
+ uchar *sharedRam() const;
+ int sharedRamSize() const;
+
+#ifndef QT_NO_QWS_PROPERTIES
+ void addProperty(int winId, int property);
+ void setProperty(int winId, int property, int mode, const QByteArray &data);
+ void setProperty(int winId, int property, int mode, const char * data);
+ void removeProperty(int winId, int property);
+ bool getProperty(int winId, int property, char *&data, int &len);
+#endif // QT_NO_QWS_PROPERTIES
+
+ QList<QWSWindowInfo> windowList();
+ int windowAt(const QPoint &);
+
+ void setIdentity(const QString &appName);
+ void nameRegion(int winId, const QString& n, const QString &c);
+ void requestRegion(int winId, const QString &surfacekey,
+ const QByteArray &surfaceData,
+ const QRegion &region);
+ void repaintRegion(int winId, int windowFlags, bool opaque, QRegion);
+ void moveRegion(int winId, int dx, int dy);
+ void destroyRegion(int winId);
+ void requestFocus(int winId, bool get);
+ void setAltitude(int winId, int altitude, bool fixed = false);
+ void setOpacity(int winId, int opacity);
+ int takeId();
+ void setSelectionOwner(int winId, const QTime &time);
+ void convertSelection(int winId, int selectionProperty, const QString &mimeTypes);
+ void defineCursor(int id, const QBitmap &curs, const QBitmap &mask,
+ int hotX, int hotY);
+ void destroyCursor(int id);
+ void selectCursor(QWidget *w, unsigned int id);
+ void setCursorPosition(int x, int y);
+ void grabMouse(QWidget *w, bool grab);
+ void grabKeyboard(QWidget *w, bool grab);
+ void playSoundFile(const QString&);
+ void registerChannel(const QString &channel);
+ void sendMessage(const QString &channel, const QString &msg,
+ const QByteArray &data);
+ void flushCommands();
+#ifndef QT_NO_QWS_INPUTMETHODS
+ void sendIMUpdate(int type, int winId, int widgetid);
+ void resetIM();
+ void sendIMResponse(int winId, int property, const QVariant &result);
+ void sendIMMouseEvent(int index, bool isPress);
+#endif
+ QWSQCopMessageEvent* waitForQCopResponse();
+ void sendFontCommand(int type, const QByteArray &fontName);
+
+ void setWindowCaption(QWidget *w, const QString &);
+
+ // Lock display for access only by this process
+ static bool initLock(const QString &filename, bool create = false);
+ static bool grabbed();
+ static void grab();
+ static void grab(bool write);
+ static void ungrab();
+
+ static void setTransformation(int transformation, int screenNo = -1);
+ static void setRawMouseEventFilter(void (*filter)(QWSMouseEvent *));
+
+private:
+ friend int qt_fork_qapplication();
+ friend void qt_app_reinit( const QString& newAppName );
+ friend class QApplication;
+ friend class QCopChannel;
+ friend class QWSEmbedWidget;
+ friend class QWSEmbedWidgetPrivate;
+ class Data;
+ friend class Data;
+ Data *d;
+
+ friend class QWSMemorySurface;
+ friend class QWSOnScreenSurface;
+ friend class QWSDirectPainterSurface;
+ int getPropertyLen;
+ char *getPropertyData;
+ static QLock *lock;
+};
+
+QT_END_NAMESPACE
+
+QT_END_HEADER
+
+#endif // QWSDISPLAY_QWS_H