⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qwindowsystem_qws.h

📁 著名的A780系列,E680系列的SDK开发包
💻 H
📖 第 1 页 / 共 2 页
字号:
#endifprivate:#ifndef QT_NO_COP    static void sendQCopEvent( QWSClient *c, const QCString &ch,			       const QCString &msg, const QByteArray &data,			       bool response = FALSE );#endif    void move_region( const QWSRegionMoveCommand * );    void set_altitude( const QWSChangeAltitudeCommand * );    void request_focus( const QWSRequestFocusCommand * );    void request_region( int, QRegion );    void destroy_region( const QWSRegionDestroyCommand * );    void name_region( const QWSRegionNameCommand * );    void set_identity( const QWSIdentifyCommand * );#ifndef QT_NO_QWS_IM    void set_im_info( const QWSSetIMInfoCommand * );    void reset_im( const QWSResetIMCommand * );    void set_im_font( const QWSSetIMFontCommand * );    void send_im_mouse( const QWSIMMouseCommand * );    static void sendKeyEventUnfiltered(int unicode, int keycode, 				       int modifiers, bool isPress,				       bool autoRepeat);#endif    static void emergency_cleanup();    static QColor *bgColor;    static QImage *bgImage;    void sendMaxWindowRectEvents();#ifndef QT_NO_QWS_MULTIPROCESS    void newConnection( int socket );#endif    void invokeIdentify( const QWSIdentifyCommand *cmd, QWSClient *client );    void invokeCreate( QWSCreateCommand *cmd, QWSClient *client );    void invokeRegionName( const QWSRegionNameCommand *cmd, QWSClient *client );    void invokeRegion( QWSRegionCommand *cmd, QWSClient *client );    void invokeRegionMove( const QWSRegionMoveCommand *cmd, QWSClient *client );    void invokeRegionDestroy( const QWSRegionDestroyCommand *cmd, QWSClient *client );    void invokeSetAltitude( const QWSChangeAltitudeCommand *cmd, QWSClient *client );#ifndef QT_NO_QWS_PROPERTIES    void invokeAddProperty( QWSAddPropertyCommand *cmd );    void invokeSetProperty( QWSSetPropertyCommand *cmd );    void invokeRemoveProperty( QWSRemovePropertyCommand *cmd );    void invokeGetProperty( QWSGetPropertyCommand *cmd, QWSClient *client );#endif //QT_NO_QWS_PROPERTIES    void invokeSetSelectionOwner( QWSSetSelectionOwnerCommand *cmd );    void invokeConvertSelection( QWSConvertSelectionCommand *cmd );    void invokeSetFocus( const QWSRequestFocusCommand *cmd, QWSClient *client );    void initIO();    void setFocus( QWSWindow*, bool gain );#ifndef QT_NO_QWS_CURSOR    void invokeDefineCursor( QWSDefineCursorCommand *cmd, QWSClient *client );    void invokeSelectCursor( QWSSelectCursorCommand *cmd, QWSClient *client );#endif    void invokeGrabMouse( QWSGrabMouseCommand *cmd, QWSClient *client );    void invokeGrabKeyboard( QWSGrabKeyboardCommand *cmd, QWSClient *client );#ifndef QT_NO_SOUND    void invokePlaySound( QWSPlaySoundCommand *cmd, QWSClient *client );#endif#ifndef QT_NO_COP    void invokeRegisterChannel( QWSQCopRegisterChannelCommand *cmd,				QWSClient *client );    void invokeQCopSend( QWSQCopSendCommand *cmd, QWSClient *client );#endif#ifndef QT_NO_QWS_IM        void invokeSetIMInfo( const QWSSetIMInfoCommand *cmd,                                QWSClient *client );        void invokeSetIMFont( const QWSSetIMFontCommand *cmd,                                QWSClient *client );#endif    QWSMouseHandler* newMouseHandler(const QString& spec);#if !defined(QT_NO_QWS_KEYBOARD) && !defined(QT_EZX_INPUT)    QWSKeyboardHandler* newKeyboardHandler(const QString& spec);#endif    void openDisplay();    void closeDisplay();    void showCursor();    void hideCursor();    void initializeCursor();    void paintServerRegion();    void paintBackground( const QRegion & );    void clearRegion( const QRegion &r, const QColor &c );    void refreshBackground();    void resetGfx();private slots:#ifndef QT_NO_QWS_MULTIPROCESS    void clientClosed();    void doClient();#endif    void setMouse(const QPoint& pos,int bstate);    void screenSaverWake();    void screenSaverSleep();    void screenSaverTimeout();private:    void disconnectClient( QWSClient * );    void screenSave(int level);    void doClient( QWSClient * );    typedef QMapIterator<int,QWSClient*> ClientIterator;    typedef QMap<int,QWSClient*> ClientMap;    void releaseMouse(QWSWindow* w);    void releaseKeyboard(QWSWindow* w);    void updateClientCursorPos();    uchar* sharedram;    int ramlen;    QGfx *gfx;    ClientMap client;#ifndef QT_NO_QWS_PROPERTIES    QWSPropertyManager propertyManager;#endif    struct SelectionOwner {	int windowid;	struct Time {	    void set( int h, int m, int s, int s2 ) {		hour = h; minute = m; sec = s; ms = s2;	    }	    int hour, minute, sec, ms;	} time;    } selectionOwner;    QTime timer;    QWSServerData* d;    int* screensaverinterval;    QWSWindow *focusw;    QWSWindow *mouseGrabber;    bool mouseGrabbing;    int swidth, sheight, sdepth;#ifndef QT_NO_QWS_CURSOR    bool haveviscurs;    QWSCursor *cursor;	    // cursor currently shown    QWSCursor *nextCursor;  // cursor to show once grabbing is off#endif    QRegion screenRegion;   // the entire display region    QRegion serverRegion;    QRegion dirtyBackground;    bool disablePainting;    QList<QWSMouseHandler> mousehandlers;#ifndef QT_NO_QWS_KEYBOARD        QList<QWSKeyboardHandler> keyboardhandlers;#endif    QList<QWSCommandStruct> commandQueue;    QWSRegionManager *rgnMan;    // Window management    QList<QWSWindow> windows; // first=topmost    QWSWindow* newWindow(int id, QWSClient* client);    QWSWindow* findWindow(int windowid, QWSClient* client);    void moveWindowRegion(QWSWindow*, int dx, int dy );    QRegion setWindowRegion(QWSWindow*, QRegion r );    void raiseWindow( QWSWindow *, int = 0);    void lowerWindow( QWSWindow *, int = -1);    void exposeRegion( QRegion , int index = 0 );    void notifyModified( QWSWindow *active = 0 );    void syncRegions( QWSWindow *active = 0 );    void setCursor(QWSCursor *curs);    // multimedia#ifndef QT_NO_SOUND    QWSSoundServer *soundserver;#endif#ifndef QT_NO_COP    QMap<QString, QList<QWSClient> > channels;#endif#ifndef QT_NO_QWS_IM    bool microF;    int microX;    int microY;#endifpublic:    // Not in Qt 2.3.7 - STUB    static void restartScreenSaverTimer() {	    extern QWSServer *qwsServer;	    if (qwsServer) { qwsServer->screenSaverWake(); }    }#if defined(QT_EZX_MUNGE)    /* Routines added by Motorola for EZX */signals:    void NotifyClientClosed(QWSClient*);    void cursorSelected(QWSCursor*);public:    void insertPrioritizedWindow(QWSWindow*);    void invokeRegionPriority(QWSSetRegionPriorityCommand const*, QWSClient*);    void invokeSimulateMouseEvent(QWSSimulateMouseEventCommand const*,				  QWSClient*);    void lowerWindow(QWSWindow*, QWSWindow*);    void sendCaptureEvent(void);    void sendStrEvent(char*, int);    void set_region_priority(QWSSetRegionPriorityCommand const*);    void simulate_mouse_event(QWSSimulateMouseEventCommand const*);#endif};extern QWSServer *qwsServer; //there can be only one#ifndef QT_NO_QWS_IMclass QWSInputMethod : public QObject{public:    QWSInputMethod();    virtual ~QWSInputMethod();    virtual bool filter(int unicode, int keycode, int modifiers, 			bool isPress, bool autoRepeat)=0;    virtual void reset();    virtual void setMicroFocus( int x, int y );    virtual void mouseHandler( int, int );    QFont font() const;    QRect inputRect() const; protected:    void sendIMEvent( QWSServer::IMState, const QString& txt, int cpos, int selLen = 0 );};inline void QWSInputMethod::sendIMEvent( QWSServer::IMState state, const QString &txt, int cpos, int selLen ){    qwsServer->sendIMEvent( state, txt, cpos, selLen );}#endif/********************************************************************* * * Class: QWSClient * *********************************************************************/struct QWSMouseEvent;typedef QMap<int, QWSCursor*> QWSCursorMap;class QWSClient : public QObject{    Q_OBJECTpublic:    QWSClient( QObject* parent, int socket, int id );    ~QWSClient();    int socket() const;    void setIdentity(const QString&);    QString identity() const { return id; }    void sendEvent( QWSEvent* event );    void sendConnectedEvent( const char *display_spec );    void sendMaxWindowRectEvent();    void sendRegionModifyEvent( int winid, QRegion exposed, bool ack );    void sendFocusEvent( int winid, bool get );    void sendPropertyNotifyEvent( int property, int state );    void sendPropertyReplyEvent( int property, int len, char *data );    void sendSelectionClearEvent( int windowid );    void sendSelectionRequestEvent( QWSConvertSelectionCommand *cmd, int windowid );    QWSCommand* readMoreCommand();    int clientId() const { return cid; }    QWSCursorMap cursors;	// cursors defined by this clientsignals:    void connectionClosed();    void readyRead();private slots:    void closeHandler();    void errorHandler( int );private:    int s; // XXX csocket->d->socket->socket() is this value#ifndef QT_NO_QWS_MULTIPROCESS    QWSSocket *csocket;#endif    QWSCommand* command;    uint isClosed : 1;    QString id;    int cid;#if defined(QT_EZX_MUNGE)    void sendSimulateMouseEvent(QPoint const&, int);#endif /* defined(QT_EZX_MUNGE) */};#if defined(QT_EZX_MUNGE)extern QString qwsGetClipboardObjectFormat(void);extern void qwsSetClipboardObjectFormat(QString const&);extern void qwsSetClipboardObject(QString const&);#endif /* defined(QT_EZX_MUNGE) */#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -