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

📄 qapplication.h

📁 qt-x11-opensource-src-4.1.4.tar.gz源码
💻 H
字号:
/******************************************************************************** Copyright (C) 1992-2006 Trolltech ASA. All rights reserved.**** This file is part of the QtGui module of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.0 as published by the Free Software Foundation** and appearing in the file LICENSE.GPL included in the packaging of** this file.  Please review the following information to ensure GNU** General Public Licensing requirements will be met:** http://www.trolltech.com/products/qt/opensource.html**** If you are unsure which license is appropriate for your use, please** review the following information:** http://www.trolltech.com/products/qt/licensing.html or contact the** sales department at sales@trolltech.com.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#ifndef QAPPLICATION_H#define QAPPLICATION_H#include <QtCore/qcoreapplication.h>#include <QtGui/qwindowdefs.h>#include <QtCore/qpoint.h>#include <QtCore/qsize.h>#include <QtGui/qcursor.h>#ifdef QT_INCLUDE_COMPAT# include <QtGui/qdesktopwidget.h>#endif#ifdef QT3_SUPPORT# include <QtGui/qwidget.h># include <QtGui/qpalette.h>#endif#ifdef Q_WS_QWS# include <QtGui/qrgb.h># include <QtGui/qtransportauth_qws.h>#endifQT_BEGIN_HEADERQT_MODULE(Gui)class QSessionManager;class QDesktopWidget;class QStyle;class QEventLoop;class QIcon;template <typename T> class QList;class QInputContext;#if defined(Q_WS_QWS)class QDecoration;#endifclass QApplication;class QApplicationPrivate;#define qApp (static_cast<QApplication *>(QCoreApplication::instance()))class Q_GUI_EXPORT QApplication : public QCoreApplication{    Q_OBJECT    Q_PROPERTY(Qt::LayoutDirection layoutDirection READ layoutDirection WRITE setLayoutDirection)    Q_PROPERTY(QIcon windowIcon READ windowIcon WRITE setWindowIcon)    Q_PROPERTY(int cursorFlashTime READ cursorFlashTime WRITE setCursorFlashTime)    Q_PROPERTY(int doubleClickInterval  READ doubleClickInterval WRITE setDoubleClickInterval)    Q_PROPERTY(int keyboardInputInterval READ keyboardInputInterval WRITE setKeyboardInputInterval)#ifndef QT_NO_WHEELEVENT    Q_PROPERTY(int wheelScrollLines  READ wheelScrollLines WRITE setWheelScrollLines)#endif    Q_PROPERTY(QSize globalStrut READ globalStrut WRITE setGlobalStrut)    Q_PROPERTY(int startDragTime  READ startDragTime WRITE setStartDragTime)    Q_PROPERTY(int startDragDistance  READ startDragDistance WRITE setStartDragDistance)    Q_PROPERTY(bool quitOnLastWindowClosed  READ quitOnLastWindowClosed WRITE setQuitOnLastWindowClosed)public:    QApplication(int &argc, char **argv);    QApplication(int &argc, char **argv, bool GUIenabled);    enum Type { Tty, GuiClient, GuiServer };    QApplication(int &argc, char **argv, Type);#if defined(Q_WS_X11)    QApplication(Display* dpy, Qt::HANDLE visual = 0, Qt::HANDLE cmap = 0);    QApplication(Display *dpy, int &argc, char **argv, Qt::HANDLE visual = 0, Qt::HANDLE cmap= 0);#endif    virtual ~QApplication();    static Type type();    static QStyle *style();    static void setStyle(QStyle*);    static QStyle *setStyle(const QString&);    enum ColorSpec { NormalColor=0, CustomColor=1, ManyColor=2 };    static int colorSpec();    static void setColorSpec(int);#ifndef QT_NO_CURSOR    static QCursor *overrideCursor();    static void setOverrideCursor(const QCursor &);    static void changeOverrideCursor(const QCursor &);    static void restoreOverrideCursor();#endif    static QPalette palette();    static QPalette palette(const QWidget *);    static QPalette palette(const char *className);    static void setPalette(const QPalette &, const char* className = 0);    static QFont font(const QWidget* = 0);    static void setFont(const QFont &, const char* className = 0);    static QFontMetrics fontMetrics();    static void setWindowIcon(const QIcon &icon);    static QIcon windowIcon();#ifdef QT3_SUPPORT    static QT3_SUPPORT QWidget *mainWidget();    static QT3_SUPPORT void setMainWidget(QWidget *);#endif    static QWidgetList allWidgets();    static QWidgetList topLevelWidgets();    static QDesktopWidget *desktop();    static QWidget *activePopupWidget();    static QWidget *activeModalWidget();#ifndef QT_NO_CLIPBOARD    static QClipboard *clipboard();#endif    static QWidget *focusWidget();    static QWidget *activeWindow();    static void setActiveWindow(QWidget* act);    static QWidget *widgetAt(const QPoint &p);    static inline QWidget *widgetAt(int x, int y) { return widgetAt(QPoint(x, y)); }    static QWidget *topLevelAt(const QPoint &p);    static inline QWidget *topLevelAt(int x, int y)  { return topLevelAt(QPoint(x, y)); }    static void syncX();    static void beep();    static Qt::KeyboardModifiers keyboardModifiers();    static Qt::MouseButtons mouseButtons();    static void setDesktopSettingsAware(bool);    static bool desktopSettingsAware();    static void setCursorFlashTime(int);    static int cursorFlashTime();    static void setDoubleClickInterval(int);    static int doubleClickInterval();    static void setKeyboardInputInterval(int);    static int keyboardInputInterval();#ifndef QT_NO_WHEELEVENT    static void setWheelScrollLines(int);    static int wheelScrollLines();#endif    static void setGlobalStrut(const QSize &);    static QSize globalStrut();    static void setStartDragTime(int ms);    static int startDragTime();    static void setStartDragDistance(int l);    static int startDragDistance();    static void setLayoutDirection(Qt::LayoutDirection direction);    static Qt::LayoutDirection layoutDirection();    static inline bool isRightToLeft() { return layoutDirection() == Qt::RightToLeft; }    static inline bool isLeftToRight() { return layoutDirection() == Qt::LeftToRight; }    static bool isEffectEnabled(Qt::UIEffect);    static void setEffectEnabled(Qt::UIEffect, bool enable = true);#if defined(Q_WS_MAC)    virtual bool macEventFilter(EventHandlerCallRef, EventRef);#endif#if defined(Q_WS_X11)    virtual bool x11EventFilter(XEvent *);    virtual int x11ClientMessage(QWidget*, XEvent*, bool passive_only);    int x11ProcessEvent(XEvent*);#endif#if defined(Q_WS_QWS)    virtual bool qwsEventFilter(QWSEvent *);    int qwsProcessEvent(QWSEvent*);    void qwsSetCustomColors(QRgb *colortable, int start, int numColors);#ifndef QT_NO_QWS_MANAGER    static QDecoration &qwsDecoration();    static void qwsSetDecoration(QDecoration *);    static QDecoration *qwsSetDecoration(const QString &decoration);#endif#endif#if defined(Q_WS_WIN)    void winFocus(QWidget *, bool);    static void winMouseButtonUp();#endif#ifndef QT_NO_SESSIONMANAGER    // session management    bool isSessionRestored() const;    QString sessionId() const;    QString sessionKey() const;    virtual void commitData(QSessionManager& sm);    virtual void saveState(QSessionManager& sm);#endif    void setInputContext(QInputContext *);    QInputContext *inputContext() const;    static int exec();    bool notify(QObject *, QEvent *);    static void setQuitOnLastWindowClosed(bool quit);    static bool quitOnLastWindowClosed();#ifdef QT_KEYPAD_NAVIGATION    static void setKeypadNavigationEnabled(bool);    static bool keypadNavigationEnabled();#endifQ_SIGNALS:    void lastWindowClosed();    void focusChanged(QWidget *old, QWidget *now);public Q_SLOTS:    static void closeAllWindows();    static void aboutQt();protected:#if defined(Q_WS_QWS)    void setArgs(int, char **);#endif    bool event(QEvent *);    bool compressEvent(QEvent *, QObject *receiver, QPostEventList *);#ifdef QT3_SUPPORTpublic:    static inline QT3_SUPPORT void setReverseLayout(bool b) { setLayoutDirection(b?Qt::RightToLeft:Qt::LeftToRight); }    static inline bool QT3_SUPPORT reverseLayout() { return layoutDirection() == Qt::RightToLeft; }    static QT3_SUPPORT Qt::Alignment horizontalAlignment(Qt::Alignment align);    typedef int ColorMode;    enum { NormalColors = NormalColor, CustomColors = CustomColor };    static inline QT3_SUPPORT ColorMode colorMode() { return static_cast<ColorMode>(colorSpec()); }    static inline QT3_SUPPORT void setColorMode(ColorMode mode) { setColorSpec(int(mode)); }#if defined(Q_OS_WIN32) || defined(Q_OS_CYGWIN)    static QT3_SUPPORT Qt::WindowsVersion winVersion() { return (Qt::WindowsVersion)QSysInfo::WindowsVersion; }#endif#if defined(Q_OS_MAC)    static QT3_SUPPORT Qt::MacintoshVersion macVersion() { return (Qt::MacintoshVersion)QSysInfo::MacintoshVersion; }#endif    inline static  QT3_SUPPORT void setOverrideCursor(const QCursor &cursor, bool replace)        { if (replace) changeOverrideCursor(cursor); else setOverrideCursor(cursor); }    inline static QT3_SUPPORT bool hasGlobalMouseTracking() {return true;}    inline static QT3_SUPPORT void setGlobalMouseTracking(bool) {};    inline static QT3_SUPPORT void flushX() { flush(); }    static inline QT3_SUPPORT void setWinStyleHighlightColor(const QColor &c) {        QPalette p(palette());        p.setColor(QPalette::Highlight, c);        setPalette(p);    }    static inline QT3_SUPPORT const QColor &winStyleHighlightColor()        { return palette().color(QPalette::Active, QPalette::Highlight); }    static inline QT3_SUPPORT void setPalette(const QPalette &pal, bool, const char* className = 0)        { setPalette(pal, className); };    static inline QT3_SUPPORT void setFont(const QFont &font, bool, const char* className = 0)        { setFont(font, className); }    static inline QT3_SUPPORT QWidget *widgetAt(int x, int y, bool child)        { QWidget *w = widgetAt(x, y); return child ? w : (w ? w->window() : 0); }    static inline QT3_SUPPORT QWidget *widgetAt(const QPoint &p, bool child)        { QWidget *w = widgetAt(p); return child ? w : (w ? w->window() : 0); }#endif // QT3_SUPPORTprivate:    Q_DISABLE_COPY(QApplication)    Q_DECLARE_PRIVATE(QApplication)    friend class QWidget;    friend class QWidgetPrivate;    friend class QETWidget;    friend class Q3AccelManager;    friend class QTranslator;#ifndef QT_NO_SHORTCUT    friend class QShortcut;#endif    friend class QAction;#if defined(Q_WS_QWS)    friend class QInputContext;    friend class QDirectPainter;#endif    Q_PRIVATE_SLOT(d_func(), void _q_tryEmitLastWindowClosed())};QT_END_HEADER#endif // QAPPLICATION_H

⌨️ 快捷键说明

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