diff options
Diffstat (limited to 'client/shadow.h')
-rw-r--r-- | client/shadow.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/client/shadow.h b/client/shadow.h new file mode 100644 index 0000000..75d76f4 --- /dev/null +++ b/client/shadow.h @@ -0,0 +1,56 @@ +/////////////////////////////////////////////////////////////////////// +// ------------------- +// DeKorator window decoration for KDE +// ------------------- +// Copyright (C) 2005 moty rahamim <[email protected]> +// +// Based on Example-0.8, some ideas and code have been taken from plastik and KCMicons +// +// Example window decoration for KDE +// Copyright (c) 2003, 2004 David Johnson <[email protected]> +// +// Plastik KWin window decoration +// Copyright (C) 2003-2005 Sandro Giessl <[email protected]> +// +// KCMicons for KDE +// Copyright (c) 2000 Antonio Larrosa <[email protected]> +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public +// License as published by the Free Software Foundation; either +// version 2 of the License, or (at your option) any later version. +// +// This program 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 +// General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; see the file COPYING. If not, write to +// the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. +/////////////////////////////////////////////////////////////////////// + +#ifndef __FX_SHADOW +#define __FX_SHADOW + +#include <qpixmap.h> +#include <qimage.h> +#include <qcolor.h> + +class ShadowEngine +{ + public: + ShadowEngine(); + ~ShadowEngine(); + void setThickness(int thickness) { thickness_ = thickness; } + void setMultiplicationFactor(double factor) { multiplicationFactor_ = factor; } + QImage makeShadow(const QPixmap& textPixmap, const QColor &bgColor); + private: + double decay(QImage& source, int x, int y); + + int thickness_; + double multiplicationFactor_; +}; + +#endif |