diff options
Diffstat (limited to 'kdeui/kdualcolorbutton.h')
-rw-r--r-- | kdeui/kdualcolorbutton.h | 159 |
1 files changed, 0 insertions, 159 deletions
diff --git a/kdeui/kdualcolorbutton.h b/kdeui/kdualcolorbutton.h deleted file mode 100644 index a78b6a82a..000000000 --- a/kdeui/kdualcolorbutton.h +++ /dev/null @@ -1,159 +0,0 @@ -/* This file is part of the KDE libraries - Copyright (C) 1999 Daniel M. Duley <mosfet@kde.org> - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License version 2 as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ -#ifndef __KDUALCOLORBTN_H -#define __KDUALCOLORBTN_H - -class TQBitmap; -#include <tqbrush.h> -#include <tqwidget.h> - -#include <kdelibs_export.h> - -/** - * @short A widget for selecting two related colors. - * - * KDualColorButton allows the user to select two cascaded colors (usually a - * foreground and background color). Other features include drag and drop - * from other KDE color widgets, a reset to black and white control, and a - * swap colors control. - * - * When the user clicks on the foreground or background rectangle the - * rectangle is first sunken and the currentChanged() signal is emitted. - * Further clicks will present a color dialog and emit either the fgChanged() - * or bgChanged() if a new color is selected. - * - * Note: With drag and drop when dropping a color the current selected color - * will be set, while when dragging a color it will use whatever color - * rectangle the mouse was pressed inside. - * - * \image html kdualcolorbutton.png "KDE Dual Color Button" - * - * @author Daniel M. Duley <mosfet@kde.org> - */ -class KDEUI_EXPORT KDualColorButton : public TQWidget -{ - Q_OBJECT - Q_ENUMS( DualColor ) - Q_PROPERTY( TQColor foreground READ foreground WRITE setForeground ) - Q_PROPERTY( TQColor background READ background WRITE setBackground ) - Q_PROPERTY( TQColor currentColor READ currentColor WRITE setCurrentColor STORED false DESIGNABLE false ) - Q_PROPERTY( DualColor current READ current WRITE setCurrent ) - -public: - - enum DualColor { Foreground, Background }; - /** - * Constructs a new KDualColorButton using the default black and white - * colors. - * - * As of KDE 3.5.1, sets the dialog parent to the same as "parent" if that - * argument is non-null and the dialogParent argument is null. - */ - KDualColorButton(TQWidget *parent=0, const char *name=0, TQWidget* dialogParent=0); - - /** - * Constructs a new KDualColorButton with the supplied foreground and - * background colors. - */ - KDualColorButton(const TQColor &fgColor, const TQColor &bgColor, - TQWidget *parent=0, const char *name=0, TQWidget* dialogParent=0); - - ~KDualColorButton(); - /** - * Returns the current foreground color. - */ - TQColor foreground() const; - /** - * Returns the current background color. - */ - TQColor background() const; - /** - * Returns the current color item selected by the user. - */ - DualColor current() const; - /** - * Returns the color of the selected item. - */ - TQColor currentColor() const; - /** - * Returns the minimum size needed to display the widget and all its - * controls. - */ - virtual TQSize tqsizeHint() const; -public slots: - /** - * Sets the foreground color. - */ - void setForeground(const TQColor &c); - /** - * Sets the background color. - */ - void setBackground(const TQColor &c); - /** - * Sets the current selected color item. - */ - void setCurrent(DualColor s); - /** - * Sets the color of the selected item. - */ - void setCurrentColor(const TQColor &c); -signals: - /** - * Emitted when the foreground color is changed. - */ - void fgChanged(const TQColor &c); - /** - * Emitted when the background color is changed. - */ - void bgChanged(const TQColor &c); - /** - * Emitted when the user changes the current color selection. - */ - void currentChanged(KDualColorButton::DualColor s); -protected: - /** - * Sets the supplied rectangles to the proper size and position for the - * current widget size. You can reimplement this to change the layout - * of the widget. Restrictions are that the swap control will always - * be at the top right, the reset control will always be at the bottom - * left, and you must leave at least a 14x14 space in those corners. - */ - virtual void metrics(TQRect &fgRect, TQRect &bgRect); - virtual void paintEvent(TQPaintEvent *ev); - virtual void mousePressEvent(TQMouseEvent *ev); - virtual void mouseMoveEvent(TQMouseEvent *ev); - virtual void mouseReleaseEvent(TQMouseEvent *ev); - // Dnd - virtual void dragEnterEvent(TQDragEnterEvent *ev); - virtual void dropEvent(TQDropEvent *ev); -private: - TQBitmap *arrowBitmap; - TQPixmap *resetPixmap; - TQBrush fg, bg; - TQPoint mPos; - bool dragFlag, miniCtlFlag; - DualColor curColor, tmpColor; - -protected: - virtual void virtual_hook( int id, void* data ); -private: - class KDualColorPrivate; - KDualColorPrivate *d; -}; - -#endif |