qwsdisplay_qws.h
This is the verbatim text of the qwsdisplay_qws.h include file. It is
provided only for illustration; the copyright
remains with Trolltech.
/****************************************************************************
** $Id: qt/src/kernel/qwsdisplay_qws.h 2.2.1 edited 2000-10-02 $
**
** QWS display
**
** Created : 20000616
**
** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
**
** This file is part of the kernel module of the Qt GUI Toolkit.
**
** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
** licenses for Qt/Embedded may use this file in accordance with the
** Qt Embedded Commercial License Agreement provided with the Software.
**
** This file is not available for use under any other license without
** express written permission from the copyright holder.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
** information about Qt Commercial License Agreements.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
#ifndef QWSDISPLAY_H
#define QWSDISPLAY_H
#include "qregion.h"
#include "qlock_qws.h"
#include "qwindowdefs.h"
#include "qlist.h"
// Class forward definitions
class QWSDisplayData;
class QWSRegionManager;
class QWSEvent;
class QGfx;
class QWSWindowInfo
{
public:
int winid;
unsigned int clientid;
QString name;
};
#define QT_QWS_PROPERTY_CONVERTSELECTION 999
#define QT_QWS_PROPERTY_WINDOWNAME 998
#ifndef QT_NO_PCOP
class PCOPChannelPrivate;
class QWSClient;
class PCOPChannel
{
public:
PCOPChannel( const QCString& channel );
virtual ~PCOPChannel();
QCString channel() const;
static bool isRegistered( const QCString& channel );
static bool send( const QCString &channel, const QCString &msg );
static bool send( const QCString &channel, const QCString &msg,
const QByteArray &data );
virtual void receive( const QCString &msg, const QByteArray &data ) = 0;
private:
// server side
static void registerChannel( const QString &ch, const QWSClient *cl );
static void answer( QWSClient *cl, const QCString &ch,
const QCString &msg, const QByteArray &data );
// client side
static void processEvent( const QCString &ch, const QCString &msg,
const QByteArray &data );
PCOPChannelPrivate* d;
friend class QWSServer;
friend class QApplication;
};
#endif
class QWSDisplay
{
public:
QWSDisplay();
bool eventPending() const;
QWSEvent *getEvent();
QGfx * screenGfx();
QWSRegionManager *regionManager() const;
uchar* frameBuffer() const;
int width() const;
int height() const;
int depth() const;
int greenDepth() const;
uchar *sharedRam() const;
int sharedRamSize() const;
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 );
QList<QWSWindowInfo> * windowList();
void requestRegion( int winId, 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 );
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 selectCursor( QWidget *w, unsigned int id );
void grabMouse( QWidget *w, bool grab );
void playSoundFile( const QString& );
void setCaption( QWidget *w, const QString & );
// Lock display for access only by this process
static bool initLock( const QString &filename, bool create = FALSE );
static bool grabbed() { return lock->locked(); }
static void grab() { lock->lock( QLock::Read ); }
static void grab( bool write )
{ lock->lock( write ? QLock::Write : QLock::Read ); }
static void ungrab() { lock->unlock(); }
private:
friend class QApplication;
friend class PCOPChannel;
QWSDisplayData *d;
int getPropertyLen;
char *getPropertyData;
static QLock *lock;
};
extern QWSDisplay *qt_fbdpy;
#endif // QWSDISPLAY_H
Copyright © 2000 Trolltech | Trademarks
| Qt version 2.2.1
|