|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# colorswatch.h Example File
demos/mainwindow/colorswatch.h

    /****************************************************************************
    **
    ** Copyright (C) 2004-2006 Trolltech ASA. All rights reserved.
    **
    ** This file is part of the demonstration applications of the Qt Toolkit.
    **
    ** Licensees holding valid Qt Preview licenses may use this file in
    ** accordance with the Qt Preview License Agreement provided with the
    ** Software.
    **
    ** 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.
    **
    ** 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 COLORSWATCH_H
    #define COLORSWATCH_H

    #include <QDockWidget>

    class QAction;
    class QActionGroup;
    class QMenu;

    class ColorSwatch : public QDockWidget
    {
        Q_OBJECT

        QAction *closableAction;
        QAction *movableAction;
        QAction *floatableAction;
        QAction *floatingAction;

        QActionGroup *allowedAreasActions;
        QAction *allowLeftAction;
        QAction *allowRightAction;
        QAction *allowTopAction;
        QAction *allowBottomAction;

        QActionGroup *areaActions;
        QAction *leftAction;
        QAction *rightAction;
        QAction *topAction;
        QAction *bottomAction;

        QAction *changeSizeHintsAction;

    public:
        ColorSwatch(const QString &colorName, QWidget *parent = 0, Qt::WindowFlags flags = 0);

        QMenu *menu;

    protected:
        virtual void contextMenuEvent(QContextMenuEvent *event);

    private:
        void allow(Qt::DockWidgetArea area, bool allow);
        void place(Qt::DockWidgetArea area, bool place);

    private slots:
        void changeClosable(bool on);
        void changeMovable(bool on);
        void changeFloatable(bool on);
        void changeFloating(bool on);

        void allowLeft(bool a);
        void allowRight(bool a);
        void allowTop(bool a);
        void allowBottom(bool a);

        void placeLeft(bool p);
        void placeRight(bool p);
        void placeTop(bool p);
        void placeBottom(bool p);
    };

    #endif