/**************************************************************************** ** ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). ** Contact: Qt Software Information (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 either Technology Preview License Agreement or the ** Beta Release License Agreement. ** ** 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.0, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.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 the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** If you are unsure which license is appropriate for your use, please ** contact the sales department at qt-sales@nokia.com. ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QDYNAMICDOCKWIDGET_H #define QDYNAMICDOCKWIDGET_H #include QT_BEGIN_HEADER QT_BEGIN_NAMESPACE QT_MODULE(Gui) #ifndef QT_NO_DOCKWIDGET class QDockAreaLayout; class QDockWidgetPrivate; class QMainWindow; class QStyleOptionDockWidget; class Q_GUI_EXPORT QDockWidget : public QWidget { Q_OBJECT Q_FLAGS(DockWidgetFeatures) Q_PROPERTY(bool floating READ isFloating WRITE setFloating) Q_PROPERTY(DockWidgetFeatures features READ features WRITE setFeatures NOTIFY featuresChanged) Q_PROPERTY(Qt::DockWidgetAreas allowedAreas READ allowedAreas WRITE setAllowedAreas NOTIFY allowedAreasChanged) Q_PROPERTY(QString windowTitle READ windowTitle WRITE setWindowTitle DESIGNABLE true) public: explicit QDockWidget(const QString &title, QWidget *parent = 0, Qt::WindowFlags flags = 0); explicit QDockWidget(QWidget *parent = 0, Qt::WindowFlags flags = 0); ~QDockWidget(); QWidget *widget() const; void setWidget(QWidget *widget); enum DockWidgetFeature { DockWidgetClosable = 0x01, DockWidgetMovable = 0x02, DockWidgetFloatable = 0x04, DockWidgetVerticalTitleBar = 0x08, DockWidgetFeatureMask = 0x0f, AllDockWidgetFeatures = DockWidgetClosable|DockWidgetMovable|DockWidgetFloatable, // ### remove in 5.0 NoDockWidgetFeatures = 0x00, Reserved = 0xff }; Q_DECLARE_FLAGS(DockWidgetFeatures, DockWidgetFeature) void setFeatures(DockWidgetFeatures features); DockWidgetFeatures features() const; void setFloating(bool floating); inline bool isFloating() const { return isWindow(); } void setAllowedAreas(Qt::DockWidgetAreas areas); Qt::DockWidgetAreas allowedAreas() const; void setTitleBarWidget(QWidget *widget); QWidget *titleBarWidget() const; inline bool isAreaAllowed(Qt::DockWidgetArea area) const { return (allowedAreas() & area) == area; } #ifndef QT_NO_ACTION QAction *toggleViewAction() const; #endif Q_SIGNALS: void featuresChanged(QDockWidget::DockWidgetFeatures features); void topLevelChanged(bool topLevel); void allowedAreasChanged(Qt::DockWidgetAreas allowedAreas); void visibilityChanged(bool visible); void dockLocationChanged(Qt::DockWidgetArea area); protected: void changeEvent(QEvent *event); void closeEvent(QCloseEvent *event); void paintEvent(QPaintEvent *event); bool event(QEvent *event); void initStyleOption(QStyleOptionDockWidget *option) const; private: Q_DECLARE_PRIVATE(QDockWidget) Q_DISABLE_COPY(QDockWidget) Q_PRIVATE_SLOT(d_func(), void _q_toggleView(bool)) Q_PRIVATE_SLOT(d_func(), void _q_toggleTopLevel()) friend class QDockAreaLayout; friend class QDockWidgetItem; friend class QMainWindowLayout; friend class QDockWidgetLayout; friend class QDockAreaLayoutInfo; }; Q_DECLARE_OPERATORS_FOR_FLAGS(QDockWidget::DockWidgetFeatures) #endif // QT_NO_DOCKWIDGET QT_END_NAMESPACE QT_END_HEADER #endif // QDYNAMICDOCKWIDGET_H >| | | | | | | | | | | Know Qt Designer document. Task-number: 165435 Reviewed-by: Friedemann Kleint <friedemann.kleint@nokia.com> | * Added comment to clearify the use of indexes.Morten Engvoldsen2009-05-041-0/+8 | | | | | | | | | | | | | | Added a comment about the use of negative indexes. Task-number: 249344 Rev-by: Marius Storm-Olsen | * Do not crash when passing wrong indexes to ↵Olivier Goffart2009-05-042-0/+27 | | | | | | | | | | | | | | | | | | QSortFilterProxyModel::indexFomSource and *ToSource Show a warning instead Task-number: 252507 Reviewed-by: Marius Bugge Monsen * | Make the Mac configure tests consistent when configuring for multiple ↵Morten Sørvig2009-05-052-26/+43 |/ | | | | | | | | | | architechtures. For example, ./configure -arch x86_64 -arch ppc requires D-Bus compiled for x86_64 and ppc in order to enable it. Task-number: 249881 Reviewed-by: nrc * Make comment explaning the Mac deployment target setting clearer.Morten Sørvig2009-05-041-4/+5 | * Implemented an option to tune flippingAnders Bakken2009-05-044-3/+11 | | | | | | | | export QWS_DISPLAY=directfb:boundingrectflip to enable calling Flip on the bounding rect of the dirtied area rather than each dirty rectangle. This could be faster if you update many small rectangles. Reviewed-by: TrustMe * Beautified codeAnders Bakken2009-05-022-17/+17 | | | | | | Qt's coding style => Object *ptr, not Object* ptr Reviewed-by: TrustMe * Improve debug output (in debug mode only)Anders Bakken2009-05-011-2/+83 | | | | | | | Print out detailed information about acceleration mask, blitting flags and drawing flags when passing debug. Reviewed-by: Donald <qt-info@nokia.com> * Extended surface capabilitiesAnders Bakken2009-05-012-6/+31 | | | | | | | Clean up code and make it possible to set more DFBSurfaceCapabilities on the primary surface. Also allow users to force systemonly for the surfaces. * Cleaned up surface creation codeAnders Bakken2009-05-014-34/+28 | | | | | | | | Since I am taking a copy of the description anyway it makes sense to just pass this light-weight object in as a copy rather than a const pointer. Reviewed-by: Donald <qt-info@nokia.com> * Improved readability of the flip codeAnders Bakken2009-05-011-7/+2 | | | | Reviewed-by: Donald <qt-info@nokia.com> * Fixed possible crash in QDirectFBPaintEngine::clipAnders Bakken2009-05-011-1/+1 | | | | | | | d->clip() might return 0 at this point so make sure we check before accessing it. Reviewed-by: TrustMe * Apparently this is the best way to determine which to useBill King2009-05-011-5/+4 | | | | Best as I can determine via trial and error. It should make vc6 compile again though. * QNetworkCookieJar: allow cookies with wrong domain attributePeter Hartmann2009-04-302-9/+8 | | | | | | | | | | According to the (old) cookie RFC 2109, the domain attribute must always contain a leading dot. Some servers do not have that, but all browsers accept those cookies anyway, so we should do that as well. Reviewed-by: Olivier Reviewed-by: Denis Task-number: 228974 * New autotest for Windows Mobile: tst_windowsmobileThomas Hartmann2009-04-30