• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • kdeui
 

kdeui

kdualcolorbutton.h
00001 /* This file is part of the KDE libraries
00002    Copyright (C) 1999 Daniel M. Duley <mosfet@kde.org>
00003 
00004    This library is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Library General Public
00006    License version 2 as published by the Free Software Foundation.
00007 
00008    This library is distributed in the hope that it will be useful,
00009    but WITHOUT ANY WARRANTY; without even the implied warranty of
00010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011    Library General Public License for more details.
00012 
00013    You should have received a copy of the GNU Library General Public License
00014    along with this library; see the file COPYING.LIB.  If not, write to
00015    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00016    Boston, MA 02110-1301, USA.
00017 */
00018 #ifndef __KDUALCOLORBTN_H
00019 #define __KDUALCOLORBTN_H
00020 
00021 class TQBitmap;
00022 #include <tqbrush.h>
00023 #include <tqwidget.h>
00024 
00025 #include <kdelibs_export.h>
00026 
00048 class KDEUI_EXPORT KDualColorButton : public TQWidget
00049 {
00050     Q_OBJECT
00051     Q_ENUMS( DualColor )
00052     Q_PROPERTY( TQColor foreground READ foreground WRITE setForeground )
00053     Q_PROPERTY( TQColor background READ background WRITE setBackground )
00054     Q_PROPERTY( TQColor currentColor READ currentColor WRITE setCurrentColor STORED false DESIGNABLE false )
00055     Q_PROPERTY( DualColor current READ current WRITE setCurrent )
00056 
00057 public:
00058 
00059     enum DualColor { Foreground, Background };
00067     KDualColorButton(TQWidget *parent=0, const char *name=0, TQWidget* dialogParent=0);
00068 
00073     KDualColorButton(const TQColor &fgColor, const TQColor &bgColor,
00074                      TQWidget *parent=0, const char *name=0, TQWidget* dialogParent=0);
00075 
00076     ~KDualColorButton();
00080     TQColor foreground() const;
00084     TQColor background() const;
00088     DualColor current() const;
00092     TQColor currentColor() const;
00097     virtual TQSize sizeHint() const;
00098 public slots:
00102     void setForeground(const TQColor &c);
00106     void setBackground(const TQColor &c);
00110     void setCurrent(DualColor s);
00114     void setCurrentColor(const TQColor &c);
00115 signals:
00119     void fgChanged(const TQColor &c);
00123     void bgChanged(const TQColor &c);
00127     void currentChanged(KDualColorButton::DualColor s);
00128 protected:
00136     virtual void metrics(TQRect &fgRect, TQRect &bgRect);
00137     virtual void paintEvent(TQPaintEvent *ev);
00138     virtual void mousePressEvent(TQMouseEvent *ev);
00139     virtual void mouseMoveEvent(TQMouseEvent *ev);
00140     virtual void mouseReleaseEvent(TQMouseEvent *ev);
00141     // Dnd
00142     virtual void dragEnterEvent(TQDragEnterEvent *ev);
00143     virtual void dropEvent(TQDropEvent *ev);
00144 private:
00145     TQBitmap *arrowBitmap;
00146     TQPixmap *resetPixmap;
00147     TQBrush fg, bg;
00148     TQPoint mPos;
00149     bool dragFlag, miniCtlFlag;
00150     DualColor curColor, tmpColor;
00151 
00152 protected:
00153     virtual void virtual_hook( int id, void* data );
00154 private:
00155     class KDualColorPrivate;
00156     KDualColorPrivate *d;
00157 };
00158 
00159 #endif

kdeui

Skip menu "kdeui"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdeui

Skip menu "kdeui"
  • arts
  • dcop
  • dnssd
  • interfaces
  •     interface
  •     library
  •   kspeech
  •   ktexteditor
  • kabc
  • kate
  • kcmshell
  • kdecore
  • kded
  • kdefx
  • kdeprint
  • kdesu
  • kdeui
  • kdoctools
  • khtml
  • kimgio
  • kinit
  • kio
  •   bookmarks
  •   httpfilter
  •   kfile
  •   kio
  •   kioexec
  •   kpasswdserver
  •   kssl
  • kioslave
  •   http
  • kjs
  • kmdi
  •   kmdi
  • knewstuff
  • kparts
  • krandr
  • kresources
  • kspell2
  • kunittest
  • kutils
  • kwallet
  • libkmid
  • libkscreensaver
Generated for kdeui by doxygen 1.7.6.1
This website is maintained by Timothy Pearson.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. |